/**
 * ТЗ главной и сайдбара (uaz2):
 * — Сайдбар: фиксированная ширина, sticky, светлее, меньше шрифты/рамки
 * — Основной контент: занимает остальное без «пляски»
 * — Отступы секций, заголовки с акцентом, кнопки «Смотреть все» единообразно
 * — Бирюзовый только для CTA/актива; ссылки серые, hover — бирюза
 * — Карточки: мягкие тени, скругления
 * — Футер: светлее, меньше плотности, больше воздуха
 */

body.homepage .sidebar-right .cloud_tags-sidebar,
body.homepage .sidebar-right .fast_links-sidebar,
body.homepage .sidebar-right .fast_redirect-sidebar,
body.homepage .aside__container,
html:has(.header__main_homepage) .sidebar-right .cloud_tags-sidebar,
html:has(.header__main_homepage) .sidebar-right .fast_links-sidebar,
html:has(.header__main_homepage) .sidebar-right .fast_redirect-sidebar,
html:has(.header__main_homepage) .aside__container {
    background: #ffffff !important;
    border: 1px solid #e4edf4 !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .06) !important;
    box-sizing: border-box !important;
}

body.homepage .homepage-promo-empty,
html:has(.header__main_homepage) .homepage-promo-empty {
    max-width: 760px;
    margin: 18px auto 0;
    padding: 20px 24px;
    border: 1px solid #e2edf3;
    border-radius: 14px;
    background: #ffffff;
    color: #475569;
    font-size: 16px;
    line-height: 1.55;
    text-align: center;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .045);
}

body.homepage .homepage-promo-empty .btn,
html:has(.header__main_homepage) .homepage-promo-empty .btn {
    margin-top: 12px;
}

body.homepage .homepage-value-banner,
html:has(.header__main_homepage) .homepage-value-banner {
    max-width: 1200px;
    margin: 22px auto 18px;
    padding: 24px 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    background: #ffffff;
    border: 1px solid #dbe9ed;
    border-left: 4px solid #0fa6ab;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .055);
    box-sizing: border-box;
}

body.homepage .homepage-value-banner__copy,
html:has(.header__main_homepage) .homepage-value-banner__copy {
    min-width: 0;
}

body.homepage .homepage-value-banner h1,
html:has(.header__main_homepage) .homepage-value-banner h1 {
    margin: 0 0 8px;
    color: #1f2933;
    font-size: 32px;
    line-height: 1.18;
    font-weight: 700;
}

body.homepage .homepage-value-banner p,
html:has(.header__main_homepage) .homepage-value-banner p {
    margin: 0;
    color: #51606a;
    font-size: 16px;
    line-height: 1.45;
}

body.homepage .homepage-value-banner__lead,
html:has(.header__main_homepage) .homepage-value-banner__lead {
    margin-bottom: 6px !important;
    color: #0b7f83 !important;
    font-size: 20px !important;
    font-weight: 600;
}

body.homepage .homepage-value-banner__actions,
html:has(.header__main_homepage) .homepage-value-banner__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
}

body.homepage .homepage-value-banner__actions a,
html:has(.header__main_homepage) .homepage-value-banner__actions a {
    min-height: 42px;
    padding: 11px 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    box-sizing: border-box;
}

body.homepage .homepage-value-banner__primary,
html:has(.header__main_homepage) .homepage-value-banner__primary {
    background: #0fa6ab;
    color: #ffffff !important;
    border: 1px solid #0fa6ab;
}

body.homepage .homepage-value-banner__secondary,
html:has(.header__main_homepage) .homepage-value-banner__secondary {
    background: #ffffff;
    color: #0b7f83 !important;
    border: 1px solid #9fdadd;
}

@media (max-width: 767px) {
    body.homepage .homepage-value-banner,
    html:has(.header__main_homepage) .homepage-value-banner {
        margin: 14px 12px 16px;
        padding: 18px 16px;
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        width: 95%;
        box-sizing:border-box;
    }
    body.homepage .homepage-value-banner h1,
    html:has(.header__main_homepage) .homepage-value-banner h1 {
        font-size: 26px;
    }
    body.homepage .homepage-value-banner__lead,
    html:has(.header__main_homepage) .homepage-value-banner__lead {
        font-size: 18px !important;
    }
    body.homepage .homepage-value-banner__actions,
    html:has(.header__main_homepage) .homepage-value-banner__actions {
        flex-wrap: wrap;
    }
    body.homepage .homepage-value-banner__actions a,
    html:has(.header__main_homepage) .homepage-value-banner__actions a {
        flex: 1 1 150px;
    }
}

body.homepage .homepage-block-sale .search-results-empty__state,
html:has(.header__main_homepage) .homepage-block-sale .search-results-empty__state {
    max-width: 760px;
    margin: 18px auto 0 !important;
    padding: 20px 24px !important;
    border: 1px solid #e2edf3 !important;
    border-radius: 14px;
    background: #ffffff;
    color: #475569;
    text-align: center;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .045);
}

body.homepage .homepage-block-sale .search-results-empty__text,
html:has(.header__main_homepage) .homepage-block-sale .search-results-empty__text {
    max-width: 620px;
    margin-bottom: 12px;
}

body.homepage .homepage-block-sale .search-results-empty__cta,
html:has(.header__main_homepage) .homepage-block-sale .search-results-empty__cta {
    margin-bottom: 0;
}

body.homepage .homepage-block-sale .search-empty-clear,
body.homepage .homepage-block-sale .search-empty-grid,
body.homepage .homepage-block-sale .search-results-empty__cta .btn-outline-primary,
html:has(.header__main_homepage) .homepage-block-sale .search-empty-clear,
html:has(.header__main_homepage) .homepage-block-sale .search-empty-grid,
html:has(.header__main_homepage) .homepage-block-sale .search-results-empty__cta .btn-outline-primary {
    display: none !important;
}

@media (max-width: 767px) {
    body.homepage .homepage-best-works-section .homepage-row-slider__inner > * {
        height: auto !important;
        min-height: 0 !important;
        align-self: flex-start !important;
    }
    body.homepage .homepage-best-works-section .book-card-mini,
    body.homepage .homepage-best-works-section .book-card-item,
    body.homepage .homepage-best-works-section .book-row {
        height: auto !important;
        min-height: 0 !important;
    }
    body.homepage .homepage-best-works-section .book-card-mini .toptile,
    body.homepage .homepage-best-works-section .book-card-item .toptile,
    body.homepage .homepage-best-works-section .book-row .toptile {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 8px !important;
        margin-bottom: 0 !important;
        height: auto !important;
        min-height: 0 !important;
    }
    body.homepage .homepage-best-works-section .book-card-mini .textcenter,
    body.homepage .homepage-best-works-section .book-card-item .textcenter,
    body.homepage .homepage-best-works-section .book-row .textcenter {
        padding: 6px 8px 10px !important;
        min-height: 0 !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        margin-top: 0 !important;
        gap: 4px !important;
    }
    body.homepage .homepage-best-works-section .book-card-mini .booktc,
    body.homepage .homepage-best-works-section .book-card-mini .booktc a,
    body.homepage .homepage-best-works-section .book-card-item .booktc,
    body.homepage .homepage-best-works-section .book-card-item .booktc a,
    body.homepage .homepage-best-works-section .book-row .booktc,
    body.homepage .homepage-best-works-section .book-row .booktc a {
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        min-height: 0 !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
        -webkit-line-clamp: unset !important;
        -webkit-box-orient: initial !important;
    }
    body.homepage .homepage-best-works-section .book-card-mini .cityc,
    body.homepage .homepage-best-works-section .book-card-mini .cityc a,
    body.homepage .homepage-best-works-section .book-card-item .cityc,
    body.homepage .homepage-best-works-section .book-card-item .cityc a,
    body.homepage .homepage-best-works-section .book-row .cityc,
    body.homepage .homepage-best-works-section .book-row .cityc a {
        margin: 0 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
    }
    body.homepage .homepage-best-works-section .lazy-content {
        padding-bottom: 8px !important;
    }
}

body.homepage .clb + h3.txt,
html:has(.header__main_homepage) .clb + h3.txt,
body.homepage .clb + h3.txt + .joinus-intro-block,
html:has(.header__main_homepage) .clb + h3.txt + .joinus-intro-block {
    width: 100%;
    max-width: 1200px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: border-box;
}
@media (max-width: 767px) {
    body.homepage .homepage-best-works-section .homepage-row-slider__inner div.toptile.toptiletoptile {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner div.toptile.toptiletoptile > .textcenter:first-child,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner div.toptile.toptiletoptile > .textcenter:nth-child(2) {
        position: static !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner div.toptile.toptiletoptile > .textcenter:first-child picture {
        margin-left: auto !important;
        margin-right: auto !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner div.toptile.toptiletoptile > .textcenter:nth-child(2) .cityc {
        margin-top: 6px !important;
        margin-bottom: 2px !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner div.toptile.toptiletoptile > .booktc {
        margin-top: 0 !important;
        min-height: 0 !important;
    }
}

@media (max-width: 767px) {
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile.toptiletoptile {
        display: block !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin-bottom: 0 !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile.toptiletoptile > .textcenter {
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        min-height: 0 !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile.toptiletoptile > .textcenter[style*="padding-bottom"] {
        padding-bottom: 0 !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile.toptiletoptile > .textcenter .cityc {
        margin-top: 6px !important;
        margin-bottom: 2px !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile.toptiletoptile > .booktc {
        margin-top: 0 !important;
        line-height: 1.35 !important;
        font-size: 13px !important;
    }
}

/* --- Мобилка: стрелки и отступы у главных каруселей --- */
@media (max-width: 767px) {
    /* Нужные секции: Новые завершённые, Последние обновления, Бестселлеры, Книга дня, Лучшие произведения */
    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider-wrap:not(.aside-slider-wrap),
    body.homepage .homepage-block-latest-updates .homepage-row-slider-wrap:not(.aside-slider-wrap),
    body.homepage .homepage-block-bestsellers .homepage-row-slider-wrap:not(.aside-slider-wrap),
    body.homepage .homepage-block-book-day .homepage-row-slider-wrap:not(.aside-slider-wrap),
    body.homepage .homepage-best-works-section .homepage-row-slider-wrap:not(.aside-slider-wrap) {
        position: relative;
        overflow: visible !important;
    }

    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider-wrap .homepage-slider-arrow,
    body.homepage .homepage-block-latest-updates .homepage-row-slider-wrap .homepage-slider-arrow,
    body.homepage .homepage-block-bestsellers .homepage-row-slider-wrap .homepage-slider-arrow,
    body.homepage .homepage-block-book-day .homepage-row-slider-wrap .homepage-slider-arrow,
    body.homepage .homepage-best-works-section .homepage-row-slider-wrap .homepage-slider-arrow {
        width: 36px !important;
        height: 36px !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, 0.96) !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18) !important;
        opacity: 1 !important; /* на тач-экранах нет hover, стрелки должны быть видны всегда */
        z-index: 8 !important;
    }

    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider-wrap .homepage-slider-prev,
    body.homepage .homepage-block-latest-updates .homepage-row-slider-wrap .homepage-slider-prev,
    body.homepage .homepage-block-bestsellers .homepage-row-slider-wrap .homepage-slider-prev,
    body.homepage .homepage-block-book-day .homepage-row-slider-wrap .homepage-slider-prev,
    body.homepage .homepage-best-works-section .homepage-row-slider-wrap .homepage-slider-prev {
        left: 6px !important;
        transform: translateY(-50%) !important;
    }

    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider-wrap .homepage-slider-next,
    body.homepage .homepage-block-latest-updates .homepage-row-slider-wrap .homepage-slider-next,
    body.homepage .homepage-block-bestsellers .homepage-row-slider-wrap .homepage-slider-next,
    body.homepage .homepage-block-book-day .homepage-row-slider-wrap .homepage-slider-next,
    body.homepage .homepage-best-works-section .homepage-row-slider-wrap .homepage-slider-next {
        right: 6px !important;
        transform: translateY(-50%) !important;
    }

    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .books-list,
    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .homepage-row-slider__inner,
    body.homepage .homepage-block-latest-updates .homepage-row-slider .books-list,
    body.homepage .homepage-block-latest-updates .homepage-row-slider .homepage-row-slider__inner,
    body.homepage .homepage-block-bestsellers .homepage-row-slider .books-list,
    body.homepage .homepage-block-bestsellers .homepage-row-slider .homepage-row-slider__inner,
    body.homepage .homepage-block-book-day .homepage-row-slider .books-list,
    body.homepage .homepage-block-book-day .homepage-row-slider .homepage-row-slider__inner,
    body.homepage .homepage-best-works-section .homepage-row-slider .books-list,
    body.homepage .homepage-best-works-section .homepage-row-slider .homepage-row-slider__inner {
        padding-left: 26px !important;
        padding-right: 26px !important;
        box-sizing: border-box;
    }
}

/* П.6 Производительность: lazyLoader.min.js — IntersectionObserver для .lazy-section и .lazy-media (rootMargin 500px). Обложки — lazy-media. Кэш — cached_advanced_search. */
.lazy-section.loaded .lazy-content {
    animation: homepageBlockFadeIn 0.4s ease-out;
}
@keyframes homepageBlockFadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Убрать margin-top у .book-card-item:not(:first-child) — ломает сайдбарные слайдеры (только главная) */
body.homepage .book-card-item:not(:first-child),
.cnt-wrapper:has(.homepage-block) .book-card-item:not(:first-child),
html:has(.header__main_homepage) .book-card-item:not(:first-child) {
    margin-top: 0 !important;
}

/* --- Layout: сайдбар фиксированная ширина, основной контент — остальное --- */
body.homepage div.cnt-wrapper,
.cnt-wrapper:has(.homepage-block),
html:has(.header__main_homepage) div.cnt-wrapper {
    align-items: stretch;
    gap: 0;
    max-width: 1440px !important;
}
body.homepage div.cnt-wrapper aside,
.cnt-wrapper:has(.homepage-block) aside,
html:has(.header__main_homepage) div.cnt-wrapper aside {
    width: 320px;
    min-width: 320px;
    flex-shrink: 0;
    margin-right: 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding-top: 20px;
}
body.homepage div.cnt-wrapper aside > *,
.cnt-wrapper:has(.homepage-block) aside > *,
html:has(.header__main_homepage) div.cnt-wrapper aside > * {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}
@media (min-width: 1221px) {
    body.homepage div.cnt-wrapper,
    .cnt-wrapper:has(.homepage-block),
    html:has(.header__main_homepage) div.cnt-wrapper {
        margin: 0;
    }
    /* Sticky только на главной: иначе на внутренних страницах сайдбар дёргается при скролле */
    body.homepage div.cnt-wrapper aside {
        position: sticky;
        top: calc(80px + env(safe-area-inset-top, 0px));
        align-self: flex-start;
        max-height: none;
        overflow-y: visible;
    }
}
body.homepage div.cnt-wrapper .cntl-wrapper,
.cnt-wrapper:has(.homepage-block) .cntl-wrapper,
html:has(.header__main_homepage) div.cnt-wrapper .cntl-wrapper {
    flex: 1;
    min-width: 0;
    width: auto !important;
    margin: 0;
}
body.homepage div.cnt-wrapper .cntl-wrapper .cntl,
.cnt-wrapper:has(.homepage-block) .cntl-wrapper .cntl,
html:has(.header__main_homepage) div.cnt-wrapper .cntl-wrapper .cntl {
    width: 100%;
    max-width: 100%;
}

/* Фикс: блок «Стать автором» — в потоке основной колонки, без left/transform,
   чтобы не «уезжал» вниз из-за конфликта с flex row-reverse в site.css */
body.homepage .start_author,
.cnt-wrapper:has(.homepage-block) .start_author,
html:has(.header__main_homepage) .start_author {
    position: static !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* --- Сайдбар: светлее, менее контрастный, мельче шрифты, без лишних рамок --- */
.cnt-wrapper:has(.homepage-block) aside .cntr,
.cnt-wrapper:has(.homepage-block) .aside__container {
    background-color: #ffffff !important;
    border: 1px solid #e4edf4 !important;
    border-radius: 16px;
    padding: 12px 14px !important;
    margin-bottom: 8px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .06);
    min-height: 50px;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}
.cnt-wrapper:has(.homepage-block) .aside__title {
    font-size: 15px !important;
    font-weight: 600;
    color: #4a5568 !important;
    margin-bottom: 10px !important;
    text-align: center !important;
}
.cnt-wrapper:has(.homepage-block) a.aside__tag-link,
.cnt-wrapper:has(.homepage-block) a.aside__fast-link,
.cnt-wrapper:has(.homepage-block) .aside__card-name,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar > p,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar .booktc,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap a.taglnk0 .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap a.taglnk0 .cityc {
    color: #5a6573 !important;
    font-size: 13px;
}
.aside__recent-blog-more {
    margin-top: 24px;
}
.aside__recent-blog-more a.aside__tag-link:hover {
    color: #fff !important;
}
.cnt-wrapper:has(.homepage-block) a.aside__fast-link:hover,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar:hover,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar:hover > p,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar:hover .booktc,
.cnt-wrapper:has(.homepage-block) .interested-book-sidebar:hover .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap a.taglnk0:hover .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap a.taglnk0:hover .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item:hover .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item:hover .cityc {
    color: var(--primary-color) !important;
}
.cnt-wrapper:has(.homepage-block) a.aside__tag-link {
    border-color: #e2e8f0 !important;
    background: #fff;
    border-radius: 6px;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 9px;
    line-height: 1.25;
}
.cnt-wrapper:has(.homepage-block) a.aside__tag-link:hover {
    border-color: var(--primary-color) !important;
    background: #eefbfc;
}
.cnt-wrapper:has(.homepage-block) a.aside__tag-link--all-genres {
    font-weight: 700;
}
.cnt-wrapper:has(.homepage-block) .aside__tags {
    gap: 8px 10px;
    align-items: flex-start;
}

/* --- «Продолжить чтение»: стили как «Вы интересовались» — белые карточки, тёмный текст --- */
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading {
    overflow: hidden;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap {
    max-height: 400px;
    overflow: hidden;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .display-mode-2 {
    display: none !important; /* полные карточки с аннотацией не показываем в сайдбаре */
}
/* Карточки «Продолжить чтение» — те же размеры и отступы, что «Вы интересовались» (240×320) --- */
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-card,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap .item,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap .book-card-mini,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap .book-card-item {
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    padding: 12px !important;
    border: none !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: 320px !important;
    max-height: 320px !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-card,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap .item,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap .book-card-mini,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap .book-card-item,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside-slider-wrap a[class*="taglnk"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .textcenter {
    text-align: center !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 0 8px 10px !important;
    gap: 4px;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile {
    margin-bottom: 0 !important;
    gap: 10px !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .booktc a,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .cityc a {
    text-align: center !important;
    width: 100%;
    display: block !important;
}
/* Текст — тёмно-серый, как в «Вы интересовались» (не бирюзовый) */
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .booktc a,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .cityc a {
    color: #374151 !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .cityc a {
    color: #5a6573 !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .booktc a {
    font-weight: 500;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .booktc a:hover,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .cityc a:hover {
    color: var(--primary-color) !important;
}
/* Заголовок — как в «Вы интересовались»: тёмно-серый, не бирюзовый */
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside__title,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside__title a {
    color: #4a5568 !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .aside__title a:hover {
    color: var(--primary-color) !important;
}
/* Обложка — на всю ширину карточки, без рамок */
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile > div:first-child,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile a.txt,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile picture {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
/* Важно: у book-card-mini есть стили на div:nth-child(2) — в нашем сайдбаре это текстовый блок.
   Делаем как «Вы интересовались»: обложка 2:3 → 128×192, без absolute/наследований высоты. */
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile {
    align-items: center !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .book-card-mini .toptile > div:nth-child(2) {
    flex: 0 0 auto !important;
    max-width: none !important;
    width: 100% !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile > div:first-child {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    height: 192px !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #f0f4f8;
    position: relative !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile a.txt,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile picture,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile img {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 128px !important;
    height: 192px !important;
    max-width: 128px !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile img,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .toptile picture img,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading img.shadow1 {
    object-fit: cover !important;
    object-position: center !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 12px !important;
}
/* Убираем margin-bottom у book-card-mini (из new_bookinfo.css) — иначе карточка 397px */
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .book-card-mini,
.cnt-wrapper:has(.homepage-block) .aside-slider-continue-reading .item.book-card-mini {
    margin-bottom: 0 !important;
}

/* --- Слайдеры в сайдбаре: на всю ширину блока, 1 книга за раз, стрелки --- */
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap {
    position: relative;
    min-height: 320px;
    padding: 4px 0;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    /* Чёткий порядок слоёв: стрелки поверх ленты с белой карточкой */
    isolation: isolate;
}
/* Лента ниже по z-order, чем абсолютные стрелки (иначе правая кнопка оказывается «под» карточкой) */
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .homepage-row-slider {
    position: relative;
    z-index: 0;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .aside-slider-list,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .books-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 16px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    /* Не уводить вертикальный скролл страницы в горизонтальную ленту */
    overscroll-behavior-x: contain;
    /* Трек на всю ширину колонки сайдбара (см. ниже — карточка = 100% трека, белый фон на всю видимую ширину) */
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .aside-slider-list::-webkit-scrollbar,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .books-list::-webkit-scrollbar {
    display: none;
}
/* Перебиваем site.css / общие правила: в сайдбаре лента не max-content, а ровно ширина трека */
.cnt-wrapper:has(.homepage-block) .homepage-row-slider .aside-slider-wrap .books-list.homepage-row-slider__inner,
.cnt-wrapper:has(.homepage-block) .homepage-row-slider .aside-slider-wrap .aside-slider-list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .aside-slider-card,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .item {
    /* Как «Продолжить чтение» и главная: белая карточка (поиск / сайдбар без aside-slider-continue-reading) */
    background: #fff !important;
    border-radius: 10px !important;
    padding: 12px !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    /* Один слайд = вся ширина прокручиваемого трека (иначе ~212px и фон «режется») */
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: 320px !important;
    max-height: 320px !important;
    align-self: stretch !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    box-sizing: border-box !important;
}

/* Сильнее, чем site.css `.homepage-row-slider .book-card-item { min/max-width 136–160px }` — иначе белая карточка не тянется на колонку */
.cnt-wrapper:has(.homepage-block) .homepage-row-slider-wrap.aside-slider-wrap .homepage-row-slider .books-list.homepage-row-slider__inner > .book-card-item.aside-slider-card,
.cnt-wrapper:has(.homepage-block) .homepage-row-slider-wrap.aside-slider-wrap .homepage-row-slider .aside-slider-list > .book-card-item.aside-slider-card {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
}

/* --- Сайдбар-слайдеры: hover и "клик по всей карточке" визуально --- */
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .aside-slider-card,
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .book-card-item.aside-slider-card,
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .item.book-card-mini.aside-slider-card {
    cursor: pointer;
    transition: box-shadow .15s ease, transform .15s ease, background .15s ease;
}
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .aside-slider-card:hover,
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .aside-slider-card:focus-within {
    background: #fbfdff !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.10) !important;
    transform: translateY(-1px);
}
/* если внутри карточки есть ссылка-обёртка — растягиваем её на всю карточку */
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .aside-slider-card > a,
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .aside-slider-card > a.taglnk0,
.cnt-wrapper:has(.homepage-block) .aside__container .aside-slider-wrap .aside-slider-card > a.interested-book-sidebar {
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
    height: 100% !important;
    text-decoration: none !important;
    color: inherit;
}

/* «Продолжить чтение»: обложка как в «Вы интересовались» */
.cnt-wrapper:has(.homepage-block) .aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile picture,
.cnt-wrapper:has(.homepage-block) .aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile picture img,
.cnt-wrapper:has(.homepage-block) .aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile img {
    width: 128px !important;
    height: 192px !important;
    object-fit: cover !important;
    object-position: center !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 12px !important;
}
.cnt-wrapper:has(.homepage-block) .aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile picture {
    overflow: hidden !important;
    border-radius: 12px !important;
    line-height: 0;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .item > a.interested-book-sidebar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
}
/* Обложки в сайдбарных слайдерах — на всю ширину карточки (2:3), без рамок */
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .toptile,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .toptile > div:first-child,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .toptile picture {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .toptile img,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .toptile picture img,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-image,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item img,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .leftblk img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 2 / 3;
    object-fit: cover !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 12px !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-image,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .toptile img,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar picture img {
    opacity: 1 !important;
    visibility: visible !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .homepage-slider-arrow {
    width: 32px;
    height: 32px;
    z-index: 12 !important;
    position: absolute;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .homepage-slider-prev {
    left: 4px;
    transform: translateY(-50%);
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .homepage-slider-next {
    right: 4px;
    transform: translateY(-50%);
}
/* Единообразные карточки в сайдбарных слайдерах: обложка + название + автор по центру */
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item.aside-slider-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 10px !important;
    text-decoration: none;
    align-items: center !important;
    width: 100% !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .toptile,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar picture,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .toptile,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item picture {
    display: block !important;
    width: 128px !important;
    min-width: 128px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar picture,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item picture {
    line-height: 0;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .textcenter,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .textcenter {
    flex: 0 0 auto;
    min-width: 0;
    width: 100% !important;
    text-align: center !important;
    padding: 0 8px 10px;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .cityc,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .booktc,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .cityc {
    font-size: 13px;
    line-height: 1.35;
    text-align: center !important;
}
/* Ограничение строк — одинаковая высота текстового блока */
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .booktc,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .booktc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .cityc,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .cityc {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
/* Название книги — темнее, автор — серый */
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .booktc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .booktc,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .booktc {
    color: #374151 !important;
    font-weight: 500;
}
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .interested-book-sidebar .cityc,
.cnt-wrapper:has(.homepage-block) .aside-slider-wrap .book-card-item .cityc,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .cityc {
    color: #5a6573 !important;
}
.cnt-wrapper:has(.homepage-block) .top100-slider.aside__container .aside-slider-wrap {
    padding: 4px 0;
}
.cnt-wrapper:has(.homepage-block) .top100-slider .aside__title {
    margin-bottom: 10px !important;
}
/* Книги из топ-100: та же структура и размеры, что и остальные сайдбарные слайдеры */
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap .book-card-item,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap .aside-slider-card,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap .item {
    background: #fff !important;
    border-radius: 10px !important;
    padding: 12px !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: 320px !important;
    max-height: 320px !important;
    align-self: stretch !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    box-sizing: border-box !important;
}
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px;
    width: 100% !important;
    text-decoration: none;
}
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .toptile,
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 picture {
    display: block !important;
    width: 128px !important;
    min-width: 128px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 picture {
    line-height: 0;
}
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .textcenter {
    flex: 0 0 auto;
    min-width: 0;
    width: 100% !important;
    text-align: center !important;
    padding: 0 8px 10px;
}
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .booktc {
    width: 100% !important;
    text-align: center !important;
    font-size: 13px;
    line-height: 1.35;
}
/* Строка автора / позиции в топе: читаемость (в т.ч. моб. ≤390px) */
.cnt-wrapper:has(.homepage-block) .top100-slider .aside-slider-wrap a.taglnk0 .cityc,
.cnt-wrapper:has(.homepage-block) .top100-slider .book-card-item .author {
    width: 100% !important;
    text-align: center !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin-top: 4px !important;
    color: #777 !important;
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    -webkit-box-orient: unset !important;
}

/* --- Единые стили сайдбарных слайдеров (все страницы, не только главная) --- */
/* Дублирует .cnt-wrapper:has(.homepage-block) .aside-slider-wrap правила без привязки к главной */
.aside-slider-wrap {
    position: relative;
    min-height: 320px;
    padding: 4px 0;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    isolation: isolate;
}
.aside-slider-wrap .homepage-row-slider {
    position: relative;
    z-index: 0;
}
.aside-slider-wrap .aside-slider-list,
.aside-slider-wrap .books-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 16px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    overscroll-behavior-x: contain;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}
.aside-slider-wrap .aside-slider-list::-webkit-scrollbar,
.aside-slider-wrap .books-list::-webkit-scrollbar {
    display: none;
}
.aside-slider-wrap .aside-slider-card,
.aside-slider-wrap .book-card-item,
.aside-slider-wrap .item {
    background: #fff !important;
    border-radius: 10px !important;
    padding: 12px !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: 320px !important;
    max-height: 320px !important;
    align-self: stretch !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
    box-sizing: border-box !important;
}
.homepage-row-slider-wrap.aside-slider-wrap .homepage-row-slider .books-list.homepage-row-slider__inner > .book-card-item.aside-slider-card,
.homepage-row-slider-wrap.aside-slider-wrap .homepage-row-slider .aside-slider-list > .book-card-item.aside-slider-card {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
}
.aside__container .aside-slider-wrap .aside-slider-card,
.aside__container .aside-slider-wrap .book-card-item.aside-slider-card,
.aside__container .aside-slider-wrap .item.book-card-mini.aside-slider-card {
    cursor: pointer;
    transition: box-shadow .15s ease, transform .15s ease, background .15s ease;
}
.aside__container .aside-slider-wrap .aside-slider-card:hover,
.aside__container .aside-slider-wrap .aside-slider-card:focus-within {
    background: #fbfdff !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.10) !important;
    transform: translateY(-1px);
}
.aside__container .aside-slider-wrap .aside-slider-card > a,
.aside__container .aside-slider-wrap .aside-slider-card > a.taglnk0,
.aside__container .aside-slider-wrap .aside-slider-card > a.interested-book-sidebar {
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
    height: 100% !important;
    text-decoration: none !important;
    color: inherit;
}
.aside-slider-wrap .item > a.interested-book-sidebar {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.aside-slider-wrap .toptile,
.aside-slider-wrap .toptile > div:first-child,
.aside-slider-wrap .toptile picture {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.aside-slider-wrap .toptile img,
.aside-slider-wrap .toptile picture img,
.aside-slider-wrap .interested-book-image,
.aside-slider-wrap .book-card-item img,
.aside-slider-wrap .leftblk img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 2 / 3;
    object-fit: cover !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 12px !important;
}
.aside-slider-wrap .interested-book-image,
.aside-slider-wrap .interested-book-sidebar .toptile img,
.aside-slider-wrap .interested-book-sidebar picture img {
    opacity: 1 !important;
    visibility: visible !important;
}
.aside-slider-wrap .homepage-slider-arrow {
    width: 32px;
    height: 32px;
    z-index: 12 !important;
    position: absolute;
}
.aside-slider-wrap .homepage-slider-prev {
    left: 4px;
    transform: translateY(-50%);
}
.aside-slider-wrap .homepage-slider-next {
    right: 4px;
    transform: translateY(-50%);
}
.aside-slider-wrap .interested-book-sidebar,
.aside-slider-wrap .book-card-item.aside-slider-card {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 10px !important;
    text-decoration: none;
    align-items: center !important;
    width: 100% !important;
}
.aside-slider-wrap .interested-book-sidebar .toptile,
.aside-slider-wrap .interested-book-sidebar picture,
.aside-slider-wrap .book-card-item .toptile,
.aside-slider-wrap .book-card-item picture {
    display: block !important;
    width: 128px !important;
    min-width: 128px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.aside-slider-wrap .interested-book-sidebar picture,
.aside-slider-wrap .book-card-item picture {
    line-height: 0;
}
.aside-slider-wrap .interested-book-sidebar .textcenter,
.aside-slider-wrap .book-card-item .textcenter {
    flex: 0 0 auto;
    min-width: 0;
    width: 100% !important;
    text-align: center !important;
    padding: 0 8px 10px;
}
.aside-slider-wrap .interested-book-sidebar .booktc,
.aside-slider-wrap .interested-book-sidebar .cityc,
.aside-slider-wrap .book-card-item .booktc,
.aside-slider-wrap .book-card-item .cityc,
.top100-slider .aside-slider-wrap a.taglnk0 .booktc,
.top100-slider .aside-slider-wrap a.taglnk0 .cityc {
    font-size: 13px;
    line-height: 1.35;
    text-align: center !important;
}
.aside-slider-wrap .interested-book-sidebar .booktc,
.aside-slider-wrap .book-card-item .booktc,
.top100-slider .aside-slider-wrap a.taglnk0 .booktc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.aside-slider-wrap .interested-book-sidebar .cityc,
.aside-slider-wrap .book-card-item .cityc,
.top100-slider .aside-slider-wrap a.taglnk0 .cityc {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.aside-slider-wrap .interested-book-sidebar .booktc,
.aside-slider-wrap .book-card-item .booktc,
.top100-slider .aside-slider-wrap a.taglnk0 .booktc {
    color: #374151 !important;
    font-weight: 500;
}
.aside-slider-wrap .interested-book-sidebar .cityc,
.aside-slider-wrap .book-card-item .cityc,
.top100-slider .aside-slider-wrap a.taglnk0 .cityc {
    color: #5a6573 !important;
}

/* --- Сайдбар: единая стилизация для всех страниц (не только главная) --- */
.aside__container {
    background-color: #ffffff !important;
    border: 1px solid #e4edf4 !important;
    border-radius: 16px;
    padding: 12px 14px !important;
    margin-bottom: 8px;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .06);
    min-height: 50px;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}
.aside__container .aside__title {
    font-size: 15px !important;
    font-weight: 600;
    color: #4a5568 !important;
    margin-bottom: 10px !important;
    text-align: center !important;
}
.aside__container .interested-book-sidebar,
.aside__container .interested-book-sidebar > p,
.aside__container .interested-book-sidebar .booktc,
.aside__container .interested-book-sidebar .cityc,
.aside-slider-wrap a.taglnk0 .booktc,
.aside-slider-wrap a.taglnk0 .cityc {
    color: #5a6573 !important;
    font-size: 13px;
}
.aside__container .interested-book-sidebar:hover,
.aside__container .interested-book-sidebar:hover > p,
.aside__container .interested-book-sidebar:hover .booktc,
.aside__container .interested-book-sidebar:hover .cityc,
.aside-slider-wrap a.taglnk0:hover .booktc,
.aside-slider-wrap a.taglnk0:hover .cityc,
.aside-slider-wrap .book-card-item:hover .booktc,
.aside-slider-wrap .book-card-item:hover .cityc {
    color: var(--primary-color) !important;
}

/* --- «Продолжить чтение»: единые стили для всех страниц --- */
.aside-slider-continue-reading {
    overflow: hidden;
}
.aside-slider-continue-reading .aside-slider-wrap {
    max-height: 400px;
    overflow: hidden;
}
.aside-slider-continue-reading .display-mode-2 {
    display: none !important;
}
.aside-slider-continue-reading .aside-slider-card,
.aside-slider-continue-reading .aside-slider-wrap .item,
.aside-slider-continue-reading .aside-slider-wrap .book-card-mini,
.aside-slider-continue-reading .aside-slider-wrap .book-card-item {
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: none !important;
    padding: 12px !important;
    border: none !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    min-height: 320px !important;
    max-height: 320px !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
}
.aside-slider-continue-reading .aside-slider-card,
.aside-slider-continue-reading .aside-slider-wrap .item,
.aside-slider-continue-reading .aside-slider-wrap .book-card-mini,
.aside-slider-continue-reading .aside-slider-wrap .book-card-item,
.aside-slider-continue-reading .aside-slider-wrap a[class*="taglnk"] {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: center !important;
}
.aside-slider-continue-reading .textcenter {
    text-align: center !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    padding: 0 8px 10px !important;
    gap: 4px;
}
.aside-slider-continue-reading .toptile {
    margin-bottom: 0 !important;
    gap: 10px !important;
}
.aside-slider-continue-reading .booktc,
.aside-slider-continue-reading .cityc,
.aside-slider-continue-reading .booktc a,
.aside-slider-continue-reading .cityc a {
    text-align: center !important;
    width: 100%;
    display: block !important;
}
.aside-slider-continue-reading .booktc,
.aside-slider-continue-reading .booktc a,
.aside-slider-continue-reading .cityc,
.aside-slider-continue-reading .cityc a {
    color: #374151 !important;
}
.aside-slider-continue-reading .cityc,
.aside-slider-continue-reading .cityc a {
    color: #5a6573 !important;
}
.aside-slider-continue-reading .booktc,
.aside-slider-continue-reading .booktc a {
    font-weight: 500;
}
.aside-slider-continue-reading .booktc a:hover,
.aside-slider-continue-reading .cityc a:hover {
    color: var(--primary-color) !important;
}
.aside-slider-continue-reading .aside__title,
.aside-slider-continue-reading .aside__title a {
    color: #4a5568 !important;
}
.aside-slider-continue-reading .aside__title a:hover {
    color: var(--primary-color) !important;
}
.aside-slider-continue-reading .toptile,
.aside-slider-continue-reading .toptile > div:first-child,
.aside-slider-continue-reading .toptile a.txt,
.aside-slider-continue-reading .toptile picture {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
.aside-slider-continue-reading .toptile {
    align-items: center !important;
}
.aside-slider-continue-reading .book-card-mini .toptile > div:nth-child(2) {
    flex: 0 0 auto !important;
    max-width: none !important;
    width: 100% !important;
}
.aside-slider-continue-reading .toptile > div:first-child {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    height: 192px !important;
    overflow: hidden !important;
    border-radius: 12px !important;
    background: #f0f4f8;
    position: relative !important;
}
.aside-slider-continue-reading .toptile a.txt,
.aside-slider-continue-reading .toptile picture,
.aside-slider-continue-reading .toptile img {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 128px !important;
    height: 192px !important;
    max-width: 128px !important;
}
.aside-slider-continue-reading .toptile img,
.aside-slider-continue-reading .toptile picture img,
.aside-slider-continue-reading img.shadow1 {
    object-fit: cover !important;
    object-position: center !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 12px !important;
}
.aside-slider-continue-reading .book-card-mini,
.aside-slider-continue-reading .item.book-card-mini {
    margin-bottom: 0 !important;
}
/* Продолжить чтение: обложка */
.aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile picture,
.aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile picture img,
.aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile img {
    width: 128px !important;
    height: 192px !important;
    object-fit: cover !important;
    object-position: center !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    border-radius: 12px !important;
}
.aside__container.aside-slider-continue-reading .continue-reading-book-sidebar .toptile picture {
    overflow: hidden !important;
    border-radius: 12px !important;
    line-height: 0;
}

/* --- Платные функции (поднятие в топ, баннеры) — карточка книги --- */
.paid-features-toggle {
    display: flex;
    align-items: center;
    gap: 8px;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    width: auto;
    font-size: 14px;
    color: #374151;
    transition: color .15s ease;
}
.paid-features-toggle:hover {
    color: var(--primary-color);
}

.paid-features-arrow {
    transition: transform .2s ease;
}

.paid-features-toggle-text {
    font-size: 13px;
    color: var(--primary-color);
    text-decoration: underline;
}

.paid-features-content {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height .24s ease, opacity .2s ease;
    border: 1px solid #e2e8f0;
    padding: 0 14px;
    border-radius: 10px;
    margin-bottom: 12px;
    background: #fff;
}

.paid-features-section {
    padding: 12px 0;
}

.paid-features-section-title {
    font-size: 15px;
    font-weight: 600;
    color: #1f2937;
    margin: 0 0 8px;
    line-height: 1.35;
}

.paid-features-currently {
    font-size: 13px;
    color: #6b7280;
    margin: 0 0 10px;
    line-height: 1.4;
}

.paid-features-divider {
    border: none;
    border-top: 1px solid #e5e7eb;
    margin: 0;
}

/* --- Платные функции (поднятие в топ, баннеры) — карточка книги --- */
.paid-features-section .promo-manual-order {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin: 0;
}

.paid-features-section .promo-manual-order .btn {
    min-height: 36px;
    padding: 6px 16px;
    font-size: 13px;
}

.paid-features-section .promo-manual-order .form-control {
    min-height: 36px;
    padding: 4px 10px;
    font-size: 13px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    background: #fff;
}

.paid-features-section select {
    display: block;
    width: 100%;
    min-height: 36px;
    padding: 4px 10px;
    font-size: 13px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    background: #fff;
    color: #374151;
    margin-bottom: 12px;
}

.paid-features-section input[type="file"] {
    display: block;
    font-size: 13px;
    color: #374151;
    margin-bottom: 10px;
}

.paid-features-section input[type="checkbox"] {
    margin-right: 6px;
}

.paid-features-section label {
    display: block;
    font-size: 13px;
    color: #6b7280;
    line-height: 1.35;
    margin-bottom: 10px;
}

.paid-features-section form label:last-of-type {
    margin-bottom: 0;
}

.paid-features-section form > .btn {
    margin-top: 10px;
    display: inline-block;
}

/* "Усилить рекламу" — кнопки стопкой */
.paid-features-section form > .btn + .btn {
    margin-left: 0;
    margin-top: 10px;
}

.paid-features-section form > .btn[name] {
    display: block;
    width: 100%;
}

.paid-features-section p {
    font-size: 13px;
    color: #6b7280;
    margin: 6px 0;
    line-height: 1.4;
}

.paid-features-section p b {
    color: #374151;
}

.paid-features-balance-hint {
    display: none;
    margin-top: 8px;
    color: #dc2626;
    font-size: 13px;
}
/* --- Вкладки категорий (Популярное, Новые главы…): серые, активная — бирюза (п.8 uaz2) --- */
.homepage-categories-block .bestsellers-nav-widgets__link {
    color: #6b7280 !important;
    transition: color 0.2s, background 0.2s;
    padding: 8px 12px !important;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
}
.homepage-categories-block .bestsellers-nav-widgets__link:hover {
    color: var(--primary-color) !important;
    background-color: rgba(15, 166, 171, 0.08) !important;
}
.homepage-categories-block .bestsellers-nav-widgets__link.active {
    color: var(--primary-color) !important;
    background-color: rgba(15, 166, 171, 0.12) !important;
    border-color: var(--primary-color) !important;
}
.homepage-categories-block .bestsellers-nav-widgets__link:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}

/* --- Секции главной: компактные отступы, заголовки с акцентом --- */
.homepage-block,
.lazy-section.homepage-block,
.homepage-seo-block {
    margin-bottom: 24px;
}
/* Отступ между секциями-карточками книг (commitm, book-card-item.lazy-section) на главной */
.main-site-wrapper:has(.homepage-block) .book-card-item.lazy-section,
.main-site-wrapper:has(.homepage-block) section.book-card-item.lazy-section {
    margin-bottom: 10px;
}
/* Блок карточки книги (commitm.seriawrapper > div): отступ слева 10px */
.homepage-block .homepage-block-header {
    margin-bottom: 10px;
}
.homepage-block .homepage-block-header .txt {
    position: relative;
    font-size: 1.05rem !important;
    font-weight: 600;
    color: #1a1a1a;
    padding-left: 18px;
    border-left: 0;
}
.homepage-block .homepage-block-header .txt::before,
.homepage-block .homepage-block-header .txt::after {
    content: "";
    position: absolute;
    left: 0;
    pointer-events: none;
}
.homepage-block .homepage-block-header .txt::before {
    top: 50%;
    width: 3px;
    height: 32px;
    border-radius: 999px;
    background: #0fa6ab;
    transform: translateY(-50%);
}
.homepage-block .homepage-block-header .txt::after {
    display: none;
}
.homepage-block .section-more {
    font-size: 0.875rem !important;
    color: #fff !important;
    text-decoration: none;
    padding: 9px 14px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #0fa6ab;
    border: 1px solid #0d969b;
    box-shadow: 0 8px 18px rgba(15, 166, 171, 0.22);
    font-weight: 600;
    line-height: 1.2;
    white-space: nowrap;
    transition: color 0.2s, background 0.2s, box-shadow 0.2s, transform 0.2s;
}
.homepage-block .section-more:hover {
    color: #fff !important;
    background: #0b8f94;
    box-shadow: 0 10px 22px rgba(15, 166, 171, 0.28);
    transform: translateY(-1px);
    text-decoration: none;
}
.homepage-block .section-more:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}
.homepage-block .section-more--bottom {
    display: none;
    width: fit-content;
    margin: 14px auto 0;
}
.homepage-why-block > .lazy-content {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06);
    padding: 22px 24px 24px;
}
.homepage-why-block__intro {
    max-width: 720px;
    margin-bottom: 18px !important;
}
.homepage-why-block__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}
.homepage-why-card {
    min-width: 0;
    min-height: 168px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding: 18px;
    border: 1px solid #e6eef1;
    border-radius: 10px;
    background: #f8fbfc;
    box-sizing: border-box;
}
.homepage-why-card__icon {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    border-radius: 10px;
    color: #0f8f95;
    background: rgba(15, 166, 171, 0.12);
}
.homepage-why-card__icon .fa {
    font-size: 18px;
    line-height: 1;
}
.homepage-why-card__title {
    margin: 2px 0 0;
    color: #111827;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.3;
}
.homepage-why-card__text {
    margin: 0;
    color: #4b5563;
    font-size: 0.92rem;
    line-height: 1.45;
}

@media (max-width: 1100px) {
    .homepage-why-block__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 767px) {
    .homepage-why-block > .lazy-content {
        padding: 18px 16px;
    }
    .homepage-why-block__grid {
        grid-template-columns: 1fr;
    }
    .homepage-why-card {
        min-height: 0;
        padding: 16px;
    }
}
/* П.18: Унифицированные кнопки — скругления, hover, focus */
.homepage-block .btn,
body.homepage .btn,
#toppad .btn,
.homepage-contests-block .button,
.homepage-contests-block .btn {
    border-radius: 10px !important;
    padding: 10px 16px !important;
    font-weight: 600 !important;
    transition: transform 0.15s ease, box-shadow 0.2s ease, background 0.2s ease, border-color 0.2s ease !important;
}
.homepage-block .btn:hover,
body.homepage .btn:hover,
#toppad .btn:hover,
.homepage-contests-block .button:hover,
.homepage-contests-block .btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(15, 166, 171, 0.25);
}
.homepage-block .btn:active,
body.homepage .btn:active,
#toppad .btn:active,
.homepage-contests-block .button:active {
    transform: translateY(0);
}
.homepage-block .btn-primary,
body.homepage .btn-primary,
#toppad .btn-primary,
.homepage-contests-block .button_color {
    background: var(--primary-color) !important;
    border-color: var(--primary-color) !important;
    color: #fff !important;
    box-shadow: 0 6px 16px rgba(15, 166, 171, 0.25);
}
.homepage-block .btn-primary:hover,
body.homepage .btn-primary:hover,
#toppad .btn-primary:hover,
.homepage-contests-block .button_color:hover {
    background: #0d9ca1 !important;
    border-color: #0d9ca1 !important;
}
.homepage-block .btn:focus-visible,
body.homepage .btn:focus-visible,
#toppad .btn:focus-visible,
.homepage-contests-block .button:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}
/* Стрелки слайдера — плавный hover с фоном */
.homepage-block .homepage-slider-arrow,
.homepage-row-slider-wrap .homepage-slider-arrow {
    border-radius: 50%;
    transition: opacity 0.2s ease, background 0.2s ease, transform 0.2s ease !important;
}
.homepage-block .homepage-slider-arrow:hover:not(:disabled),
.homepage-row-slider-wrap .homepage-slider-arrow:hover:not(:disabled) {
    opacity: 1;
    background: rgba(15, 166, 171, 0.12);
}
.homepage-slider-prev:hover:not(:disabled) {
    transform: translateY(-50%) translateX(-50%) scale(1.08) !important;
}
.homepage-slider-next:hover:not(:disabled) {
    transform: translateY(-50%) translateX(50%) scale(1.08) !important;
}

/* 12) Плиточный формат бестселлеров (uaz2 — визуальная динамика) */
.homepage-grid-section .homepage-grid-wrap {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}
.homepage-grid-section .homepage-grid-wrap .books-list,
.homepage-grid-section .homepage-grid-wrap .homepage-row-slider__inner {
    display: contents;
}
.homepage-grid-section .homepage-grid-wrap .book-row,
.homepage-grid-section .homepage-grid-wrap .book-card-item,
.homepage-grid-section .homepage-grid-wrap .item {
    min-width: 0;
}
@media (max-width: 600px) {
    .homepage-grid-section .homepage-grid-wrap {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}

/* Лучшие произведения месяца: десктоп = сетка 3 ряда, мобилка = карусель */
.homepage-best-works__desktop{display:none}.homepage-best-works__mobile{display:block}
@media (min-width: 992px){
    .homepage-best-works__desktop{display:block}
    .homepage-best-works__mobile{display:none}
    .homepage-best-works-section.homepage-grid-section .homepage-grid-wrap{
        /* Растягиваем сетку на всю ширину секции, “воздух” уходит между колонками */
        width: 100%;
        max-width: 100%;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        column-gap: 24px;
        row-gap: 24px;
        justify-content: stretch;
    }
}

/* На широких экранах помещаем 5 книг в ряд */
@media (min-width: 1200px){
    .homepage-best-works-section.homepage-grid-section .homepage-grid-wrap{
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

/* Лучшие произведения месяца: уменьшить карточки/обложки и сделать комфортные отступы */
@media (min-width: 992px){
    .homepage-best-works-section.homepage-grid-section .homepage-grid-wrap{
        /* Ячейка центрирует содержимое; карточка фиксированной ширины (см. .toptiletoptile ниже) */
        justify-items: center;
        align-items: start;
        justify-content: center;
        box-sizing: border-box;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .book-card-item,
    .homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .book-row,
    .homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .item{
        width: 100%;
        max-width: 150px;
    }
    .homepage-best-works-section.homepage-grid-section .book-card-item .booktc,
    .homepage-best-works-section.homepage-grid-section .book-card-item .cityc{
        font-size: 13px;
        line-height: 1.25;
    }
}

@media (min-width: 992px){
    .homepage-best-works-section .lazy-content{
        overflow-x: hidden;
        box-sizing: border-box;
        /* Симметричные поля — иначе сетка визуально «уезжает» влево */
        padding-left: 28px;
        padding-right: 28px;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile{
        overflow: hidden;
    }
    /* display_mode=3: первый ребёнок — .prc (цена), обложка в .prc + .textcenter (см. book_info.php) */
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter{
        width: 150px !important;
        max-width: 150px !important;
        position: relative !important;
        aspect-ratio: 2 / 3 !important;
        overflow: hidden !important;
        border-radius: 12px;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter a{
        display: block !important;
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter picture{
        display: block !important;
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        box-sizing: border-box !important;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter img,
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter picture img{
        display: block !important;
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        box-sizing: border-box !important;
    }
    body.homepage .lazy-section.homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child,
    body.homepage .lazy-section.homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .item.book-card-mini .toptile > div:first-child{
        width: 150px !important;
        max-width: 150px !important;
    }
    body.homepage .lazy-section.homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child a,
    body.homepage .lazy-section.homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile picture{
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
    }
    body.homepage .lazy-section.homepage-best-works-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child picture img{
        object-fit: cover !important;
        object-position: center center !important;
    }

    /* Сетка «Лучшие произведения»: без body.homepage — класс на body не всегда есть (gmenu/gitem); путь через __desktop уникален */
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile{
        display: flex !important;
        flex-direction: column !important;
        /* stretch тянул .prc + .textcenter на ширину ячейки (~216px), обложка 150px оставалась слева */
        align-items: center !important;
        justify-self: center !important;
        width: 150px !important;
        max-width: min(100%, 150px) !important;
        min-width: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc{
        width: 100% !important;
        max-width: 150px !important;
        align-self: center !important;
        box-sizing: border-box;
        text-align: center !important;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter{
        align-self: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile .cityc,
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile .cityc a,
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile .booktc,
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile .booktc a{
        text-align: center !important;
        width: 100% !important;
    }
}

/* --- Карточки на главной: мягкие тени, скругления --- */
.homepage-block .lazy-content {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
    border-radius: 12px !important;
    padding: 24px;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
}
.homepage-block .textcenter{
    /* на главной .textcenter иногда становится flex (через глобальные правила) —
       фиксируем центрирование подписи/автора относительно обложки */
    align-items: center;
}
body.homepage .homepage-block .textcenter .booktc,
body.homepage .homepage-block .textcenter .cityc,
body.homepage .homepage-block .textcenter .booktc a,
body.homepage .homepage-block .textcenter .cityc a,
body.homepage .homepage-block .textcenter .cityc a.txt{
    width: 100%;
    text-align: center !important;
    margin-left: auto;
    margin-right: auto;
    display: block;
}
.homepage-block .book-card-item .toptile,
.homepage-block .toptile,
.homepage-block .book-row .toptile {
    border-radius: 10px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
    border: none !important;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.homepage-block .book-card-item .toptile:hover,
.homepage-block .toptile:hover,
.homepage-block .book-row .toptile:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}
.homepage-block .book-card-item a:focus-visible .toptile,
.homepage-block .book-row a:focus-visible .toptile {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}
/* Карточки книг: фиксированная ширина, чтобы при пустой обложке не схлопывались */
.homepage-block .book-card-item,
.homepage-block .book-row,
.homepage-block .owl-carousel .item,
.homepage-block .homepage-scroll-carousel .item {
    min-width: 128px;
    flex-shrink: 0;
}
/* Текстовый блок карточки на главной: отступ слева 10px */
.homepage-block .book-card-item .w600,
.homepage-block .book-card-item .book-card-layout-wrapper > .w600 {
    padding-left: 10px !important;
}
.homepage-block .book-card-item .toptile > div:first-child,
.homepage-block .book-card-item picture,
.homepage-block .toptile > div:first-child,
.homepage-block .book-row .toptile > div:first-child {
    min-width: 128px;
    min-height: 182px;
    background: #f0f4f8;
}

/* --- Главная: одинаковые обложки и корректный бейдж "Эксклюзив" --- */
body.homepage .homepage-grid-section .book-card-item .toptile > div:first-child,
.cnt-wrapper:has(.homepage-block) .homepage-grid-section .book-card-item .toptile > div:first-child,
html:has(.header__main_homepage) .homepage-grid-section .book-card-item .toptile > div:first-child {
    position: relative; /* anchor for .exclusive-pack */
    overflow: hidden;
    border-radius: 12px;
    background: #f0f4f8;
    aspect-ratio: 2 / 3;
    min-height: unset;
    width: 100%;
}

body.homepage .homepage-grid-section .book-card-item .toptile > div:first-child picture,
body.homepage .homepage-grid-section .book-card-item .toptile > div:first-child a,
body.homepage .homepage-grid-section .book-card-item .toptile > div:first-child .w300b,
.cnt-wrapper:has(.homepage-block) .homepage-grid-section .book-card-item .toptile > div:first-child picture,
html:has(.header__main_homepage) .homepage-grid-section .book-card-item .toptile > div:first-child picture {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
}

body.homepage .homepage-grid-section .book-card-item .toptile > div:first-child img,
.cnt-wrapper:has(.homepage-block) .homepage-grid-section .book-card-item .toptile > div:first-child img,
html:has(.header__main_homepage) .homepage-grid-section .book-card-item .toptile > div:first-child img {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: cover;
    object-position: center;
    display: block;
    position: absolute;
    inset: 0;
}

/* Make sure exclusive ribbon is pinned to cover, not to outer card */
body.homepage .homepage-grid-section .book-card-item .toptile > div:first-child .exclusive,
body.homepage .homepage-grid-section .book-card-item .toptile > div:first-child .exclusive-pack,
.cnt-wrapper:has(.homepage-block) .homepage-grid-section .book-card-item .toptile > div:first-child .exclusive,
.cnt-wrapper:has(.homepage-block) .homepage-grid-section .book-card-item .toptile > div:first-child .exclusive-pack,
html:has(.header__main_homepage) .homepage-grid-section .book-card-item .toptile > div:first-child .exclusive,
html:has(.header__main_homepage) .homepage-grid-section .book-card-item .toptile > div:first-child .exclusive-pack {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    z-index: 12 !important;
}

/* П.19: Значки жанр/скидка — единый стиль на главной */
.homepage-block .toptile .sale,
.homepage-block .book-card-mini .toptile .sale,
.homepage-block .book-row .toptile .sale {
    position: absolute;
    top: 8px;
    left: 8px;
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 8px;
    background: rgba(255, 193, 7, 0.95);
    color: #1a1a1a;
    font-size: 11px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    z-index: 2;
}
/* В слайдере лента «Эксклюзив» должна обрезаться по границам обложки */
.homepage-block .book-card-mini .toptile picture:has(.exclusive),
.homepage-block .book-card-mini .toptile picture:has(.exclusive-pack),
.homepage-row-slider-section .book-card-mini .toptile picture:has(.exclusive),
.homepage-row-slider-section .book-card-mini .toptile picture:has(.exclusive-pack) {
    overflow: hidden !important;
}
/* «Эксклюзив»: диагональная угловая лента в правом верхнем углу */
.toptile .exclusive,
.toptile .exclusive-pack,
.book-card-mini .toptile .exclusive,
.book-card-mini .toptile .exclusive-pack,
.book-row .toptile .exclusive,
.book-card-item .exclusive-pack,
.book-card-item .exclusive {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0;
    background: none !important;
    border: none;
    overflow: visible !important;
    display: block !important;
    visibility: visible !important;
    z-index: 10;
}
/* Лента «Эксклюзив» — базовый стиль для слайдеров (book-card-mini) */
.toptile .exclusive::before,
.toptile .exclusive-pack::before,
.book-card-mini .toptile .exclusive::before,
.book-card-mini .toptile .exclusive-pack::before,
.book-row .toptile .exclusive::before,
.book-card-item .exclusive-pack::before,
.book-card-item .exclusive::before {
    content: 'ЭКСКЛЮЗИВ';
    position: absolute;
    top: 18px;
    right: -22px;
    width: 88px;
    padding: 6px 6px 4px 6px;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: 0.3px;
    text-align: center;
    color: #fff;
    background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
    border-radius: 2px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    transform: rotate(45deg);
    transform-origin: center;
}
/* Крупные карточки (не слайдеры): размеры для больших обложек */
.book-card-item .exclusive-pack::before,
.book-card-item .exclusive::before {
    top: 28px !important;
    right: -33px !important;
    width: 140px !important;
    padding: 0 !important;
    font-size: 11px !important;
}
.homepage-block .book-card-item .toptile > div:first-child img,
.homepage-block .book-card-item picture img,
.homepage-block .toptile picture img {
    min-height: 182px;
    object-fit: cover;
}

.interested-book-sidebar .toptile {
    width: 100% !important;
}

/* Рамка по границе фото: без отступов в карточке, тень и скругление только на обложке */
.homepage-block .book-card-item .toptile,
.homepage-block .toptile,
.homepage-block .book-row .toptile,
.mark12 .book-card-mini .toptile,
.mark12 .writers-scroll-carousel .toptile,
.mark12 .homepage-scroll-carousel .toptile,
.mark12 .owl-carousel .toptile,
#recently-subscribed .book-card-mini .toptile,
#recently-subscribed .owl-carousel .toptile,
#recently-subscribed .homepage-scroll-carousel .toptile {
    padding: 0 !important;
    box-shadow: none !important;
}
.homepage-block .toptile > div:first-child,
.homepage-block .toptile picture,
.homepage-block .book-card-item .toptile > div:first-child,
#recently-subscribed .toptile > div:first-child,
#recently-subscribed .toptile picture,
/* Обложка карточки книги: обрезать ленту «Эксклюзив» по границам, не обрезая «Бесплатно» */
.book-card-item .toptile > div:first-child,
.book-card-item .toptile picture,
.book-card-item .w300b picture {
    border-radius: 10px;
    overflow: hidden;
    line-height: 0;
    display: block !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

/* new_bookinfo: .book-cover-overlay-badges .exclusive-pack — relative + 52×60 обрезает ::before ленты */
.book-card-item .book-cover-overlay-badges .exclusive-pack,
.book-card-item .book-cover-overlay-badges .exclusive {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: auto !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    flex-shrink: 0;
    background: none !important;
    background-size: unset !important;
}

/* Страница книги, поиск, commitm: та же диагональная лента «Эксклюзив», что на главной */
.commitm .exclusive-pack,
.commitm .exclusive,
.bookinfo .w300b .relat .exclusive-pack,
.bookinfo .w300b .relat .exclusive,
#result .item_card .relat .exclusive-pack,
#result .item_card .relat .exclusive {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0;
    background: none !important;
    border: none;
    overflow: visible !important;
    display: block !important;
    visibility: visible !important;
    z-index: 10;
}
.commitm .exclusive-pack::before,
.commitm .exclusive::before,
.bookinfo .w300b .relat .exclusive-pack::before,
.bookinfo .w300b .relat .exclusive::before,
#result .item_card .relat .exclusive-pack::before,
#result .item_card .relat .exclusive::before {
    content: 'ЭКСКЛЮЗИВ';
    position: absolute;
    top: 18px;
    right: -22px;
    width: 88px;
    padding: 6px 6px 4px 6px;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: 0.3px;
    text-align: center;
    color: #fff;
    background: linear-gradient(135deg, #f59e0b 0%, #ea580c 100%);
    border-radius: 2px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
    transform: rotate(45deg);
    transform-origin: center;
}
.bookinfo .w300b .relat .exclusive-pack::before,
.bookinfo .w300b .relat .exclusive::before,
.commitm .w300b .relat .exclusive-pack::before,
.commitm .w300b .relat .exclusive::before,
#result .item_card .relat .exclusive-pack::before,
#result .item_card .relat .exclusive::before {
    top: 28px !important;
    right: -33px !important;
    width: 140px !important;
    padding: 0 !important;
    font-size: 11px !important;
}
/* Лента «Эксклюзив» обрезается по скруглению блока обложки (каталог, поиск, страница книги) */
.book-card-item .w300b .relat:has(.exclusive-pack),
.book-card-item .w300b .relat:has(.exclusive),
.book-card-item .seriaclass .relat:has(.exclusive-pack),
.book-card-item .seriaclass .relat:has(.exclusive),
.book-card-item .seriaclass1 .relat:has(.exclusive-pack),
.book-card-item .seriaclass1 .relat:has(.exclusive),
.commitm .relat:has(.exclusive-pack),
.commitm .relat:has(.exclusive),
.bookinfo .w300b .relat:has(.exclusive-pack),
.bookinfo .w300b .relat:has(.exclusive),
#result .item_card .relat:has(.exclusive-pack),
#result .item_card .relat:has(.exclusive) {
    overflow: hidden !important;
    border-radius: 10px;
}

/* Главная (включая «Лучшие произведения месяца»): picture задаёт размер, img заполняет полностью */
.homepage-block .toptile picture,
.homepage-block .book-card-item picture,
.homepage-block .book-row picture {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    aspect-ratio: 2 / 3;
    height: auto !important;
}
.homepage-block .toptile picture img,
.homepage-block .book-card-item picture img,
.homepage-block .book-row picture img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
}
/* Контейнер обложки: клип ленты «Эксклюзив» — без line-height:0, чтобы не прятать «Бесплатно» */
.book-card-item .w300b .relat,
.book-card-item .seriaclass .relat {
    border-radius: 10px;
    overflow: hidden;
    display: block !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}
.book-card-item .w300b .book-cover-wrap {
    border-radius: 10px;
    display: block !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}
/* «Мнение писателей»: без рамок и теней у картинок, убрать голубые рамки */
.mark12 .toptile > div:first-child,
.mark12 .toptile picture,
.mark12 .book-card-mini .toptile picture,
.mark12 .book-card-mini .toptile > div:first-child,
.mark12 .writers-scroll-carousel .toptile > div:first-child,
.mark12 .homepage-scroll-carousel .toptile > div:first-child,
.mark12 .owl-carousel .toptile > div:first-child,
.author_about .mark12 .book-card-mini .toptile picture,
.book-card-item .mark12 .book-card-mini .toptile picture {
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
}
.mark12 .toptile img,
.mark12 .book-card-mini .toptile img,
.mark12 .writers-scroll-carousel .toptile img,
.mark12 .homepage-scroll-carousel .toptile img,
.mark12 .owl-carousel .toptile img {
    border: none !important;
    box-shadow: none !important;
}
.homepage-block .toptile > div:first-child img,
.homepage-block .toptile picture img,
.mark12 .toptile > div:first-child img,
.mark12 .toptile picture img,
.mark12 .toptile img,
#recently-subscribed .toptile img {
    display: block !important;
    vertical-align: top;
}

/* --- Футер: светлее, больше воздуха --- */
.footer {
    background: #2d363e !important;
}
.footer__inner {
    padding-top: 56px !important;
    padding-bottom: 48px !important;
    gap: 40px !important;
}
.footer__text-p,
.footer__link {
    color: #b0b8c0 !important;
}
.footer__link:hover {
    color: #e2e8f0 !important;
}
.footer__nav-items {
    gap: 14px !important;
    row-gap: 16px !important;
}
.footer__nav-ul {
    gap: 12px !important;
}

/* --- Ссылки в основном контенте главной: серые, бирюза при hover (не перебивать CTA) --- */
.cnt-wrapper:has(.homepage-block) .cntl .homepage-block a.lnk:not(.btn):not(.section-more):not([class*="btn"]),
.cnt-wrapper:has(.homepage-block) .cntl .homepage-block .book-card-item a:not(.btn):not(.rating-star-icon-button) {
    color: #4a5568;
}
.cnt-wrapper:has(.homepage-block) .cntl .homepage-block a.lnk:hover:not(.btn):not(.section-more),
.cnt-wrapper:has(.homepage-block) .cntl .homepage-block .book-card-item a:hover:not(.btn):not(.rating-star-icon-button) {
    color: var(--primary-color);
}
/* Звёзды рейтинга: заполненные оранжевые, пустые серые — на главной и по всем страницам */
.book-card-item .rating .icon_rating,
.book-card-item .w300b .rating .icon_rating,
.w300b .rating .icon_rating {
    color: #fbb713 !important;
}
.book-card-item .rating .icon_rating_disabled,
.book-card-item .w300b .rating .icon_rating_disabled,
.w300b .rating .icon_rating_disabled {
    color: #e0e0e0 !important;
}
.book-card-item .rating .rating-star-svg--filled path,
.book-card-item .w300b .rating .rating-star-svg--filled path,
.w300b .rating .rating-star-svg--filled path {
    fill: #F2994A !important;
}

/* Звёзды рейтинга: ширина и отступ */
div.ratingstars {
    width: 100% !important;
    margin-left: 5px;
}

/* --- Поиск отдельной строкой под шапкой (как ЛитРес: контент сверху, поиск ниже) --- */
/* На десктопе строка поиска скрыта — поиск по иконке в шапке. Отступ под хедер+hotlinks */
@media (min-width: 961px) {
    .header__search-row {
        display: none !important;
    }
    body {
        /* Шапка фиксирована; .header__main уже даёт padding-top: env(safe-area-inset-top) — компенсируем и здесь */
        padding-top: calc(120px + env(safe-area-inset-top, 0px)) !important;
    }
}
/* Отступ от шапки на планшете/мобилке: шапка + строка поиска */
@media (max-width: 960px) {
    body {
        padding-top: calc(145px + env(safe-area-inset-top, 0px)) !important;
    }
}
@media (max-width: 767px) {
    body {
        /* На мобильном header-spacing.css переводит шапку в обычный поток. */
        padding-top: 0 !important;
    }
    body.homepage {
        padding-top: 0 !important;
    }
}

body.homepage .homepage-best-works-section .toptile > div:first-child,
body.homepage .homepage-best-works-section .toptile picture,
body.homepage .homepage-best-works-section .toptile a,
body.homepage .homepage-best-works-section .toptile .w300b {
    border-radius: 12px !important;
    overflow: hidden !important;
}

body.homepage .homepage-best-works-section .toptile img,
body.homepage .homepage-best-works-section .toptile picture img,
body.homepage .homepage-best-works-section img.shadow1,
body.homepage .homepage-best-works-section img.lazy-media,
body.homepage .homepage-best-works-section img.owl-lazy {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 12px !important;
    object-fit: cover !important;
    object-position: center center !important;
}

@media (min-width: 992px) {
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptiletoptile .textcenter,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .book-card-item .textcenter {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptiletoptile .textcenter > picture,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .book-card-item .textcenter > picture {
        display: block !important;
        width: 150px !important;
        min-width: 150px !important;
        max-width: 150px !important;
        height: 225px !important;
        min-height: 225px !important;
        max-height: 225px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        border-radius: 12px !important;
        overflow: hidden !important;
        line-height: 0 !important;
        position: relative !important;
    }

    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptiletoptile .textcenter > picture > img.shadow1,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .book-card-item .textcenter > picture > img.shadow1 {
        display: block !important;
        width: 150px !important;
        min-width: 150px !important;
        max-width: 150px !important;
        height: 225px !important;
        min-height: 225px !important;
        max-height: 225px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        border-radius: 12px !important;
        object-fit: cover !important;
        object-position: center center !important;
        clip-path: inset(0 round 12px) !important;
    }

    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptiletoptile .textcenter > a.txt,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .book-card-item .textcenter > a.txt {
        display: block !important;
        width: 150px !important;
        min-width: 150px !important;
        max-width: 150px !important;
        height: 225px !important;
        min-height: 225px !important;
        max-height: 225px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
        line-height: 0 !important;
        background: transparent !important;
    }
}

body.homepage .homepage-best-works-section .toptile a:hover {
    background-color: transparent !important;
    border-radius: 0 !important;
}

body.homepage .homepage-best-works-section .lazy-content {
    padding-bottom: 20px !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 28px !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    justify-items: center !important;
    align-items: start !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .books-list,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .homepage-row-slider__inner,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .books-list,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .homepage-row-slider__inner {
    display: contents !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-item,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-row,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .item,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-item,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-row,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .item,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile {
    width: 100% !important;
    max-width: 210px !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child {
    width: 100% !important;
    max-width: 210px !important;
    aspect-ratio: 2 / 3 !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-radius: 12px !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile picture,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter a,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child a,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile img,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap img.shadow1,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile picture,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter a,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child a,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile img,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap img.shadow1 {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 12px !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .booktc,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .booktc a,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .cityc,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .cityc a,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .booktc,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .booktc a,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .cityc,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .cityc a {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    text-align: center !important;
}
@media (max-width: 991px) {
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap,
    .cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 22px 16px !important;
        max-width: 480px !important;
    }
}
@media (max-width: 420px) {
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap,
    .cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap {
        gap: 18px 12px !important;
    }
}
.header__search-row {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    margin-top: 12px;
    padding: 12px 16px 16px;
    box-sizing: border-box;
    background: var(--header-bg);
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    overflow-x: hidden;
}
.header__search-row .header__search-form {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    max-width: 560px;
    min-width: 0;
    box-sizing: border-box;
}
.header__search-row .header-search-wrapper {
    position: relative;
    flex: 1 1 0%;
    min-width: 0;
}
.header__search-row .header__search-input {
    width: 100%;
    min-width: 0;
    padding: 10px 16px;
    font-size: 15px;
    border: none;
    border-radius: 10px;
    background: #fff;
    color: #1a1a1a;
    -webkit-appearance: none;
    appearance: none;
    background-clip: padding-box;
}
.header__search-row .header__search-input::placeholder {
    color: #8c9cac;
}
.header__search-row .header__search-input:focus {
    outline: none;
    box-shadow: 0 0 0 2px var(--primary-color);
}
.header__search-row .header__search-input::-webkit-search-decoration,
.header__search-row .header__search-input::-webkit-search-cancel-button,
.header__search-row .header__search-input::-webkit-search-results-button,
.header__search-row .header__search-input::-webkit-search-results-decoration {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}
.header__search-row .header__search-submit {
    flex-shrink: 0;
    padding: 10px 18px;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    background: var(--primary-color);
    border: none;
    border-radius: 10px;
    cursor: pointer;
    white-space: nowrap;
    box-sizing: border-box;
}
.header__search-row .header__search-submit:hover {
    background: #0d8a8e;
}
.header__find {
    flex: 0 1 320px;
    min-width: 220px;
}
.header__find-search {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
    height: 36px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.08);
    transition: border-color .2s ease, background .2s ease;
}
.header__find-search:focus-within {
    border-color: var(--primary-color);
    background: #fff;
}
.header__find-search .header-search-wrapper {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
}
.header__find-search .header__search-input {
    width: 100%;
    min-width: 0;
    height: 34px;
    padding: 0 10px 0 12px;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 14px;
    line-height: 34px;
    -webkit-appearance: none;
    appearance: none;
}
.header__find-search .header__search-input::placeholder {
    color: rgba(255, 255, 255, 0.72);
}
.header__find-search .header__search-input:focus {
    outline: none;
    box-shadow: none;
    color: #162532;
}
.header__find-search:focus-within .header__search-input::placeholder {
    color: #7a8997;
}
.header__find-search .header__search-input::-webkit-search-decoration,
.header__find-search .header__search-input::-webkit-search-cancel-button,
.header__find-search .header__search-input::-webkit-search-results-button,
.header__find-search .header__search-input::-webkit-search-results-decoration {
    -webkit-appearance: none;
    appearance: none;
    display: none;
}
.header__find-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 40px;
    width: 40px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 0 8px 8px 0;
    color: rgba(255, 255, 255, 0.86);
    background: transparent;
    cursor: pointer;
}
.header__find-submit:hover,
.header__find-search:focus-within .header__find-submit {
    color: var(--primary-color);
}
.header__find > .header__find-link {
    display: none;
}
@media (min-width: 1201px) {
    .header__find {
        display: flex;
        align-items: center;
        flex-wrap: nowrap;
        gap: 0;
    }
    .header__find-search {
        display: flex !important;
        flex: 1 1 auto;
        flex-wrap: nowrap !important;
        min-width: 0;
    }
    .header__find > .header__find-link {
        display: none !important;
    }
}
.header-search-suggestions {
    position: absolute;
    z-index: 1200;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    display: none;
    max-height: 320px;
    overflow-y: auto;
    padding: 6px;
    background: #fff;
    border: 1px solid rgba(20, 184, 190, 0.22);
    border-radius: 10px;
    box-shadow: 0 16px 36px rgba(15, 23, 42, 0.18);
}
.header-search-suggestions.is-visible {
    display: block;
}
.header-search-suggestion {
    display: flex;
    align-items: flex-start;
    width: 100%;
    gap: 10px;
    padding: 10px 12px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #162532;
    text-align: left;
    cursor: pointer;
}
.header-search-suggestion:hover,
.header-search-suggestion:focus-visible {
    background: #eefafa;
    outline: none;
}
.header-search-suggestion--loading {
    cursor: default;
    color: #667085;
}
.header-search-suggestion__type {
    flex: 0 0 auto;
    min-width: 52px;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(20, 184, 190, 0.12);
    color: #08777c;
    font-size: 11px;
    line-height: 1.35;
    font-weight: 700;
}
.header-search-suggestion__cover {
    flex: 0 0 34px;
    width: 34px;
    height: 48px;
    object-fit: cover;
    border-radius: 4px;
    background: #eef4f5;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.14);
}
.header-search-suggestion__text {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 2px;
}
.header-search-suggestion__label {
    color: #111827;
    font-size: 14px;
    line-height: 1.35;
    font-weight: 600;
}
.header-search-suggestion__subtitle {
    color: #667085;
    font-size: 12px;
    line-height: 1.3;
}
.header-search-suggestion__fuzzy {
    width: fit-content;
    padding: 1px 8px;
    border-radius: 10px;
    background: #e6f8f8;
    color: #0b7f84;
    font-size: 11px;
    line-height: 1.4;
}
/* --- П.17: Цвет навигации — чуть более живой оттенок бирюзы --- */
.header__main,
.header__hotlinks-row,
.header__search-row {
    --primary-color: #14b8be;
}

/* --- П.20: Панель горячих ссылок под навигацией (Книжный клуб, Опубликовать и т.д.) --- */
.header__hotlinks-row {
    background: var(--header-bg);
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    padding: 8px 0;
}
.header__hotlinks-inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 20px;
    padding: 0 16px;
    max-width: 1200px;
    margin: 0 auto;
}
.header__hotlink {
    font-size: 0.875rem;
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
    padding: 6px 10px;
    border-radius: 6px;
    transition: color 0.2s, background 0.2s, border-color 0.2s;
}
.header__hotlink:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.12);
}
.header__hotlink_primary {
    color: #fff;
    font-weight: 600;
    border-bottom: 2px solid var(--primary-color);
    padding-bottom: 4px;
}
.header__hotlink_primary:hover {
    background: rgba(15, 166, 171, 0.25);
    color: #fff;
    border-bottom-color: rgba(255, 255, 255, 0.5);
}
.header__buttons .header__start-reading.button_color {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 8px 18px;
    border-color: #ff6b2c;
    background: #ff6b2c;
    color: #fff !important;
    font-weight: 700;
    white-space: nowrap;
    box-shadow: 0 6px 18px rgba(255, 107, 44, 0.28);
}
.header__buttons .header__start-reading.button_color:hover,
.header__buttons .header__start-reading.button_color:focus-visible {
    background: #f15f20;
    border-color: #f15f20;
    color: #fff !important;
}
.header__buttons .header__enter.button_clear,
.header__buttons .header__register.button_clear,
.header__buttons .header__register.button_color {
    background: transparent;
    color: rgba(255, 255, 255, 0.88) !important;
    border-color: rgba(255, 255, 255, 0.32);
    box-shadow: none;
    font-weight: 500;
}
.header__buttons .header__enter.button_clear:hover,
.header__buttons .header__register.button_clear:hover,
.header__buttons .header__register.button_color:hover {
    background: rgba(255, 255, 255, 0.12);
    color: #fff !important;
}
@media (max-width: 1200px) {
    .header__buttons .header__start-reading.button_color {
        padding-left: 14px;
        padding-right: 14px;
    }
}
@media (max-width: 960px) {
    .header__hotlinks-inner {
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding: 0 12px;
        gap: 10px;
    }
    .header__hotlinks-inner::-webkit-scrollbar {
        display: none;
    }
}
@media (min-width: 961px) {
    .header__hotlinks-row {
        padding: 6px 0;
    }
}

@media (max-width: 960px) {
    .header__search-row {
        padding: 10px 12px 12px;
    }
    .header__search-row .header__search-form {
        max-width: 100%;
        width: 100%;
    }
    .header__search-row .header__search-submit {
        max-width: none;
        flex: 0 0 auto;
        padding: 10px 14px;
    }
    .header__main .header__buttons {
        gap: 8px;
    }
    .header__buttons .header__start-reading.button_color {
        min-height: 36px;
        padding: 7px 12px;
        font-size: 13px;
    }
    .header__buttons .header__enter.button_clear,
    .header__buttons .header__register.button_clear,
    .header__buttons .header__register.button_color {
        padding: 7px 10px;
        font-size: 13px;
    }
}
@media (max-width: 1200px) {
    .header__find {
        flex: 0 0 auto;
        min-width: 0;
    }
    .header__find-search {
        display: none;
    }
    .header__find > .header__find-link {
        display: flex !important;
    }
}
@media (max-width: 520px) {
    .header__buttons .header__register.button_clear,
    .header__buttons .header__register.button_color {
        display: none;
    }
    .header__buttons .header__start-reading.button_color {
        max-width: 168px;
        white-space: normal;
        text-align: center;
        line-height: 1.15;
    }
}

/* Узкий экран: строка поиска не вылезает за край (регистрация и др.) */
@media (max-width: 420px) {
    .header__search-row {
        padding-left: 10px;
        padding-right: 10px;
    }
    .header__search-row .header__search-form {
        flex-wrap: wrap;
        gap: 8px;
    }
    .header__search-row .header-search-wrapper,
    .header__search-row .header__search-input {
        flex: 1 1 100%;
        width: 100%;
        min-width: 0;
    }
    .header__search-row .header__search-submit {
        width: 100%;
        max-width: none;
        flex: 1 1 auto;
    }
}

/* --- Мобильный dropdown «Выберите категорию» — расширяющийся блок (как ЛитНет) --- */
.homepage-mobile-category-dropdown {
    display: none;
    position: relative;
}
@media (max-width: 767px) {
    /* Показываем в шапке по классу header (не зависим от body.homepage на мобильном) */
    .header__main.header__main_homepage .homepage-mobile-category-dropdown,
    body.homepage .homepage-mobile-category-dropdown {
        display: block !important;
        padding: 0 16px 12px;
        background: var(--header-bg);
        border-top: 1px solid rgba(255, 255, 255, 0.06);
    }
    .homepage-mobile-category-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        width: 100%;
        max-width: 560px;
        margin: 12px auto 0;
        padding: 12px 16px;
        font-size: 17px;
        font-weight: 600;
        color: #fff !important;
        background: var(--header-bg);
        border: none;
        border-radius: 10px;
        cursor: pointer;
        text-align: center;
        -webkit-tap-highlight-color: transparent;
    }
    .homepage-mobile-category-toggle span {
        font-size: 17px;
    }
    .homepage-mobile-category-toggle-text {
        color: #fff !important;
    }
    .homepage-mobile-category-chevron {
        width: 12px;
        height: 12px;
        margin-left: 8px;
        background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat center;
        background-size: 12px;
        transition: transform 0.2s ease;
    }
    .homepage-mobile-category-dropdown.is-open .homepage-mobile-category-chevron {
        transform: rotate(180deg);
    }
    .homepage-mobile-category-panel {
        display: none;
        max-height: 60vh;
        overflow-y: auto;
        margin-top: 8px;
        padding: 8px 0;
        background: #fff;
        border-radius: 10px;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
        -webkit-overflow-scrolling: touch;
    }
    .homepage-mobile-category-dropdown.is-open .homepage-mobile-category-panel {
        display: block;
    }
    .homepage-mobile-category-link {
        display: block;
        padding: 12px 16px;
        font-size: 15px;
        font-weight: 600;
        color: #1a1a1a;
        text-decoration: none;
        border-bottom: 1px solid #eee;
        transition: background 0.15s;
    }
    .homepage-mobile-category-link:last-child {
        border-bottom: none;
    }
    .homepage-mobile-category-link:hover,
    .homepage-mobile-category-link:focus {
        background: #f5f9fb;
    }
}
@media (max-width: 767px) {
    /* Когда открыто мобильное меню, полностью скрываем блок выбора категории,
       чтобы он не дублировался под меню */
    html.mobile-menu-open .homepage-mobile-category-dropdown,
    body.mobile-menu-open .homepage-mobile-category-dropdown {
        display: none !important;
    }
}

/* При открытой модалке регистрации/ввода (body.modal-open) скрываем поиск и выбор категории,
   чтобы они не перекрывали/мешали форме на мобильных экранах. */
@media (max-width: 767px) {
    body.modal-open .header__search-row,
    body.modal-open .homepage-mobile-category-dropdown,
    body.modal-open #homepage-mobile-category {
        display: none !important;
    }
    .popup-enter.popup-enter_active {
        position: fixed !important;
        inset: 0 !important;
        z-index: 1000010 !important;
    }
    .popup-enter.popup-enter_active .popup-enter__inner {
        max-height: calc(100dvh - 80px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) !important;
        top: calc(40px + env(safe-area-inset-top, 0px)) !important;
        transform: translate(-50%, 0) !important;
    }
}
@media (min-width: 768px) {
    .homepage-mobile-category-dropdown {
        display: none !important;
    }
}

/* --- Скрыть второе меню (вкладки категорий) на мобильном (главная: по body.homepage или по header) --- */
@media (max-width: 767px) {
    body:has(.header__main_homepage) .homepage-categories-block,
    body.homepage .homepage-categories-block {
        display: none !important;
    }
}
/* --- Главная, мобилка: явный отступ для контента под фиксированной шапкой
   (поиск + блок "Выберите категорию"), независимо от body.stripes/padding reset --- */
@media (max-width: 767px) {
    header.header__main.header__main_homepage ~ .main-site-wrapper {
        margin-top: 0 !important;
    }
}

/* --- Мобилка: компактные отступы и мельче заголовки --- */
@media (max-width: 767px) {
    /* Скрываем панель горячих ссылок (Книжный клуб, Опубликовать, Бесплатные книги, Эксклюзивы) */
    .header__hotlinks-row {
        display: none !important;
    }
    /* 5px слева и справа на главной (перебиваем header-spacing.css) */
    .main-site-wrapper:has(.homepage-block),
    .main-site-wrapper:has(.homepage-block) .content,
    .main-site-wrapper:has(.homepage-block) main .content,
    .main-site-wrapper:has(.homepage-block) #result,
    .main-site-wrapper:has(.homepage-block) .catalog-items,
    .main-site-wrapper:has(.homepage-block) .commitm,
    body.homepage .main-site-wrapper,
    body.homepage .content,
    body.homepage main .content,
    body.homepage #result,
    body.homepage .catalog-items,
    body.homepage .commitm {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
    /* Контент главной без боковых отступов */
    body.homepage .cntl,
    .cnt-wrapper:has(.homepage-block) .cntl {
        padding-top: 10px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .main-site-wrapper:has(.homepage-block) .lazy-content,
    .cnt-wrapper:has(.homepage-block) .lazy-content,
    body.homepage .lazy-content {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    .homepage-block,
    .lazy-section.homepage-block {
        margin-bottom: 4px !important;
    }
    .homepage-block .homepage-block-header {
        margin-bottom: 6px !important;
    }
    .homepage-block .homepage-block-header .txt {
        font-size: 0.95rem !important;
        padding-left: 16px;
    }
    .homepage-block .homepage-block-header .txt::before {
        height: 24px;
    }
    .homepage-block .homepage-block-header .txt::after {
        width: 10px;
    }
    body.homepage .homepage-block .homepage-block-header .section-more--header,
    .cnt-wrapper:has(.homepage-block) .homepage-block .homepage-block-header .section-more--header,
    html:has(.header__main_homepage) .homepage-block .homepage-block-header .section-more--header {
        display: none !important;
    }
    body.homepage .homepage-block .section-more--bottom,
    .cnt-wrapper:has(.homepage-block) .homepage-block .section-more--bottom,
    html:has(.header__main_homepage) .homepage-block .section-more--bottom {
        display: inline-flex !important;
        width: min(100%, 220px);
        min-height: 42px;
        margin: 12px auto 2px;
    }
    .homepage-block .intro {
        margin-bottom: 4px !important;
    }
    /* Блок с вкладками категорий — меньше отступ снизу */
    .homepage-categories-block .bestsellers-nav-widgets,
    .homepage-categories-block .lazy-content {
        margin-bottom: 4px !important;
    }
    .homepage-categories-block {
        margin-bottom: 10px !important;
    }
}

/* --- Главная: основная колонка и карусели на всю ширину до сайдбара --- */
body.homepage .cntl-wrapper,
.cnt-wrapper:has(.homepage-block) .cntl-wrapper {
    width: auto !important;
    flex: 1 1 0 !important;
    min-width: 0;
}
body.homepage .cntl,
body.homepage div.cntl,
.cnt-wrapper:has(.homepage-block) .cntl {
    width: 100% !important;
    max-width: none !important;
}
/* div.cnt, main — принудительно 100% ширины, чтобы карусели растягивались */
body.homepage div.cnt,
.cnt-wrapper:has(.homepage-block) div.cnt {
    width: 100% !important;
    max-width: 100% !important;
}
body.homepage main,
body.homepage .cntl main,
.cnt-wrapper:has(.homepage-block) main {
    width: 100% !important;
}
body.homepage .homepage-row-slider-section,
body.homepage .homepage-block,
.cnt-wrapper:has(.homepage-block) .homepage-row-slider-section,
.cnt-wrapper:has(.homepage-block) .homepage-block {
    width: 100% !important;
}
.homepage-author-activity {
    border: 1px solid #dceff0;
    background: #ffffff;
}
.homepage-author-activity .homepage-block-header .txt i {
    margin-right: 8px;
    color: #0fa6ab;
}
.homepage-author-activity__books {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 10px;
}
.homepage-author-book {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
    min-width: 0;
    padding: 12px;
    border: 1px solid #edf3f5;
    border-radius: 8px;
    background: #fbfefe;
}
.homepage-author-book__cover {
    display: block;
    width: 72px;
    height: 102px;
    overflow: hidden;
    border-radius: 6px;
    background: #f0f4f8;
}
.homepage-author-book__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.homepage-author-book__body,
.homepage-author-book__top {
    min-width: 0;
}
.homepage-author-book__top {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}
.homepage-author-book__title,
.homepage-author-contest__title {
    color: #25313d;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
}
.homepage-author-book__title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.homepage-author-book__title:hover,
.homepage-author-contest__title:hover,
.homepage-author-contest__book:hover {
    color: #0fa6ab;
}
.homepage-author-book__stats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-top: 12px;
    color: #6f7f8e;
    font-size: 0.86rem;
    line-height: 1.25;
}
.homepage-author-book__stats b {
    color: #25313d;
}
.homepage-author-activity__badge {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.15;
}
.homepage-author-activity__badge--success {
    background: #e7f7f1;
    color: #107d58;
}
.homepage-author-activity__badge--pending {
    background: #fff4dc;
    color: #9a6700;
}
.homepage-author-activity__badge--muted {
    background: #edf2f7;
    color: #607080;
}
.homepage-author-activity__badge--danger {
    background: #ffe9e7;
    color: #b23b35;
}
.homepage-author-activity__contests {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}
.homepage-author-contest {
    padding: 12px 14px;
    border: 1px solid #edf3f5;
    border-radius: 8px;
    background: #ffffff;
}
.homepage-author-contest__main {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
    min-width: 0;
}
.homepage-author-contest__book {
    min-width: 0;
    color: #6f7f8e;
    text-decoration: none;
}
.homepage-author-activity__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 14px 0;
}
.homepage-author-activity__actions .button {
    min-height: 38px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    text-decoration: none;
    color:#fff !important;
}
@media (max-width: 991px) {
    .homepage-author-activity__books {
        grid-template-columns: 1fr;
    }
}
/* --- Все карусели главной: на всю ширину до сайдбара (как «Продолжить чтение») --- */
.homepage-row-slider-wrap,
.homepage-block .lazy-content .homepage-row-slider-wrap {
    width: 100%;
    max-width: 100%;
}
.homepage-row-slider-wrap .homepage-row-slider,
.homepage-row-slider-wrap .homepage-row-slider .books-list,
.homepage-row-slider-wrap .homepage-row-slider .homepage-row-slider__inner,
.homepage-row-slider-wrap .homepage-row-slider .ovfroll,
.homepage-row-slider-wrap .owl-carousel .owl-stage-outer,
.homepage-row-slider-wrap .homepage-scroll-carousel {
    width: 100% !important;
    max-width: 100% !important;
}

/* --- Главная: «Новые завершённые книги» — фиксируем одинаковый размер обложек (не трогаем другие блоки, напр. «Лучшие произведения») --- */
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile {
    flex: 0 0 auto;
    width: 136px !important;
    min-width: 136px !important;
    max-width: 136px !important;
}
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile picture,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile picture img,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile img.shadow1 {
    width: 128px !important;
    height: 182px !important;
    max-width: 128px !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* «Новые завершённые»: карточка колонкой, подписи по центру под обложкой */
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile > .prc,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile > .prc{
    width: 100% !important;
    max-width: 136px !important;
    text-align: center !important;
    box-sizing: border-box;
}
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile .cityc,
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile .cityc a,
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile .booktc,
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile .booktc a,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile .cityc,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile .cityc a,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile .booktc,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile .booktc a{
    text-align: center !important;
    width: 100% !important;
}

/* «Новые завершённые»: у toptiletoptile обложка в .prc + .textcenter; picture { height: inherit } схлопывается без высоты родителя */
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile > .prc + .textcenter,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile > .prc + .textcenter{
    position: relative !important;
    z-index: 2 !important;
    flex-shrink: 0 !important;
    width: 128px !important;
    min-width: 128px !important;
    min-height: 182px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
}
body.homepage .homepage-block-completed-new .homepage-row-slider__inner > .toptile.toptiletoptile > .prc + .textcenter picture,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider__inner > .toptile.toptiletoptile > .prc + .textcenter picture{
    height: auto !important;
    max-height: none !important;
}

/* --- Мобилка/планшеты: унифицируем обложки в главных каруселях (чтобы не плясали размеры между блоками) --- */
@media (max-width: 991px) {
    /* «Лучшие произведения …» (mobile-версия) */
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .book-card-item,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .book-row,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .item {
        flex: 0 0 auto !important;
        width: 136px !important;
        min-width: 136px !important;
        max-width: 136px !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile picture,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile picture img,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner .toptile img.shadow1 {
        width: 128px !important;
        height: 182px !important;
        max-width: 128px !important;
        object-fit: cover !important;
        object-position: center !important;
    }
    /* Моб. карусель «Лучшие произведения»: подписи по центру под обложкой */
    body.homepage .homepage-best-works-section .homepage-row-slider__inner > .toptile.toptiletoptile{
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner > .toptile.toptiletoptile > .prc{
        width: 100% !important;
        max-width: 136px !important;
        text-align: center !important;
        box-sizing: border-box;
    }
    body.homepage .homepage-best-works-section .homepage-row-slider__inner > .toptile.toptiletoptile .cityc,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner > .toptile.toptiletoptile .cityc a,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner > .toptile.toptiletoptile .booktc,
    body.homepage .homepage-best-works-section .homepage-row-slider__inner > .toptile.toptiletoptile .booktc a{
        text-align: center !important;
        width: 100% !important;
    }

    /* «Бестселлеры» (класс homepage-block-bestsellers; ссылка «все» — /catalog/?filter=bestsellers, не /catalog/sort/…) */
    body.homepage .homepage-block-bestsellers .homepage-row-slider__inner .book-card-item,
    body.homepage .homepage-block-bestsellers .homepage-row-slider__inner .book-row,
    body.homepage .homepage-block-bestsellers .homepage-row-slider__inner .item {
        flex: 0 0 auto !important;
        width: 136px !important;
        min-width: 136px !important;
        max-width: 136px !important;
    }
    body.homepage .homepage-block-bestsellers .homepage-row-slider__inner .toptile picture,
    body.homepage .homepage-block-bestsellers .homepage-row-slider__inner .toptile picture img,
    body.homepage .homepage-block-bestsellers .homepage-row-slider__inner .toptile img.shadow1 {
        width: 128px !important;
        height: 182px !important;
        max-width: 128px !important;
        object-fit: cover !important;
        object-position: center !important;
    }

    /* Универсально: любой горизонтальный слайдер в контенте главной (не сайдбар) — одинаковая карточка/обложка */
    body.homepage .homepage-block.homepage-row-slider-section .homepage-row-slider__inner > * {
        flex: 0 0 auto !important;
        width: 136px !important;
        min-width: 136px !important;
        max-width: 136px !important;
    }
    body.homepage .homepage-block.homepage-row-slider-section .homepage-row-slider__inner > * .toptile picture,
    body.homepage .homepage-block.homepage-row-slider-section .homepage-row-slider__inner > * .toptile picture img,
    body.homepage .homepage-block.homepage-row-slider-section .homepage-row-slider__inner > * .toptile img.shadow1,
    body.homepage .homepage-block.homepage-row-slider-section .homepage-row-slider__inner > * picture,
    body.homepage .homepage-block.homepage-row-slider-section .homepage-row-slider__inner > * picture img {
        width: 128px !important;
        height: 182px !important;
        max-width: 128px !important;
        object-fit: cover !important;
        object-position: center !important;
    }

    /* Абсолютный "фикс от ходунов":
       любые горизонтальные слайдеры в контенте главной (не сайдбар) — 128×182 для обложки */
    body.homepage .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner picture,
    body.homepage .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner picture img,
    body.homepage .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner img.shadow1,
    body.homepage .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner img.lazy-media,
    body.homepage .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner img.owl-lazy {
        width: 128px !important;
        height: 182px !important;
        max-width: 128px !important;
        object-fit: cover !important;
        object-position: center !important;
    }
    body.homepage .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner picture {
        display: block !important;
        overflow: hidden;
        border-radius: 10px;
        line-height: 0;
    }

    /* Лучшие произведения (mobile): обложка — первый .textcenter после .prc (не div:first-child: это .prc). */
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .toptile > .prc + .textcenter,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .book-card-item .toptile > .prc + .textcenter {
        width: 128px !important;
        min-width: 128px !important;
        max-width: 128px !important;
        height: 182px !important;
        min-height: 182px !important;
        max-height: 182px !important;
        position: relative !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        background: #f0f4f8 !important;
        flex: 0 0 auto !important;
    }
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .toptile picture,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .toptile > div:first-child picture,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .toptile a {
        display: block !important;
        width: 128px !important;
        height: 182px !important;
        min-width: 128px !important;
        max-width: 128px !important;
        min-height: 182px !important;
        max-height: 182px !important;
        position: static !important;
        inset: auto !important;
        overflow: hidden !important;
        border-radius: 10px !important;
    }
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .toptile img,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .toptile picture img,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile img.shadow1 {
        display: block !important;
        width: 128px !important;
        height: 182px !important;
        min-width: 128px !important;
        max-width: 128px !important;
        min-height: 182px !important;
        max-height: 182px !important;
        position: static !important;
        inset: auto !important;
        opacity: 1 !important;
        visibility: visible !important;
        object-fit: cover !important;
        object-position: center !important;
    }
}

/* --- «Выбор читателей»: как слайдер Бестселлеров — один стиль карточек и обложек --- */
.homepage-row-slider-wrap:has(#recently-subscribed) .homepage-row-slider,
.homepage-block:has(#recently-subscribed) .homepage-row-slider {
    display: flex !important;
    flex-direction: column !important;
    padding-left: 12px;
    padding-right: 12px;
    padding-bottom: 8px;
}
.homepage-block:has(#recently-subscribed) #recently-subscribed {
    flex-shrink: 0;
    margin-bottom: 8px;
}
.homepage-block:has(#recently-subscribed) #recently-subscribed h3.txt {
    position: relative;
    padding-left: 18px;
    border-left: 0;
    font-size: 1.05rem;
    font-weight: 600;
    margin-bottom: 0;
}
.homepage-block:has(#recently-subscribed) #recently-subscribed h3.txt::before,
.homepage-block:has(#recently-subscribed) #recently-subscribed h3.txt::after {
    content: "";
    position: absolute;
    left: 0;
    pointer-events: none;
}
.homepage-block:has(#recently-subscribed) #recently-subscribed h3.txt::before {
    top: 50%;
    width: 3px;
    height: 32px;
    border-radius: 999px;
    background: #0fa6ab;
    transform: translateY(-50%);
}
.homepage-block:has(#recently-subscribed) #recently-subscribed h3.txt::after {
    display: none;
}
.homepage-row-slider-wrap:has(#recently-subscribed) .ovfroll,
.homepage-row-slider-wrap:has(#recently-subscribed) .owl-carousel .owl-stage-outer {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
}
.homepage-row-slider-wrap:has(#recently-subscribed) .tileroll,
.homepage-row-slider-wrap:has(#recently-subscribed) .owl-carousel .owl-stage,
.homepage-row-slider-wrap:has(#recently-subscribed) .homepage-scroll-carousel {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    min-width: max-content;
}
.homepage-row-slider-wrap:has(#recently-subscribed) .homepage-scroll-carousel {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    width: 100% !important;
}
.homepage-row-slider-wrap:has(#recently-subscribed) .tileroll .toptiletoptile,
.homepage-row-slider-wrap:has(#recently-subscribed) .tileroll .toptile1,
.homepage-row-slider-wrap:has(#recently-subscribed) .tileroll .toptile2,
.homepage-row-slider-wrap:has(#recently-subscribed) .tileroll .toptile3,
.homepage-row-slider-wrap:has(#recently-subscribed) .tileroll .toptile4,
.homepage-row-slider-wrap:has(#recently-subscribed) .owl-carousel .item,
.homepage-row-slider-wrap:has(#recently-subscribed) .owl-carousel .owl-item,
.homepage-row-slider-wrap:has(#recently-subscribed) .homepage-scroll-carousel .item {
    flex: 0 0 auto !important;
    min-width: 136px !important;
    max-width: 136px !important;
    width: 136px !important;
}
.homepage-row-slider-wrap:has(#recently-subscribed) .toptile img.shadow1,
.homepage-row-slider-wrap:has(#recently-subscribed) .owl-carousel img.shadow1,
.homepage-row-slider-wrap:has(#recently-subscribed) .homepage-scroll-carousel img.shadow1,
.homepage-block:has(#recently-subscribed) .toptile img.shadow1,
.homepage-block:has(#recently-subscribed) .owl-carousel img.shadow1,
.homepage-block:has(#recently-subscribed) .homepage-scroll-carousel img.shadow1 {
    width: 128px !important;
    height: 182px !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 10px !important;
}
.homepage-row-slider-wrap:has(#recently-subscribed) .toptile,
.homepage-block:has(#recently-subscribed) .book-card-mini .toptile {
    width: 136px !important;
    min-width: 136px !important;
    max-width: 136px !important;
}
#recently-subscribed .intro {
    margin-bottom: 8px !important;
}

/* --- «Рекомендуемые книги для вас»: карусель как Бестселлеры --- */
.read-also-carousel-block .homepage-row-slider.popular-search-books {
    overflow: visible;
}
.read-also-carousel-block .popular-search-books .item,
.read-also-carousel-block .popular-search-books .item.toptile,
.read-also-carousel-block .popular-search-books .book-card-mini {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    flex-shrink: 0;
}
.read-also-carousel-block .popular-search-books .item .textcenter picture,
.read-also-carousel-block .popular-search-books .item .textcenter img.shadow1,
.read-also-carousel-block .popular-search-books .item picture img {
    width: 128px !important;
    height: 182px !important;
    max-width: 128px !important;
    object-fit: cover !important;
    object-position: center !important;
}
.read-also-carousel-block .popular-search-books .item .textcenter:last-of-type {
    margin-top: 10px;
    padding: 0;
}
.read-also-carousel-block .popular-search-books .booktc,
.read-also-carousel-block .popular-search-books .cityc {
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 0;
}
.read-also-carousel-block .popular-search-books .booktc {
    margin-top: 0;
    margin-bottom: 6px;
}
.read-also-carousel-block .popular-search-books .booktc .lnk {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    color: #111827 !important;
}
.read-also-carousel-block .popular-search-books .booktc .lnk:hover {
    color: var(--primary-color) !important;
}

/* Mobile (≤390px): чтобы название не обрезалось и не залезало на обложку */
@media screen and (max-width: 390px) {
    body.homepage .popular-search-books .booktc {
        min-height: 48px;
    }
    body.homepage .popular-search-books .booktc .lnk {
        display: block;
        line-height: 1.2;
        min-height: 48px;
    }
}
.read-also-carousel-block .popular-search-books .cityc {
    margin-top: 0;
}
.read-also-carousel-block .popular-search-books .cityc .txt,
.read-also-carousel-block .popular-search-books .cityc a {
    font-size: 13px !important;
    line-height: 1.35 !important;
    color: #038c8c !important;
}
.read-also-carousel-block .popular-search-books .booktc a,
.read-also-carousel-block .popular-search-books .cityc a {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Слайдеры на главной: надписи (название, автор) по центру под обложкой */
.homepage-row-slider-section .book-card-mini .textcenter,
.homepage-row-slider-section .book-card-mini .booktc,
.homepage-row-slider-section .book-card-mini .cityc,
.homepage-row-slider-section .book-card-mini .booktc a,
.homepage-row-slider-section .book-card-mini .cityc a {
    text-align: center !important;
}
.homepage-row-slider-section .book-card-mini .textcenter {
    align-items: center;
}

/*
 * Мини-карточка (display_mode 1): .exclusive-pack стоит в <a> рядом с <picture>, не внутри picture.
 * Абсолютная лента цеплялась к .toptile (position: relative в new_bookinfo) и вылезала за скругление обложки.
 * Якорь и обрезка — на первом блоке с обложкой (карточки без .toptiletoptile — это другая вёрстка).
 */
.homepage-row-slider-section .book-card-mini .toptile:not(.toptiletoptile) > div:first-child {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 10px !important;
    line-height: 0;
}

/* --- «Книга дня»: размер карточек как у Бестселлеров, компактный нижний отступ --- */
.homepage-block-book-day .homepage-row-slider .book-card-mini,
.homepage-block-book-day .homepage-row-slider .book-card-mini .toptile,
.homepage-block-book-day .homepage-row-slider .books-list .item,
.homepage-block-book-day .homepage-row-slider .toptile {
    width: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    margin-bottom: 0 !important;
}

/* По запросу: добавить отступ от предыдущего блока */
body.homepage .homepage-block-book-day {
    margin-top: 20px !important;
}
.homepage-block-book-day .homepage-row-slider .book-card-mini .toptile picture,
.homepage-block-book-day .homepage-row-slider .book-card-mini .toptile img,
.homepage-block-book-day .homepage-row-slider .book-card-mini picture img {
    width: 128px !important;
    height: 182px !important;
    object-fit: cover !important;
    object-position: center !important;
}
.homepage-block-book-day .lazy-content {
    padding-bottom: 8px !important;
}
.homepage-block-book-day .intro {
    margin-bottom: 6px !important;
}

/* П.??: Иногда в «Книге дня»/«Бестселлерах» остаётся невидимость из-за lazy/карусельных классов
   (например, `.lazy-media` даёт opacity:0 до появления `.loaded`). Для этих блоков принудительно показываем картинки. */
.homepage-block-book-day img,
.homepage-block-bestsellers img {
    opacity: 1 !important;
}

/* Тот же safeguard для "Лучшие произведения месяца" и "Последние обновления":
   если lazy-класс остался на элементе, обложка всё равно должна быть видимой. */
.homepage-best-works-section img,
.homepage-block-latest-updates img {
    opacity: 1 !important;
}

/* «Новые завершённые»: ссылка «все» ведёт на ?filter=completed_new */
body.homepage .homepage-block-completed-new img,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) img {
    opacity: 1 !important;
    visibility: visible !important;
}

/* На этих секциях могли остаться проблемы со слоем/перекрытием:
   принудительно выводим обложки выше остальных элементов. */
.homepage-block-book-day .toptile picture img,
.homepage-block-bestsellers .toptile picture img,
.homepage-block-completed-new .toptile picture img,
body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .toptile picture img {
    position: relative !important;
    z-index: 10 !important;
}

/* Убираем "микро-пробелы" в бестселлерах и сбрасываем локальные margin карточек. */
.homepage-block-bestsellers .homepage-row-slider .book-row,
.homepage-block-bestsellers .homepage-row-slider .book-card-item,
.homepage-block-bestsellers .homepage-row-slider .item {
    margin: 0 !important;
}
.homepage-block-book-day .homepage-row-slider-wrap .homepage-row-slider {
    padding-bottom: 0 !important;
}
.homepage-block-book-day .homepage-row-slider .books-list,
.homepage-block-book-day .homepage-row-slider .homepage-row-slider__inner {
    align-items: flex-start !important;
}
.homepage-block-book-day .homepage-row-slider .item,
.homepage-block-book-day .homepage-row-slider .book-card-mini {
    align-self: flex-start !important;
    height: auto !important;
}

/* Бестселлеры: чуть больше "воздуха" между карточками */
body.homepage .homepage-block-bestsellers .homepage-row-slider .books-list,
body.homepage .homepage-block-bestsellers .homepage-row-slider .homepage-row-slider__inner {
    gap: 20px !important;
}

/* Бестселлеры: название и автор по центру под обложкой (мини-карточка BookInfo, display_mode=1) */
body.homepage .homepage-block-bestsellers .book-card-mini .toptile {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}
body.homepage .homepage-block-bestsellers .book-card-mini .textcenter {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}
body.homepage .homepage-block-bestsellers .book-card-mini .cityc,
body.homepage .homepage-block-bestsellers .book-card-mini .cityc a,
body.homepage .homepage-block-bestsellers .book-card-mini .booktc,
body.homepage .homepage-block-bestsellers .book-card-mini .booktc a {
    text-align: center !important;
    width: 100% !important;
    box-sizing: border-box;
}

/* Уплотняем подписи в «Книга дня», чтобы убрать слишком большой пустой зазор */
body.homepage .homepage-block-book-day .book-card-mini .textcenter {
    padding: 8px 8px 10px !important;
    gap: 4px !important;
}
body.homepage .homepage-block-book-day .book-card-mini .booktc,
body.homepage .homepage-block-book-day .book-card-mini .booktc a {
    margin: 0 !important;
    line-height: 1.35 !important;
    min-height: 0 !important;
    font-size: 13px !important;
}
body.homepage .homepage-block-book-day .book-card-mini .cityc,
body.homepage .homepage-block-book-day .book-card-mini .cityc a {
    margin: 0 !important;
    line-height: 1.35 !important;
    font-size: 13px !important;
}

/* Жёсткий фикс именно для загруженного блока «Книга дня» (после lazy-init) */
body.homepage .lazy-section.homepage-block.homepage-row-slider-section.homepage-block-book-day.loaded {
    margin-top: 20px !important;
}
body.homepage .lazy-section.homepage-block.homepage-row-slider-section.homepage-block-book-day.loaded > .lazy-content {
    padding-top: 14px !important;
    padding-bottom: 6px !important;
}

/* Убираем «воздух» внизу: ограничиваем число строк в названии/авторе и сжимаем текстовый блок */
body.homepage .lazy-section.homepage-block.homepage-row-slider-section.homepage-block-book-day.loaded .book-card-mini .textcenter {
    min-height: 0 !important;
    padding: 4px 2px 2px !important;
    gap: 2px !important;
}
body.homepage .lazy-section.homepage-block.homepage-row-slider-section.homepage-block-book-day.loaded .book-card-mini .cityc,
body.homepage .lazy-section.homepage-block.homepage-row-slider-section.homepage-block-book-day.loaded .book-card-mini .cityc a {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    overflow: hidden !important;
    line-height: 1.18 !important;
    margin: 0 !important;
}
body.homepage .lazy-section.homepage-block.homepage-row-slider-section.homepage-block-book-day.loaded .book-card-mini .booktc,
body.homepage .lazy-section.homepage-block.homepage-row-slider-section.homepage-block-book-day.loaded .book-card-mini .booktc a {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 1 !important;
    overflow: hidden !important;
    line-height: 1.18 !important;
    margin: 0 !important;
}

/* --- «Последние обновления»: размер карточек и обложек как у Бестселлеров --- */
.homepage-row-slider .book-row--compact {
    min-width: 136px !important;
    max-width: 136px !important;
    width: 136px !important;
}
.homepage-row-slider .book-row--compact .book-row__cover-link {
    max-width: none;
    width: 128px;
    margin-left: auto;
    margin-right: auto;
}
.homepage-row-slider .book-row--compact .book-row__cover-link picture,
.homepage-row-slider .book-row--compact .book-row__cover-link .book-cover,
.homepage-row-slider .book-row--compact .book-row__cover-link img {
    width: 128px !important;
    height: 182px !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
    aspect-ratio: unset !important;
    border-radius: 10px !important;
}
@media (max-width: 767px) {
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) {
        overflow: visible !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-slider-arrow {
        display: none !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider {
        overflow: visible !important;
        padding: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner {
        display: flex !important;
        flex-direction: column !important;
        gap: 0 !important;
        overflow: visible !important;
        padding: 0 14px !important;
        scroll-snap-type: none !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact {
        float: none !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > * {
        padding: 12px 0 !important;
        border-bottom: 1px solid #e8eef2 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *:last-child {
        border-bottom: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .toptile {
        display: grid !important;
        grid-template-columns: 88px minmax(0, 1fr) !important;
        gap: 0 14px !important;
        align-items: start !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        text-align: left !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .toptile > div:first-child {
        grid-column: 1 !important;
        grid-row: 1 / span 2 !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        margin: 0 !important;
        overflow: hidden !important;
        border-radius: 8px !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .textcenter {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: 2px 0 0 !important;
        gap: 6px !important;
        text-align: left !important;
        box-sizing: border-box !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile {
        display: grid !important;
        grid-template-columns: 88px minmax(0, 1fr) !important;
        gap: 0 14px !important;
        align-items: start !important;
        text-align: left !important;
        padding: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc {
        grid-column: 2 !important;
        grid-row: 3 !important;
        width: 100% !important;
        max-width: none !important;
        margin-top: 8px !important;
        text-align: left !important;
        font-size: 12px !important;
        line-height: 1.25 !important;
        color: #6b7280 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter {
        grid-column: 1 !important;
        grid-row: 1 / span 3 !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 125px !important;
        min-height: 125px !important;
        max-height: 125px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 8px !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter + .textcenter {
        grid-column: 2 !important;
        grid-row: 1 !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        padding: 2px 0 0 !important;
        margin: 0 !important;
        text-align: left !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .booktc {
        grid-column: 2 !important;
        grid-row: 2 !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 6px 0 0 !important;
        text-align: left !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini picture img,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini img.shadow1,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile picture img,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile img.shadow1 {
        display: block !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 125px !important;
        min-height: 125px !important;
        max-height: 125px !important;
        aspect-ratio: auto !important;
        object-fit: cover !important;
        object-position: center !important;
        border-radius: 8px !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact {
        display: grid !important;
        grid-template-columns: 88px minmax(0, 1fr) !important;
        gap: 0 14px !important;
        align-items: start !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link {
        grid-column: 1 !important;
        grid-row: 1 / span 3 !important;
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        margin: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link .book-cover,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link img {
        width: 88px !important;
        min-width: 88px !important;
        max-width: 88px !important;
        height: 125px !important;
        min-height: 125px !important;
        max-height: 125px !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a {
        display: -webkit-box !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        -webkit-box-orient: vertical !important;
        text-align: left !important;
        word-break: break-word !important;
        overflow-wrap: anywhere !important;
        box-sizing: border-box !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a {
        -webkit-line-clamp: 2 !important;
        font-size: 17px !important;
        line-height: 1.22 !important;
        font-weight: 700 !important;
        color: #1f2933 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a {
        -webkit-line-clamp: 1 !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
        font-weight: 400 !important;
        color: #60717c !important;
    }
}
.author_about .mark12 .intro {
    margin: 24px 0 !important;
}

/* --- «Мнение писателей и рекомендации»: как слайдер Бестселлеров --- */
body.homepage .mark12 .writers-scroll-carousel,
body.homepage .mark12 .homepage-scroll-carousel,
body.homepage .mark12 .owl-carousel,
.lazy-section .mark12 .writers-scroll-carousel,
.lazy-section .mark12 .homepage-scroll-carousel,
.author_about .mark12 .writers-scroll-carousel,
.author_about .mark12 .homepage-scroll-carousel,
.mark12 .writers-scroll-carousel,
.mark12 .homepage-scroll-carousel {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
}
body.homepage .mark12 .writers-scroll-carousel .item,
body.homepage .mark12 .writers-scroll-carousel .owl-item,
body.homepage .mark12 .writers-scroll-carousel .book-card-mini .toptile,
body.homepage .mark12 .writers-scroll-carousel div.toptile,
body.homepage .mark12 .owl-carousel .item,
body.homepage .mark12 .owl-carousel .owl-item,
.lazy-section .mark12 .writers-scroll-carousel .item,
.lazy-section .mark12 .writers-scroll-carousel .owl-item,
.lazy-section .mark12 .writers-scroll-carousel .book-card-mini .toptile,
.lazy-section .mark12 .writers-scroll-carousel div.toptile,
.mark12 .writers-scroll-carousel .item,
.mark12 .writers-scroll-carousel .owl-item,
.mark12 .writers-scroll-carousel .book-card-mini .toptile,
.mark12 .writers-scroll-carousel div.toptile,
.mark12 .owl-carousel .item,
.mark12 .owl-carousel .owl-item {
    flex: 0 0 auto !important;
    min-width: 136px !important;
    max-width: 136px !important;
    width: 136px !important;
}
body.homepage .mark12 .writers-scroll-carousel img.shadow1,
body.homepage .mark12 .writers-scroll-carousel img,
body.homepage .mark12 .homepage-scroll-carousel img.shadow1,
body.homepage .mark12 .homepage-scroll-carousel img,
body.homepage .mark12 .owl-carousel img.shadow1,
body.homepage .mark12 .owl-carousel img,
.lazy-section .mark12 .writers-scroll-carousel img.shadow1,
.lazy-section .mark12 .writers-scroll-carousel img,
.mark12 .writers-scroll-carousel img.shadow1,
.mark12 .writers-scroll-carousel img,
.mark12 .homepage-scroll-carousel img.shadow1,
.mark12 .homepage-scroll-carousel img {
    width: 128px !important;
    height: 182px !important;
    object-fit: cover !important;
    object-position: center !important;
    border-radius: 10px !important;
}
body.homepage .mark12 .writers-scroll-carousel .book-card-mini .toptile,
body.homepage .mark12 .writers-scroll-carousel div.toptile,
.lazy-section .mark12 .writers-scroll-carousel .book-card-mini .toptile,
.lazy-section .mark12 .writers-scroll-carousel div.toptile,
.mark12 .writers-scroll-carousel .book-card-mini .toptile,
.mark12 .writers-scroll-carousel div.toptile {
    width: 136px !important;
    min-width: 136px !important;
    max-width: 136px !important;
}
.mark12 .intro {
    margin-bottom: 8px !important;
}

/* Top authors: keep author book covers readable, like the writers-opinion block. */
body.homepage .author_about:has(.mark12) .mark12 .writers-scroll-carousel img.shadow1,
body.homepage .author_about:has(.mark12) .mark12 .writers-scroll-carousel img,
body.homepage .author_about:has(.mark12) .mark12 .homepage-scroll-carousel img.shadow1,
body.homepage .author_about:has(.mark12) .mark12 .homepage-scroll-carousel img,
body.page-top .author_about:has(.mark12) .mark12 .writers-scroll-carousel img.shadow1,
body.page-top .author_about:has(.mark12) .mark12 .writers-scroll-carousel img,
body.page-top .author_about:has(.mark12) .mark12 .homepage-scroll-carousel img.shadow1,
body.page-top .author_about:has(.mark12) .mark12 .homepage-scroll-carousel img {
    object-fit: contain !important;
    object-position: center !important;
    background: rgba(255, 255, 255, 0.78) !important;
}

body.homepage .author_about:has(.mark12) .mark12 .writers-scroll-carousel picture,
body.homepage .author_about:has(.mark12) .mark12 .homepage-scroll-carousel picture,
body.page-top .author_about:has(.mark12) .mark12 .writers-scroll-carousel picture,
body.page-top .author_about:has(.mark12) .mark12 .homepage-scroll-carousel picture {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.78) !important;
    border-radius: 10px !important;
}

.mark12 h3.txt {
    position: relative;
    font-size: 1.05rem !important;
    font-weight: 600;
    padding-left: 18px;
    border-left: 0;
}
.mark12 h3.txt::before,
.mark12 h3.txt::after {
    content: "";
    position: absolute;
    left: 0;
    pointer-events: none;
}
.mark12 h3.txt::before {
    top: 50%;
    width: 3px;
    height: 32px;
    border-radius: 999px;
    background: #0fa6ab;
    transform: translateY(-50%);
}
.mark12 h3.txt::after {
    display: none;
}

/* Десктоп: нормальный вертикальный ритм между «Мнение писателей» и «Книга дня» */
@media (min-width: 992px) {
    body.homepage .homepage-block:has(.mark12) {
        margin-bottom: 24px !important;
    }
    body.homepage .homepage-block-book-day {
        margin-top: 0 !important;
    }
}

/* Десктоп: «Книга дня» и карусель «Лучшие произведения» (моб. вёрстка) — 128x182. Десктоп-сетка — отдельные правила у .homepage-grid-wrap */
@media (min-width: 992px) {
    body.homepage .homepage-block-book-day .homepage-row-slider__inner > *,
    body.homepage .homepage-best-works-section.homepage-grid-section .homepage-best-works__mobile .homepage-row-slider__inner > * {
        width: 136px !important;
        min-width: 136px !important;
        max-width: 136px !important;
    }

    body.homepage .homepage-block-book-day .homepage-row-slider__inner .toptile,
    body.homepage .homepage-best-works-section.homepage-grid-section .homepage-best-works__mobile .homepage-row-slider__inner .toptile {
        width: 128px !important;
        min-width: 128px !important;
        max-width: 128px !important;
        margin-bottom: 0 !important;
    }

    body.homepage .homepage-block-book-day .homepage-row-slider__inner .toptile picture,
    body.homepage .homepage-block-book-day .homepage-row-slider__inner .toptile picture img,
    body.homepage .homepage-block-book-day .homepage-row-slider__inner .toptile img.shadow1,
    body.homepage .homepage-best-works-section.homepage-grid-section .homepage-best-works__mobile .homepage-row-slider__inner .toptile picture,
    body.homepage .homepage-best-works-section.homepage-grid-section .homepage-best-works__mobile .homepage-row-slider__inner .toptile picture img,
    body.homepage .homepage-best-works-section.homepage-grid-section .homepage-best-works__mobile .homepage-row-slider__inner .toptile img.shadow1 {
        width: 128px !important;
        height: 182px !important;
        min-width: 128px !important;
        min-height: 182px !important;
        max-width: 128px !important;
        max-height: 182px !important;
        display: block !important;
        object-fit: cover !important;
        object-position: center !important;
    }
}

/* --- П.7, П.13: доступность и микро-UX — стрелки карусели, плавность --- */
.homepage-slider-arrow:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
    border-radius: 4px;
}
.homepage-slider-arrow:hover:not(:disabled) {
    opacity: 1;
}
.homepage-block .lazy-content {
    transition: box-shadow 0.2s ease;
}

/* --- П.7: убрать «олдскул» горизонтальную полосу прокрутки — скрыть везде на главной --- */
.homepage-categories-block .bestsellers-nav-widgets::-webkit-scrollbar,
.mark12 .writers-scroll-carousel::-webkit-scrollbar,
.mark12 .writers-scroll-carousel .owl-stage-outer::-webkit-scrollbar,
.mark12 .homepage-scroll-carousel::-webkit-scrollbar,
.mark12 .owl-carousel::-webkit-scrollbar,
.mark12 .owl-carousel .owl-stage-outer::-webkit-scrollbar,
#recently-subscribed .owl-carousel::-webkit-scrollbar,
#recently-subscribed .owl-carousel .owl-stage-outer::-webkit-scrollbar,
#recently-subscribed .homepage-scroll-carousel::-webkit-scrollbar,
.homepage-block .owl-carousel::-webkit-scrollbar,
.homepage-block .owl-carousel .owl-stage-outer::-webkit-scrollbar,
.homepage-block .homepage-scroll-carousel::-webkit-scrollbar {
    display: none !important;
    height: 0 !important;
}
.homepage-categories-block .bestsellers-nav-widgets,
.mark12 .writers-scroll-carousel,
.mark12 .homepage-scroll-carousel,
.mark12 .owl-carousel .owl-stage-outer,
#recently-subscribed .owl-carousel .owl-stage-outer,
#recently-subscribed .homepage-scroll-carousel {
    scrollbar-width: none !important;
}

/* П.14: в блоке «Продолжить чтение» один заголовок — из homepage-block-header; дублирующий h3 внутри скрываем */
#recently-subscribed-section #recently-subscribed h3.txt {
    display: none;
}

/* --- Монетизация: блок скидок и mid-page CTA --- */
.homepage-block-sale .lazy-content {
    border: 1px solid rgba(255, 107, 44, 0.28);
    background: linear-gradient(180deg, #fff9f5 0%, #fff 100%);
    box-shadow: 0 8px 24px rgba(255, 107, 44, 0.08);
}
.homepage-block-sale .txt .percent-icon,
.homepage-block-sale .txt {
    color: #c2410c;
}
.homepage-monetization-cta__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
    padding: 22px 24px !important;
    border: 1px solid rgba(15, 166, 171, 0.22);
    background: linear-gradient(135deg, #f2fbfb 0%, #fff 100%);
    border-radius: 12px;
}
.homepage-monetization-cta__copy {
    flex: 1 1 280px;
    min-width: 0;
}
.homepage-monetization-cta__copy .txt {
    margin-bottom: 6px;
}
.homepage-monetization-cta__text {
    margin: 0;
}
.homepage-monetization-cta__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.homepage-monetization-cta__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 20px;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    border: 1px solid transparent;
    text-decoration: none;
}
.homepage-monetization-cta__btn--primary {
    background: #0fa6ab;
    color: #fff !important;
    border-color: #0fa6ab;
}
.homepage-monetization-cta__btn--primary:hover {
    background: #0b8f93;
}
.homepage-monetization-cta__btn--secondary {
    background: #fff;
    color: #0b7f82 !important;
    border-color: #0fa6ab;
}
.homepage-monetization-cta__btn--secondary:hover {
    background: #eefbfb;
}
.homepage-monetization-cta__link {
    color: #037979 !important;
    font-weight: 700;
    text-decoration: none !important;
    padding: 8px 4px;
}
@media (max-width: 767px) {
    .homepage-monetization-cta__inner {
        padding: 18px 16px !important;
    }
    .homepage-monetization-cta__actions {
        width: 100%;
    }
    .homepage-monetization-cta__btn,
    .homepage-monetization-cta__link {
        width: 100%;
        justify-content: center;
    }
}

/* --- П.14: SEO-блок над футером (короткий текст + ссылки на жанры/каталог) --- */
.homepage-seo-block {
    margin-top: 32px;
    padding: 24px 0;
    border-top: 1px solid #e2e8f0;
    background: #f8fafc;
    border-radius: 10px;
}
.homepage-seo-block__inner {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 16px;
}
.homepage-seo-block__text {
    font-size: 0.9375rem;
    color: #5a6573;
    line-height: 1.5;
    margin: 0 0 16px;
}
.homepage-seo-block__links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 16px;
}
.homepage-seo-block__links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 999px;
    border: 1px solid #d4dde7;
    background: #ffffff;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.2;
    color: #334155;
    text-decoration: none;
    transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.homepage-seo-block__links a:hover {
    color: var(--primary-color);
    border-color: var(--primary-color);
    background: rgba(15, 166, 171, 0.1);
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}
.homepage-seo-block__links a:focus-visible {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}
@media (max-width: 767px) {
    .homepage-seo-block {
        margin-left: 0;
        margin-right: 0;
        padding: 20px 12px;
    }
    /* Заголовок "Читать электронные книги онлайн" по центру на мобильной */
    body.homepage .homepage-seo-block h3.txt {
        text-align: center;
    }
    .homepage-seo-block__links a {
        min-height: 38px;
        padding: 8px 12px;
    }
}
body.homepage .author_about:has(.mark12) .lazy-content,
body.page-top .author_about:has(.mark12) .lazy-content,
body.homepage .homepage-block-book-day > .lazy-content,
body.page-top .homepage-block-book-day > .lazy-content,
body.homepage .homepage-block-contests > .lazy-content,
body.page-top .homepage-block-contests > .lazy-content {
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06) !important;
}
body.homepage .mark12,
body.page-top .mark12 {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
}
body.homepage .author_about:has(.mark12) .mark12,
body.page-top .author_about:has(.mark12) .mark12 {
    padding: 20px 24px 24px !important;
    box-sizing: border-box;
}
@media (max-width: 767px) {
    body.homepage .author_about:has(.mark12) .mark12,
    body.page-top .author_about:has(.mark12) .mark12 {
        padding: 16px 14px 18px !important;
    }
}
body.homepage .homepage-block .homepage-block-header .txt,
body.page-top .homepage-block .homepage-block-header .txt,
body.homepage .homepage-block > .lazy-content > h3.txt,
body.page-top .homepage-block > .lazy-content > h3.txt,
body.homepage .homepage-contests-block__title,
body.page-top .homepage-contests-block__title,
body.homepage .mark12 h3.txt,
body.page-top .mark12 h3.txt {
    text-align: left !important;
}
body.homepage .homepage-block .intro,
body.page-top .homepage-block .intro,
body.homepage .homepage-contests-block__intro,
body.page-top .homepage-contests-block__intro,
body.homepage .mark12 .intro,
body.page-top .mark12 .intro {
    text-align: left !important;
}
body.homepage .homepage-block .textcenter,
body.page-top .homepage-block .textcenter,
body.homepage .mark12 .textcenter,
body.page-top .mark12 .textcenter {
    align-items: flex-start !important;
    text-align: left !important;
}
body.homepage .homepage-block .textcenter .booktc,
body.homepage .homepage-block .textcenter .cityc,
body.homepage .homepage-block .textcenter .booktc a,
body.homepage .homepage-block .textcenter .cityc a,
body.homepage .homepage-block .textcenter .cityc a.txt,
body.page-top .homepage-block .textcenter .booktc,
body.page-top .homepage-block .textcenter .cityc,
body.page-top .homepage-block .textcenter .booktc a,
body.page-top .homepage-block .textcenter .cityc a,
body.page-top .homepage-block .textcenter .cityc a.txt,
body.homepage .mark12 .textcenter .booktc,
body.homepage .mark12 .textcenter .cityc,
body.homepage .mark12 .textcenter .booktc a,
body.homepage .mark12 .textcenter .cityc a,
body.homepage .mark12 .textcenter .cityc a.txt,
body.page-top .mark12 .textcenter .booktc,
body.page-top .mark12 .textcenter .cityc,
body.page-top .mark12 .textcenter .booktc a,
body.page-top .mark12 .textcenter .cityc a,
body.page-top .mark12 .textcenter .cityc a.txt {
    width: 100%;
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-content: flex-start !important;
}
body.homepage .homepage-contests-block,
body.page-top .homepage-contests-block {
    position: relative;
    overflow: visible;
    background: #fff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 12px !important;
    padding: 20px 24px 28px !important;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.06) !important;
}
body.homepage .homepage-contests-block::before,
body.homepage .homepage-contests-block::after,
body.page-top .homepage-contests-block::before,
body.page-top .homepage-contests-block::after {
    content: none !important;
    display: none !important;
}
body.homepage .homepage-contests-block__title,
body.page-top .homepage-contests-block__title {
    display: flex !important;
    align-items: center;
    gap: 8px;
    margin: 0 0 8px !important;
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    color: #111827 !important;
}
body.homepage .homepage-contests-block__title .fa-trophy,
body.page-top .homepage-contests-block__title .fa-trophy {
    color: #0fa6ab !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    animation: none !important;
}
body.homepage .homepage-contest-card,
body.page-top .homepage-contest-card {
    align-items: flex-start !important;
    width: 128px;
    border: 1px solid #e5e7eb !important;
    background: #fff !important;
    box-shadow: 0 1px 4px rgba(15, 23, 42, 0.04) !important;
}
body.homepage .homepage-contest-card:hover,
body.page-top .homepage-contest-card:hover {
    border-color: #cbd5e1 !important;
    box-shadow: 0 6px 14px rgba(15, 23, 42, 0.1) !important;
    transform: translateY(-2px);
}
body.homepage .homepage-contest-card__img-wrap,
body.page-top .homepage-contest-card__img-wrap {
    border: 1px solid #e5e7eb !important;
}
body.homepage .homepage-contest-card__title,
body.page-top .homepage-contest-card__title {
    width: 100%;
    text-align: left !important;
    color: #1f2937 !important;
}
body.homepage .homepage-contests-block__btn,
body.page-top .homepage-contests-block__btn {
    margin: 18px 0 0 !important;
}
body.homepage .homepage-block-contests,
body.page-top .homepage-block-contests {
    position: relative;
    z-index: 1;
    clear: both;
    margin-bottom: 20px !important;
}
body.homepage .homepage-duels-widget,
body.page-top .homepage-duels-widget {
    position: relative;
    z-index: 0;
    clear: both;
}
/* --- Главная: карточки на мобильной — как в поиске (белые с тенью, обложка 90px слева) --- */
@media (max-width: 767px) {
    body.homepage .homepage-contests-block__cards,
    .main-site-wrapper:has(.homepage-block) .homepage-contests-block__cards {
        display: flex !important;
        gap: 10px !important;
    }
    body.homepage .book-card-item.lazy-section,
    body.homepage section.book-card-item.lazy-section,
    body.homepage .commitm.lazy-section,
    .main-site-wrapper:has(.homepage-block) .book-card-item.lazy-section,
    .main-site-wrapper:has(.homepage-block) section.book-card-item.lazy-section,
    .main-site-wrapper:has(.homepage-block) .commitm.lazy-section {
        border: 1px solid #e5e7eb !important;
        border-radius: 12px !important;
        padding: 16px !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
        margin-bottom: 10px !important;
    }
    body.homepage .book-card-item .commitm,
    body.homepage .commitm .commitm,
    .main-site-wrapper:has(.homepage-block) .book-card-item .commitm {
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper,
    body.homepage .commitm .book-card-layout-wrapper,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper {
        display: grid !important;
        grid-template-columns: 112px minmax(0, 1fr) !important;
        gap: 12px !important;
        align-items: start !important;
        padding: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper > .w300b,
    body.homepage .book-card-item .book-card-layout-wrapper > .seriaclass,
    body.homepage .book-card-item .book-card-layout-wrapper > div.seriaclass1,
    body.homepage .commitm .book-card-layout-wrapper > .w300b,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper > .w300b,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper > .seriaclass,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper > .w300b {
        grid-column: 1 !important;
        grid-row: 1 / -1 !important;
        width: 112px !important;
        max-width: 112px !important;
        min-width: 112px !important;
        margin: 0 !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1),
    body.homepage .commitm .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1),
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1),
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1) {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: auto !important;
        box-sizing: border-box !important;
    }
    body.homepage .book-card-item .w300b picture,
    body.homepage .book-card-item .w300b .relat,
    body.homepage .commitm .w300b picture,
    body.homepage .commitm .w300b .relat,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b picture,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b .relat,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b picture,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b .relat {
        width: 112px !important;
        max-width: 112px !important;
    }
    body.homepage .book-card-item .w300b picture img,
    body.homepage .commitm .w300b picture img,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b picture img,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b picture img {
        max-width: 112px !important;
        width: 112px !important;
        aspect-ratio: 200/284 !important;
        object-fit: cover !important;
    }
    body.homepage .book-card-item .w300b picture,
    body.homepage .commitm .w300b picture,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b picture,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b picture {
        width: 112px !important;
        max-width: 112px !important;
        border: 2px solid #0fa6ab !important;
        border-radius: 10px !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper .booktc,
    body.homepage .book-card-item .book-card-layout-wrapper .cityc,
    body.homepage .book-card-item .book-card-layout-wrapper .booktc a,
    body.homepage .book-card-item .book-card-layout-wrapper .cityc a,
    body.homepage .commitm .book-card-layout-wrapper .booktc,
    body.homepage .commitm .book-card-layout-wrapper .cityc,
    body.homepage .commitm .book-card-layout-wrapper .booktc a,
    body.homepage .commitm .book-card-layout-wrapper .cityc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .booktc,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .cityc,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .booktc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .cityc a {
        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-align: left !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: auto !important;
        max-width: 100% !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper .booktc,
    body.homepage .book-card-item .book-card-layout-wrapper .booktc a,
    body.homepage .commitm .book-card-layout-wrapper .booktc,
    body.homepage .commitm .book-card-layout-wrapper .booktc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .booktc,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .booktc a {
        -webkit-line-clamp: 3 !important;
        line-height: 1.18 !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper .cityc,
    body.homepage .book-card-item .book-card-layout-wrapper .cityc a,
    body.homepage .commitm .book-card-layout-wrapper .cityc,
    body.homepage .commitm .book-card-layout-wrapper .cityc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .cityc,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .cityc a {
        -webkit-line-clamp: 2 !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper .synopsis,
    body.homepage .commitm .book-card-layout-wrapper .synopsis,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .synopsis,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .synopsis {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 4px 0 0 !important;
    }
    body.homepage .book-card-item .book-card-layout-wrapper .promo_book,
    body.homepage .commitm .book-card-layout-wrapper .promo_book,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .promo_book,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .promo_book {
        display: -webkit-box !important;
        -webkit-line-clamp: 4 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-align: left !important;
        white-space: normal !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: auto !important;
    }
    /* Для главной — убрать min-width у display-mode-2 (в new_bookinfo.css задано 140px) */
    body.homepage .book-card-item.display-mode-2 .w300b,
    .main-site-wrapper:has(.homepage-block) .book-card-item.display-mode-2 .w300b {
        min-width: unset !important;
    }

    body.homepage .homepage-block-sale .book-card-item .book-card-layout-wrapper,
    body.homepage .homepage-block-sale .commitm .book-card-layout-wrapper,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-item .book-card-layout-wrapper,
    html:has(.header__main_homepage) .homepage-block-sale .commitm .book-card-layout-wrapper {
        grid-template-columns: minmax(0, 1fr) clamp(118px, 32vw, 148px) !important;
        column-gap: 14px !important;
    }

    body.homepage .homepage-block-sale .book-card-item .book-card-layout-wrapper > .w300b,
    body.homepage .homepage-block-sale .book-card-item .book-card-layout-wrapper > .seriaclass,
    body.homepage .homepage-block-sale .book-card-item .book-card-layout-wrapper > div.seriaclass1,
    body.homepage .homepage-block-sale .commitm .book-card-layout-wrapper > .w300b,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-item .book-card-layout-wrapper > .w300b,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-item .book-card-layout-wrapper > .seriaclass,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-item .book-card-layout-wrapper > div.seriaclass1,
    html:has(.header__main_homepage) .homepage-block-sale .commitm .book-card-layout-wrapper > .w300b {
        grid-column: 2 !important;
        grid-row: 1 / span 4 !important;
        width: clamp(118px, 32vw, 148px) !important;
        min-width: clamp(118px, 32vw, 148px) !important;
        max-width: clamp(118px, 32vw, 148px) !important;
    }

    body.homepage .homepage-block-sale .book-card-item .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1),
    body.homepage .homepage-block-sale .commitm .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1),
    html:has(.header__main_homepage) .homepage-block-sale .book-card-item .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1),
    html:has(.header__main_homepage) .homepage-block-sale .commitm .book-card-layout-wrapper > :not(.w300b):not(.seriaclass):not(.seriaclass1) {
        grid-column: 1 !important;
        min-width: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.homepage .homepage-block-sale .book-card-layout-wrapper .booktc,
    body.homepage .homepage-block-sale .book-card-layout-wrapper .booktc a,
    body.homepage .homepage-block-sale .book-card-layout-wrapper .cityc,
    body.homepage .homepage-block-sale .book-card-layout-wrapper .cityc a,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-layout-wrapper .booktc,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-layout-wrapper .booktc a,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-layout-wrapper .cityc,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-layout-wrapper .cityc a {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
    }

    body.homepage .homepage-block-sale .book-card-layout-wrapper .cityc,
    html:has(.header__main_homepage) .homepage-block-sale .book-card-layout-wrapper .cityc {
        margin-top: 8px !important;
    }

    /* «Эксклюзив» на мобильной — компактные размеры */
    body.homepage .book-card-item .exclusive-pack::before,
    body.homepage .book-card-item .exclusive::before,
    .main-site-wrapper:has(.homepage-block) .book-card-item .exclusive-pack::before,
    .main-site-wrapper:has(.homepage-block) .book-card-item .exclusive::before {
        top: 14px !important;
        right: -19px !important;
        width: 80px !important;
        padding: 0 6px 4px 6px !important;
        font-size: 6px !important;
        height: 14px !important;
    }
    .bookinfo .w300b .relat .exclusive-pack::before,
    .bookinfo .w300b .relat .exclusive::before,
    .commitm .w300b .relat .exclusive-pack::before,
    .commitm .w300b .relat .exclusive::before,
    #result .item_card .relat .exclusive-pack::before,
    #result .item_card .relat .exclusive::before {
        top: 14px !important;
        right: -19px !important;
        width: 80px !important;
        padding: 0 6px 4px 6px !important;
        font-size: 6px !important;
        height: 14px !important;
    }
    body.homepage .book-card-item .w300b picture:has(.exclusive),
    body.homepage .book-card-item .w300b picture:has(.exclusive-pack),
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b picture:has(.exclusive),
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b picture:has(.exclusive-pack) {
        overflow: hidden !important;
    }
}

@media (max-width: 991px) {
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider .books-list.homepage-row-slider__inner,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider .homepage-row-slider__inner {
        align-items: flex-start !important;
        align-content: flex-start !important;
    }

    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > * {
        align-self: flex-start !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 4px !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        align-self: flex-start !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .prc + .textcenter,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .prc + .textcenter + .textcenter {
        position: static !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        text-align: center !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
    }

    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .textcenter .cityc {
        margin-top: 4px !important;
        margin-bottom: 0 !important;
    }

    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .booktc {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        min-height: 0 !important;
        flex: 0 0 auto !important;
        align-self: center !important;
    }

    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .textcenter,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .cityc,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .booktc,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .textcenter .cityc,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .booktc a,
    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile > .textcenter .cityc a {
        position: static !important;
        inset: auto !important;
        top: auto !important;
        bottom: auto !important;
        left: auto !important;
        right: auto !important;
        transform: none !important;
        margin: 0 !important;
        padding: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        text-align: center !important;
        justify-content: center !important;
        align-items: center !important;
        align-content: center !important;
    }

    body.homepage .homepage-best-works-section .homepage-best-works__mobile .homepage-row-slider__inner > .toptile.toptiletoptile {
        padding-bottom: 0 !important;
    }
}

/*
 * Десктоп-сетка «Лучшие произведения месяца» (.homepage-grid-wrap), а не карусель (.homepage-row-slider__inner).
 * Раньше flex/размеры picture были только у карусели — в сетке карточка тянулась на ширину колонки (~216px), обложка 150px «прилипала» влево.
 * Плюс сброс float с site.css (div.toptile { float:left }).
 */
@media (min-width: 992px) {
    /* toptile — не прямой ребёнок .homepage-grid-wrap: между ними .books-list (display:contents) */
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .books-list.homepage-row-slider__inner > .toptile.toptiletoptile,
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile {
        float: none !important;
        clear: both !important;
        width: 150px !important;
        max-width: 150px !important;
        min-width: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        justify-self: center !important;
        align-self: start !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        box-sizing: border-box !important;
        position: relative !important;
    }

    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc {
        position: static !important;
        float: none !important;
        width: 100% !important;
        max-width: 150px !important;
        align-self: center !important;
        box-sizing: border-box !important;
    }

    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter {
        position: relative !important;
        float: none !important;
        left: auto !important;
        top: auto !important;
        bottom: auto !important;
        right: auto !important;
        inset: auto !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
        width: 150px !important;
        max-width: 100% !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        box-sizing: border-box !important;
        z-index: 2 !important;
    }

    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter > a.txt {
        display: block !important;
        width: 150px !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding: 0 !important;
        line-height: 0 !important;
        position: relative !important;
        float: none !important;
    }

    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter picture {
        display: block !important;
        width: 150px !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        aspect-ratio: 2 / 3 !important;
        margin-left: auto !important;
        margin-right: auto !important;
        position: relative !important;
        overflow: hidden !important;
        border-radius: 12px !important;
        line-height: 0 !important;
    }

    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter picture img.shadow1,
    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter img {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
        max-height: none !important;
        object-fit: cover !important;
        object-position: center center !important;
        display: block !important;
    }

    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .textcenter[style*="padding-bottom"] {
        width: 100% !important;
        max-width: 150px !important;
        align-self: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    .homepage-best-works-section.homepage-grid-section .homepage-best-works__desktop .homepage-grid-wrap .toptile.toptiletoptile > .booktc {
        width: 100% !important;
        max-width: 150px !important;
        align-self: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap,
.cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    max-width: 980px !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-item,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-row,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .item,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile {
    max-width: 210px !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-mini .toptile > div:first-child {
    max-width: 210px !important;
    width: 100% !important;
    aspect-ratio: 2 / 3 !important;
}
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .booktc a,
body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .cityc a {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    line-height: inherit !important;
}
@media (max-width: 991px) {
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap,
    .cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        max-width: 480px !important;
    }
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-card-item,
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .book-row,
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .item,
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 200px !important;
    }
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter,
    .cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter {
        width: 100% !important;
        max-width: 200px !important;
        min-height: 0 !important;
        aspect-ratio: 2 / 3 !important;
        position: relative !important;
        overflow: hidden !important;
        flex: 0 0 auto !important;
    }
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter a,
    .cnt-wrapper:has(.homepage-featured-books-section) .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile.toptiletoptile > .prc + .textcenter a {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        position: absolute !important;
        inset: 0 !important;
    }
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile picture,
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile picture img,
    body.homepage .homepage-featured-books-section.homepage-grid-section .homepage-grid-wrap .toptile img.shadow1 {
        width: 100% !important;
        height: 100% !important;
        max-width: none !important;
    }
}
.book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack),
.book-card-mini .toptile > div:first-child > a:has(> .exclusive),
.toptiletoptile .textcenter > a:has(> .exclusive-pack),
.toptiletoptile .textcenter > a:has(> .exclusive) {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0 !important;
    overflow: visible !important;
    line-height: normal !important;
}
.book-card-mini .toptile > div:first-child > a > .exclusive-pack,
.book-card-mini .toptile > div:first-child > a > .exclusive,
.toptiletoptile .textcenter > a > .exclusive-pack,
.toptiletoptile .textcenter > a > .exclusive {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 0 -1px 0 !important;
    padding: 0 !important;
    background: none !important;
    background-image: none !important;
    border: 0 !important;
    overflow: visible !important;
    z-index: 2 !important;
}
.book-card-mini .toptile > div:first-child > a > .exclusive-pack::before,
.book-card-mini .toptile > div:first-child > a > .exclusive::before,
.toptiletoptile .textcenter > a > .exclusive-pack::before,
.toptiletoptile .textcenter > a > .exclusive::before {
    content: 'ЭКСКЛЮЗИВ' !important;
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 82px !important;
    max-width: 100% !important;
    padding: 4px 9px 3px !important;
    box-sizing: border-box !important;
    border-radius: 5px 5px 0 0 !important;
    background: #5f7fd6 !important;
    box-shadow: none !important;
    color: #fff !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    transform: none !important;
}
@media (max-width: 767px) {
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) {
        overflow: hidden !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider {
        overflow: hidden !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: 14px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding: 0 12px 8px !important;
        box-sizing: border-box !important;
        scroll-snap-type: x proximity !important;
        -webkit-overflow-scrolling: touch;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact {
        float: none !important;
        flex: 0 0 96px !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        box-sizing: border-box !important;
        scroll-snap-align: start;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .toptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
        text-align: left !important;
        background: transparent !important;
        box-shadow: none !important;
        border: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .toptile > div:first-child,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link {
        position: relative !important;
        inset: auto !important;
        display: block !important;
        flex: 0 0 auto !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
        height: 136px !important;
        min-height: 136px !important;
        max-height: 136px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 8px !important;
        line-height: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture img,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link .book-cover,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link img {
        display: block !important;
        width: 96px !important;
        min-width: 96px !important;
        max-width: 96px !important;
        height: 136px !important;
        min-height: 136px !important;
        max-height: 136px !important;
        aspect-ratio: auto !important;
        object-fit: cover !important;
        object-position: center !important;
        border-radius: 8px !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter + .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .textcenter {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 3px !important;
        width: 96px !important;
        min-width: 0 !important;
        max-width: 96px !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a {
        display: -webkit-box !important;
        width: 96px !important;
        max-width: 96px !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
        text-overflow: ellipsis !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        -webkit-box-orient: vertical !important;
        box-sizing: border-box !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a {
        -webkit-line-clamp: 2 !important;
        font-size: 12px !important;
        line-height: 1.25 !important;
        font-weight: 600 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a {
        -webkit-line-clamp: 1 !important;
        font-size: 11px !important;
        line-height: 1.25 !important;
        font-weight: 400 !important;
    }
}
@media (max-width: 767px) {
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > .item,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > .book-card-mini,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > .toptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > .toptiletoptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > .book-row--compact {
        position: relative !important;
        flex: 0 0 104px !important;
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .toptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        overflow: visible !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .toptile > div:first-child,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link {
        position: relative !important;
        inset: auto !important;
        display: block !important;
        flex: 0 0 148px !important;
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: 148px !important;
        min-height: 148px !important;
        max-height: 148px !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        border-radius: 8px !important;
        line-height: 0 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini picture img,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini img.shadow1,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile picture img,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile img.shadow1,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link .book-cover,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .book-row__cover-link img {
        display: block !important;
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: 148px !important;
        min-height: 148px !important;
        max-height: 148px !important;
        object-fit: cover !important;
        object-position: center !important;
        border-radius: 8px !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter + .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .textcenter {
        position: static !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 3px !important;
        flex: 0 0 auto !important;
        width: 104px !important;
        min-width: 0 !important;
        max-width: 104px !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
        transform: none !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .booktc {
        position: static !important;
        display: -webkit-box !important;
        width: 104px !important;
        min-width: 0 !important;
        max-width: 104px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        text-align: left !important;
        text-overflow: ellipsis !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        -webkit-box-orient: vertical !important;
        box-sizing: border-box !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a {
        -webkit-line-clamp: 2 !important;
        font-size: 12px !important;
        line-height: 1.25 !important;
        font-weight: 600 !important;
    }
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .booktc {
        -webkit-line-clamp: 1 !important;
        font-size: 11px !important;
        line-height: 1.25 !important;
        font-weight: 400 !important;
    }
}

/* Mobile public UI regression recovery, 2026-06-25.
   The homepage class is not guaranteed on all public entry paths, so mirror the
   final carousel fixes through the stable homepage markers too. */
@media (max-width: 767px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    body.homepage div.cnt-wrapper,
    .cnt-wrapper:has(.homepage-block),
    html:has(.header__main_homepage) div.cnt-wrapper {
        width: 100% !important;
        max-width: 100vw !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }

    body.homepage div.cnt-wrapper .cntl-wrapper,
    .cnt-wrapper:has(.homepage-block) .cntl-wrapper,
    html:has(.header__main_homepage) div.cnt-wrapper .cntl-wrapper,
    body.homepage div.cnt-wrapper .cntl,
    .cnt-wrapper:has(.homepage-block) .cntl,
    html:has(.header__main_homepage) div.cnt-wrapper .cntl {
        width: 100% !important;
        max-width: 100vw !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
        overflow-x: hidden !important;
    }

    .cnt-wrapper:has(.homepage-block) .homepage-block,
    html:has(.header__main_homepage) .homepage-block {
        width: calc(100% - 28px) !important;
        max-width: 100% !important;
        margin-left: 14px !important;
        margin-right: 14px !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap),
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap),
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) {
        overflow: hidden !important;
        width: 100% !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        padding: 0 0 8px !important;
        scroll-snap-type: x proximity !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: 16px !important;
        overflow: visible !important;
        padding: 0 8px !important;
        scroll-snap-type: x proximity !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact {
        float: none !important;
        flex: 0 0 112px !important;
        width: 112px !important;
        min-width: 112px !important;
        max-width: 112px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border-bottom: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 6px !important;
        scroll-snap-align: start;
        box-sizing: border-box !important;
        text-align: left !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture img,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.lazy-media,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row__cover-link,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row__cover-link img,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture img,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.lazy-media,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row__cover-link,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row__cover-link img,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture img,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.lazy-media,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row__cover-link,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row__cover-link img {
        display: block !important;
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: 148px !important;
        min-height: 148px !important;
        max-height: 148px !important;
        object-fit: cover !important;
        object-position: center !important;
        border-radius: 8px !important;
        aspect-ratio: auto !important;
    }

    body.homepage .homepage-row-slider-section .homepage-scroll-carousel .book-card-mini,
    body.homepage .homepage-row-slider-section .homepage-scroll-carousel .item,
    body.homepage .homepage-row-slider-section .homepage-scroll-carousel .owl-item,
    body.homepage .homepage-row-slider-section .owl-carousel .book-card-mini,
    body.homepage .homepage-row-slider-section .owl-carousel .item,
    body.homepage .homepage-row-slider-section .owl-carousel .owl-item,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-scroll-carousel .book-card-mini,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-scroll-carousel .item,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-scroll-carousel .owl-item,
    html:has(.header__main_homepage) .homepage-row-slider-section .owl-carousel .book-card-mini,
    html:has(.header__main_homepage) .homepage-row-slider-section .owl-carousel .item,
    html:has(.header__main_homepage) .homepage-row-slider-section .owl-carousel .owl-item {
        float: none !important;
        flex: 0 0 112px !important;
        width: 112px !important;
        min-width: 112px !important;
        max-width: 112px !important;
        align-self: flex-start !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-scroll-carousel .book-card-mini .toptile,
    body.homepage .homepage-row-slider-section .homepage-scroll-carousel .toptile,
    body.homepage .homepage-row-slider-section .owl-carousel .book-card-mini .toptile,
    body.homepage .homepage-row-slider-section .owl-carousel .toptile,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-scroll-carousel .book-card-mini .toptile,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-scroll-carousel .toptile,
    html:has(.header__main_homepage) .homepage-row-slider-section .owl-carousel .book-card-mini .toptile,
    html:has(.header__main_homepage) .homepage-row-slider-section .owl-carousel .toptile {
        width: 112px !important;
        min-width: 112px !important;
        max-width: 112px !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 6px !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child,
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > .textcenter:first-child,
    body.homepage .homepage-row-slider-section .toptiletoptile > .prc + .textcenter,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > .textcenter:first-child,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile > .prc + .textcenter {
        flex: 0 0 174px !important;
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: 174px !important;
        min-height: 174px !important;
        max-height: 174px !important;
        margin: 0 auto !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        justify-content: flex-start !important;
        overflow: visible !important;
        position: relative !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack),
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive),
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack),
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive),
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack),
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive),
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack),
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive) {
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: 174px !important;
        min-height: 174px !important;
        max-height: 174px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        overflow: visible !important;
        transform: none !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack,
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive {
        flex: 0 0 22px !important;
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: 22px !important;
        min-height: 22px !important;
        max-height: 22px !important;
        margin: 0 !important;
        padding: 0 !important;
        position: relative !important;
        display: block !important;
        overflow: visible !important;
        transform: none !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack::before,
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive::before,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack::before,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive::before {
        width: 104px !important;
        min-width: 104px !important;
        max-width: 104px !important;
        height: 22px !important;
        min-height: 22px !important;
        max-height: 22px !important;
        padding: 0 6px !important;
        font-size: 11px !important;
        line-height: 22px !important;
        border-radius: 6px 6px 0 0 !important;
        flex: 0 0 22px !important;
        white-space: nowrap !important;
        transform: none !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .textcenter,
    body.homepage .homepage-row-slider-section .toptiletoptile > .prc + .textcenter + .textcenter,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .textcenter,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile > .prc + .textcenter + .textcenter {
        width: 112px !important;
        min-width: 112px !important;
        max-width: 112px !important;
        margin: 0 !important;
        padding: 0 !important;
        align-items: center !important;
        text-align: center !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .homepage-contests-block__cards {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
        align-items: stretch !important;
    }

    .homepage-contest-card {
        min-height: 0 !important;
        padding: 12px !important;
        aspect-ratio: 1 / 0.92 !important;
        box-sizing: border-box !important;
    }

    .homepage-contest-card__img-wrap {
        width: 58px !important;
        height: 58px !important;
        border-radius: 12px !important;
        flex: 0 0 auto !important;
        overflow: hidden !important;
    }

    .homepage-contest-card__img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }

    .homepage-contest-card__title {
        font-size: 15px !important;
        line-height: 1.25 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    body.homepage .homepage-block-contests,
    body.page-top .homepage-block-contests,
    html:has(.header__main_homepage) .homepage-block-contests {
        margin-bottom: 12px !important;
    }

    body.homepage .homepage-block-contests > .lazy-content,
    body.page-top .homepage-block-contests > .lazy-content,
    html:has(.header__main_homepage) .homepage-block-contests > .lazy-content {
        padding: 0 !important;
    }

    body.homepage .homepage-contests-block,
    body.page-top .homepage-contests-block,
    html:has(.header__main_homepage) .homepage-contests-block {
        padding: 16px 16px 18px !important;
    }

    body.homepage .homepage-contests-block .homepage-block-header,
    body.page-top .homepage-contests-block .homepage-block-header,
    html:has(.header__main_homepage) .homepage-contests-block .homepage-block-header {
        align-items: center !important;
        gap: 10px !important;
        margin-bottom: 12px !important;
        padding-right: 0 !important;
    }

    body.homepage .homepage-contests-block__intro,
    body.page-top .homepage-contests-block__intro,
    html:has(.header__main_homepage) .homepage-contests-block__intro {
        margin-bottom: 10px !important;
    }

    body.homepage .homepage-contests-block__cards,
    body.page-top .homepage-contests-block__cards,
    html:has(.header__main_homepage) .homepage-contests-block__cards {
        grid-template-columns: repeat(auto-fit, minmax(94px, 1fr)) !important;
        gap: 12px !important;
        margin-bottom: 0 !important;
    }

    body.homepage .homepage-contest-card,
    body.page-top .homepage-contest-card,
    html:has(.header__main_homepage) .homepage-contest-card {
        width: 100% !important;
        min-height: 132px !important;
        aspect-ratio: auto !important;
        padding: 12px !important;
        justify-content: flex-start !important;
    }

    body.homepage .homepage-contest-card__img-wrap,
    body.page-top .homepage-contest-card__img-wrap,
    html:has(.header__main_homepage) .homepage-contest-card__img-wrap {
        width: 74px !important;
        height: 74px !important;
        border-radius: 14px !important;
    }

    body.homepage .homepage-duels-widget,
    body.page-top .homepage-duels-widget,
    html:has(.header__main_homepage) .homepage-duels-widget {
        margin-top: 0 !important;
    }

    .homepage-monetization-cta__actions {
        align-items: stretch !important;
    }

    .homepage-monetization-cta__btn,
    .homepage-monetization-cta__link {
        width: 100% !important;
        min-height: 52px !important;
        box-sizing: border-box !important;
    }

    .homepage-monetization-cta__link--social {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        text-decoration: none !important;
    }

    .homepage-monetization-cta__social-icon,
    .logfrm a img,
    .register_fromVK .content .right a img {
        display: block !important;
        width: 32px !important;
        height: 32px !important;
        flex: 0 0 32px !important;
        object-fit: contain !important;
        opacity: 1 !important;
        visibility: visible !important;
    }

    .footer__text--apps .footer__link,
    .start_author .og_btn,
    .author_btn_mobile a,
    a[href*="/start/"].og_btn,
    a[href*="/my/authors/"].og_btn {
        max-width: 100% !important;
        min-height: 44px !important;
        padding: 10px 18px !important;
        font-size: 18px !important;
        line-height: 1.25 !important;
        box-sizing: border-box !important;
    }

    body.page-catalog .extended-catalog-filter,
    body.page-catalog .catalog-filter,
    body.page-catalog .filters,
    body.page-catalog .filter {
        position: relative;
        z-index: 20 !important;
    }

    .modal__fade,
    .modal-backdrop,
    .ui-modal,
    .z-payment-choice-modal,
    [role="dialog"][aria-modal="true"] {
        z-index: 100000 !important;
    }

    .mobile-sticky-nav {
        z-index: 90000 !important;
        display: flex !important;
        align-items: stretch !important;
        justify-content: space-around !important;
        gap: 0 !important;
    }

    .mobile-sticky-nav__link {
        display: grid !important;
        flex: 1 1 20% !important;
        grid-template-rows: 28px 18px !important;
        align-items: center !important;
        justify-items: center !important;
        gap: 4px !important;
        min-width: 0 !important;
        min-height: 58px !important;
        padding: 4px 2px 6px !important;
        box-sizing: border-box !important;
        font-size: 13px !important;
        line-height: 18px !important;
        text-align: center !important;
    }

    .mobile-sticky-nav__link > svg,
    .mobile-sticky-nav__link > img,
    .mobile-sticky-nav__link > i {
        grid-row: 1 !important;
        display: block !important;
        width: 28px !important;
        min-width: 28px !important;
        max-width: 28px !important;
        height: 28px !important;
        min-height: 28px !important;
        max-height: 28px !important;
        margin: 0 !important;
        flex: 0 0 28px !important;
        transform: none !important;
    }

    .mobile-sticky-nav__link > span {
        grid-row: 2 !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: 18px !important;
        min-height: 18px !important;
        max-height: 18px !important;
        margin: 0 !important;
        overflow: hidden !important;
        color: inherit !important;
        font-size: 13px !important;
        line-height: 18px !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
    }
}

/* Mobile book page regression recovery, 2026-06-25. */
@media (max-width: 767px) {
    body.has-book-card,
    body.has-book-card .main-site-wrapper {
        overflow-x: hidden !important;
    }

    body.has-book-card .cnt-wrapper,
    body.has-book-card .cntl,
    body.has-book-card main,
    body.has-book-card .content-wrapper {
        max-width: 100vw !important;
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .book-card-item.lazy-section,
    body.has-book-card section.book-card-item.lazy-section,
    body.has-book-card .book-card-item:has(.bookinfo-top) {
        width: calc(100% - 28px) !important;
        max-width: calc(100% - 28px) !important;
        margin: 14px auto 18px !important;
        padding: 12px 12px 18px !important;
        border-radius: 16px !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .book-card-layout-wrapper {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body.has-book-card .seriaclass,
    body.has-book-card .seriaclass1,
    body.has-book-card .new_book_info,
    body.has-book-card .bookinfo,
    body.has-book-card .bookinfo-top,
    body.has-book-card .bookinfo-top__panes,
    body.has-book-card .bookinfo-top__pane {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .bookinfo_buttons-continue.bi_mobile,
    body.has-book-card #read-book-btn-onpage-mobile {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 12px 0 14px !important;
        padding: 0 !important;
    }

    body.has-book-card .bookinfo-actions-group {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body.has-book-card .bookinfo-actions-group--access,
    body.has-book-card .bookinfo-actions-group--secondary {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    body.has-book-card .bookinfo-actions-group--primary > *,
    body.has-book-card .bookinfo-actions-group > a,
    body.has-book-card .bookinfo-actions-group > button,
    body.has-book-card .bookinfo-actions-group > input,
    body.has-book-card .bookinfo-top__chapter-cta,
    body.has-book-card .read,
    body.has-book-card .book-download-action,
    body.has-book-card .book-library-action,
    body.has-book-card .print-version-button {
        min-height: 48px !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: 11px 12px !important;
        border-radius: 10px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        white-space: normal !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .book-download-unavailable {
        display: none !important;
    }

    body.has-book-card .bookinfo-access-summary {
        margin: -2px 0 0 !important;
        font-size: 14px !important;
        line-height: 1.35 !important;
    }

    body.has-book-card .bookinfo-top__nav,
    body.has-book-card .book-info-toggler-nav {
        margin: 8px 0 10px !important;
    }

    body.has-book-card .bookinfo-top__nav button,
    body.has-book-card .book-info-toggler-nav button {
        min-height: 48px !important;
        padding: 10px 8px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
    }

    body.has-book-card .bookinfo-top__pane-content--toc,
    body.has-book-card .book-glavi,
    body.has-book-card #book-glavi-id {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .bookinfo-top__pane-content--toc ul,
    body.has-book-card .book-glavi ul {
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    body.has-book-card .bookinfo-top__chapter-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        grid-template-areas: "title meta" "buy buy" !important;
        gap: 8px 10px !important;
        width: 100% !important;
        padding: 14px 0 !important;
        border-bottom: 1px solid rgba(31, 41, 51, .08) !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .bookinfo-top__chapter-row .top2 {
        grid-area: title !important;
        min-width: 0 !important;
        margin: 0 !important;
        font-size: 18px !important;
        line-height: 1.25 !important;
        font-weight: 700 !important;
    }

    body.has-book-card .bookinfo-top__chapter-row .chptitle {
        overflow-wrap: anywhere !important;
        word-break: normal !important;
    }

    body.has-book-card .bookinfo-top__chapter-row .lft.og_lft {
        grid-area: meta !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        gap: 5px !important;
        width: auto !important;
        min-width: 74px !important;
        margin: 0 !important;
        float: none !important;
        clear: none !important;
        font-size: 15px !important;
    }

    body.has-book-card .chapter-date {
        text-align: right !important;
        line-height: 1.15 !important;
        white-space: nowrap !important;
    }

    body.has-book-card .chapter-date__time {
        display: block !important;
        margin-top: 2px !important;
        color: #a3adb5 !important;
        font-size: 13px !important;
    }

    body.has-book-card .bookinfo-top__chapter-icon,
    body.has-book-card .chpt_og_btn {
        width: 26px !important;
        min-width: 26px !important;
        height: 26px !important;
        min-height: 26px !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        color: #0f9fa5 !important;
    }

    body.has-book-card .og_buy_btn_mobile,
    body.has-book-card .bookinfo-top__chapter-row > .og_buy_btn_mobile {
        grid-area: buy !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: 38px !important;
        width: auto !important;
        max-width: 100% !important;
        padding: 8px 12px !important;
        border-radius: 9px !important;
        font-size: 14px !important;
        line-height: 1.2 !important;
        justify-self: start !important;
    }

    body.has-book-card .bookinfo-top__toc-cta {
        margin: 4px 0 !important;
        padding: 12px 0 !important;
        font-size: 18px !important;
        line-height: 1.35 !important;
    }

    body.has-book-card .bookinfo-top__stats-list {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        margin: 8px 0 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    body.has-book-card .bookinfo-top__stats-item {
        min-height: 0 !important;
        padding: 12px 12px !important;
        border-radius: 12px !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .bookinfo-top__stats-label {
        display: block !important;
        margin: 0 0 6px !important;
        font-size: 11px !important;
        line-height: 1.2 !important;
        letter-spacing: .05em !important;
    }

    body.has-book-card .bookinfo-top__stats-value {
        display: block !important;
        font-size: 17px !important;
        line-height: 1.25 !important;
        font-weight: 700 !important;
    }

    body.has-book-card .book-discovery {
        width: 100% !important;
        max-width: 100% !important;
        margin: 14px 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .book-discovery__group {
        padding: 14px 12px !important;
        border-radius: 14px !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .book-discovery__title {
        margin: 0 0 12px !important;
        font-size: 18px !important;
        line-height: 1.25 !important;
        font-weight: 700 !important;
    }

    body.has-book-card .book-discovery__list--grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 16px 18px !important;
        margin: 0 !important;
        padding: 0 !important;
        list-style: none !important;
    }

    body.has-book-card .book-discovery__tile,
    body.has-book-card .book-discovery__tile-cover,
    body.has-book-card .book-discovery__tile-cover-img,
    body.has-book-card .book-discovery__tile-cover--placeholder {
        box-sizing: border-box !important;
    }

    body.has-book-card .book-discovery__tile {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 8px !important;
        width: 100% !important;
        text-align: center !important;
    }

    body.has-book-card .book-discovery__tile-cover {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 118px !important;
        height: 168px !important;
        max-width: 100% !important;
        border-radius: 8px !important;
        overflow: hidden !important;
        background: #eef4f7 !important;
    }

    body.has-book-card .book-discovery__tile-cover-img,
    body.has-book-card .book-discovery__tile-cover--placeholder {
        display: block !important;
        width: 118px !important;
        height: 168px !important;
        object-fit: cover !important;
        border-radius: 8px !important;
    }

    body.has-book-card .book-discovery__name {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        max-width: 100% !important;
        font-size: 15px !important;
        line-height: 1.25 !important;
        color: #1f2933 !important;
    }

    body.has-book-card .mark12,
    body.has-book-card .author_about .mark12 {
        width: 100% !important;
        max-width: 100% !important;
        margin: 18px 0 !important;
        padding: 18px 14px !important;
        border-radius: 16px !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .mark12 .writers-scroll-carousel,
    body.has-book-card .mark12 .homepage-scroll-carousel,
    body.has-book-card .mark12 .owl-carousel {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 14px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 0 0 8px !important;
        -webkit-overflow-scrolling: touch !important;
    }

    body.has-book-card .mark12 .writers-scroll-carousel .item,
    body.has-book-card .mark12 .writers-scroll-carousel .owl-item,
    body.has-book-card .mark12 .writers-scroll-carousel .book-card-mini,
    body.has-book-card .mark12 .writers-scroll-carousel div.toptile,
    body.has-book-card .mark12 .homepage-scroll-carousel .item,
    body.has-book-card .mark12 .owl-carousel .item,
    body.has-book-card .mark12 .owl-carousel .owl-item {
        flex: 0 0 128px !important;
        width: 128px !important;
        min-width: 128px !important;
        max-width: 128px !important;
    }

    body.has-book-card .mark12 img,
    body.has-book-card .mark12 img.shadow1 {
        width: 120px !important;
        height: 170px !important;
        max-width: 120px !important;
        object-fit: cover !important;
        border-radius: 8px !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body.has-book-card .mark12 .booktc,
    body.has-book-card .mark12 .booktc a,
    body.has-book-card .mark12 .cityc,
    body.has-book-card .mark12 .cityc a {
        font-size: 14px !important;
        line-height: 1.25 !important;
        text-align: center !important;
        overflow-wrap: anywhere !important;
    }

    body.has-book-card .mark12 .homepage-row-slider-wrap {
        position: relative !important;
        overflow: visible !important;
        padding: 0 4px !important;
    }

    body.has-book-card .mark12 .homepage-row-slider-wrap .homepage-slider-arrow {
        width: 24px !important;
        height: 24px !important;
        opacity: 1 !important;
        z-index: 8 !important;
    }

    body.has-book-card .mark12 .homepage-row-slider-wrap .homepage-slider-prev {
        left: 0 !important;
    }

    body.has-book-card .mark12 .homepage-row-slider-wrap .homepage-slider-next {
        right: 0 !important;
    }

    body.has-book-card .mark12 .homepage-row-slider {
        overflow: hidden !important;
    }

    body.has-book-card .mark12 .writers-scroll-carousel,
    body.has-book-card .mark12 .homepage-scroll-carousel,
    body.has-book-card .mark12 .owl-carousel {
        gap: 10px !important;
        padding: 0 18px 8px !important;
        scroll-padding-inline: 18px !important;
        box-sizing: border-box !important;
    }

    body.has-book-card .mark12 .writers-scroll-carousel .item,
    body.has-book-card .mark12 .writers-scroll-carousel .owl-item,
    body.has-book-card .mark12 .writers-scroll-carousel .book-card-mini,
    body.has-book-card .mark12 .writers-scroll-carousel div.toptile,
    body.has-book-card .mark12 .homepage-scroll-carousel .item,
    body.has-book-card .mark12 .owl-carousel .item,
    body.has-book-card .mark12 .owl-carousel .owl-item {
        flex-basis: clamp(128px, 34vw, 144px) !important;
        width: clamp(128px, 34vw, 144px) !important;
        min-width: clamp(128px, 34vw, 144px) !important;
        max-width: clamp(128px, 34vw, 144px) !important;
    }

    body.has-book-card .mark12 img,
    body.has-book-card .mark12 img.shadow1 {
        width: min(100%, 138px) !important;
        height: 198px !important;
        max-width: 138px !important;
        object-fit: contain !important;
        background: rgba(255, 255, 255, 0.72) !important;
    }
}

/* Book pages should not inherit the generic og_head mobile spacer. */
@media (max-width: 767px) {
    body.has-book-card .main-site-wrapper,
    html .main-site-wrapper:not(:has(.homepage-block)):not(:has(.concurs_container)):has(section.book-card-item.display-mode-0 .bookinfo-top),
    html .main-site-wrapper:not(:has(.homepage-block)):not(:has(.concurs_container)):has(.og_head):has(section.book-card-item.display-mode-0 .bookinfo-top) {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    body.has-book-card .book-card-item.display-mode-0:first-of-type,
    body.has-book-card section.book-card-item.display-mode-0:first-of-type {
        margin-top: 14px !important;
    }
}

/* Homepage mobile sliders: "Эксклюзив" is an overlay and must not change cover/card height. */
@media (max-width: 767px) {
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack),
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive),
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack),
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive),
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack),
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive),
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack),
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive) {
        display: block !important;
        position: relative !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        line-height: 0 !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack) picture,
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive) picture,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack) picture,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive) picture,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack) picture,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive) picture,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack) picture,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive) picture {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack) img,
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive) img,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack) img,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive) img,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive-pack) img,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a:has(> .exclusive) img,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive-pack) img,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a:has(> .exclusive) img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack,
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive {
        position: absolute !important;
        top: 6px !important;
        left: 6px !important;
        right: auto !important;
        bottom: auto !important;
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: calc(100% - 12px) !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 6 !important;
        pointer-events: none !important;
    }

    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack::before,
    body.homepage .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive::before,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack::before,
    body.homepage .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive-pack::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .toptile > div:first-child > a > .exclusive::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive-pack::before,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .textcenter > a > .exclusive::before {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: 18px !important;
        min-height: 18px !important;
        max-height: 18px !important;
        padding: 0 7px !important;
        border-radius: 5px !important;
        background: rgba(95, 127, 214, 0.95) !important;
        color: #fff !important;
        font-size: 8px !important;
        font-weight: 700 !important;
        line-height: 18px !important;
        letter-spacing: 0 !important;
        text-transform: uppercase !important;
        white-space: nowrap !important;
        transform: none !important;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18) !important;
        box-sizing: border-box !important;
    }
}

/* Personal recommendations use sidebar-style cards; keep them out of the generic homepage carousel mobile rules. */
@media (max-width: 767px) {
    body.homepage .cnt-wrapper:has(.homepage-block) .homepage-block.homepage-block-for-you,
    body.homepage .homepage-block.homepage-block-for-you,
    html:has(.header__main_homepage) .homepage-block.homepage-block-for-you {
        width: 100vw !important;
        max-width: 100vw !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-block.homepage-block-for-you .lazy-content,
    html:has(.header__main_homepage) .homepage-block.homepage-block-for-you .lazy-content {
        padding: 18px 0 16px !important;
        background: transparent !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-block-for-you .intro,
    html:has(.header__main_homepage) .homepage-block-for-you .intro {
        max-width: 100% !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
    }

    body.homepage .homepage-block-for-you .homepage-row-slider-wrap,
    html:has(.header__main_homepage) .homepage-block-for-you .homepage-row-slider-wrap {
        width: 100% !important;
        overflow: hidden !important;
    }

    body.homepage .homepage-block-for-you .homepage-row-slider,
    html:has(.header__main_homepage) .homepage-block-for-you .homepage-row-slider {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        padding: 0 0 8px !important;
    }

    body.homepage .homepage-block-for-you .homepage-row-slider__inner,
    body.homepage .homepage-block-for-you .books-list,
    html:has(.header__main_homepage) .homepage-block-for-you .homepage-row-slider__inner,
    html:has(.header__main_homepage) .homepage-block-for-you .books-list {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 14px !important;
        width: max-content !important;
        min-width: 100% !important;
        padding: 0 !important;
    }

    body.homepage .homepage-block-for-you .book-card-item.aside-slider-card,
    html:has(.header__main_homepage) .homepage-block-for-you .book-card-item.aside-slider-card {
        flex: 0 0 118px !important;
        width: 118px !important;
        min-width: 118px !important;
        max-width: 118px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    body.homepage .homepage-block-for-you .interested-book-sidebar,
    html:has(.header__main_homepage) .homepage-block-for-you .interested-book-sidebar {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        text-decoration: none !important;
    }

    body.homepage .homepage-block-for-you .toptile,
    html:has(.header__main_homepage) .homepage-block-for-you .toptile {
        width: 118px !important;
        min-width: 118px !important;
        max-width: 118px !important;
        height: auto !important;
        margin: 0 0 8px !important;
        padding: 0 !important;
        display: block !important;
    }

    body.homepage .homepage-block-for-you .toptile picture,
    body.homepage .homepage-block-for-you .toptile img,
    html:has(.header__main_homepage) .homepage-block-for-you .toptile picture,
    html:has(.header__main_homepage) .homepage-block-for-you .toptile img {
        display: block !important;
        width: 118px !important;
        min-width: 118px !important;
        max-width: 118px !important;
        height: 168px !important;
        min-height: 168px !important;
        max-height: 168px !important;
        object-fit: cover !important;
        object-position: center !important;
        border-radius: 8px !important;
    }

    body.homepage .homepage-block-for-you .textcenter,
    html:has(.header__main_homepage) .homepage-block-for-you .textcenter {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
        text-align: left !important;
    }

    body.homepage .homepage-block-for-you .booktc,
    body.homepage .homepage-block-for-you .cityc,
    html:has(.header__main_homepage) .homepage-block-for-you .booktc,
    html:has(.header__main_homepage) .homepage-block-for-you .cityc {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        min-height: 0 !important;
        color: #475569 !important;
        font-size: 14px !important;
        line-height: 1.25 !important;
        text-align: left !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
    }

    body.homepage .homepage-block-for-you .booktc,
    html:has(.header__main_homepage) .homepage-block-for-you .booktc {
        font-weight: 600 !important;
        color: #1f2937 !important;
        margin-bottom: 4px !important;
    }
}

/* Mobile homepage polish: headings, compact cards, recommendations. */
@media (max-width: 640px) {
    .homepage-section h2,
    .home-section-title,
    .homepage-section-title,
    .home-page h2 {
        font-size: 24px;
        line-height: 1.2;
        color: #087f7f;
        letter-spacing: 0;
    }

    .homepage-benefits .benefit-card,
    .benefits-grid .benefit-card,
    .home-benefits .benefit-card,
    .home-advantages .advantage-card {
        min-height: 0 !important;
        padding: 18px 16px !important;
    }

    .homepage-benefits .benefit-card p,
    .benefits-grid .benefit-card p,
    .home-benefits .benefit-card p,
    .home-advantages .advantage-card p {
        margin-bottom: 0;
    }

    .homepage-placeholder-cover,
    .book-cover-placeholder,
    .book-card-placeholder,
    .home-book-placeholder {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 132px;
        padding: 12px;
        text-align: center;
        background: linear-gradient(135deg, #eefafa, #fff);
        border: 1px solid rgba(15, 166, 166, .28);
        color: #087f7f;
        font-weight: 700;
    }

    .homepage-recommendations img,
    .writers-recommendations img,
    .home-recommendations img,
    .recommendations-carousel img {
        object-fit: contain;
        background: #fff;
    }

    .homepage-recommendations a,
    .writers-recommendations a,
    .home-recommendations a,
    .recommendations-carousel a {
        max-width: 100%;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: normal;
    }
}

/* Mobile homepage book rows: show book titles without ellipsis in compact sliders. */
@media (max-width: 767px) {
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter + .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .textcenter,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .textcenter,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .prc + .textcenter + .textcenter,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row--compact .textcenter {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc .lnk,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc .lnk {
        display: block !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        text-overflow: clip !important;
        white-space: normal !important;
        -webkit-line-clamp: unset !important;
        line-clamp: unset !important;
        -webkit-box-orient: initial !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
        hyphens: none !important;
    }
}

/* Final mobile homepage gutters: avoid accumulated 5+12+14px side fields. */
@media (max-width: 640px) {
    body.homepage .main-site-wrapper,
    body.homepage .cnt-wrapper,
    body.homepage .cntl-wrapper,
    body.homepage main,
    body.homepage .cnt,
    body.homepage .cntl,
    html:has(.header__main_homepage) .main-site-wrapper,
    html:has(.header__main_homepage) .cnt-wrapper,
    html:has(.header__main_homepage) .cntl-wrapper,
    html:has(.header__main_homepage) main,
    html:has(.header__main_homepage) .cnt,
    html:has(.header__main_homepage) .cntl {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-block,
    body.homepage .homepage-row-slider-section,
    .cnt-wrapper:has(.homepage-block) .homepage-block,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section,
    html:has(.header__main_homepage) .homepage-block,
    html:has(.header__main_homepage) .homepage-row-slider-section {
        width: calc(100% - 16px) !important;
        max-width: calc(100% - 16px) !important;
        margin-left: 8px !important;
        margin-right: 8px !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .books-list,
    body.homepage .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .homepage-row-slider__inner,
    .cnt-wrapper:has(.homepage-block) .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .books-list,
    .cnt-wrapper:has(.homepage-block) .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .homepage-row-slider__inner,
    html:has(.header__main_homepage) .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .books-list,
    html:has(.header__main_homepage) .homepage-block:has(a.section-more[href*="filter=completed_new"]) .homepage-row-slider .homepage-row-slider__inner {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    body.homepage .homepage-block .section-more--bottom,
    html:has(.header__main_homepage) .homepage-block .section-more--bottom {
        max-width: calc(100% - 16px) !important;
    }
}

/* Final mobile homepage text wrapping: avoid syllable/letter splits in book titles and authors. */
@media (max-width: 640px) {
    body.homepage .homepage-row-slider-section .book-card-mini .booktc,
    body.homepage .homepage-row-slider-section .book-card-mini .booktc a,
    body.homepage .homepage-row-slider-section .book-card-mini .booktc .lnk,
    body.homepage .homepage-row-slider-section .book-card-mini .cityc,
    body.homepage .homepage-row-slider-section .book-card-mini .cityc a,
    body.homepage .homepage-row-slider-section .book-card-mini .cityc .txt,
    body.homepage .homepage-row-slider-section .toptiletoptile .booktc,
    body.homepage .homepage-row-slider-section .toptiletoptile .booktc a,
    body.homepage .homepage-row-slider-section .toptiletoptile .booktc .lnk,
    body.homepage .homepage-row-slider-section .toptiletoptile .cityc,
    body.homepage .homepage-row-slider-section .toptiletoptile .cityc a,
    body.homepage .homepage-row-slider-section .toptiletoptile .cityc .txt,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .booktc,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .booktc a,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .booktc .lnk,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .cityc,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .cityc a,
    html:has(.header__main_homepage) .homepage-row-slider-section .book-card-mini .cityc .txt,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .booktc,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .booktc a,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .booktc .lnk,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .cityc,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .cityc a,
    html:has(.header__main_homepage) .homepage-row-slider-section .toptiletoptile .cityc .txt {
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
        text-wrap: pretty;
    }

    body.homepage .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .booktc,
    body.homepage .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .booktc a,
    body.homepage .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .booktc .lnk,
    body.homepage .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .cityc,
    body.homepage .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .cityc a,
    body.homepage .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .cityc .txt,
    html:has(.header__main_homepage) body .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .booktc,
    html:has(.header__main_homepage) body .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .booktc a,
    html:has(.header__main_homepage) body .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .booktc .lnk,
    html:has(.header__main_homepage) body .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .cityc,
    html:has(.header__main_homepage) body .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .cityc a,
    html:has(.header__main_homepage) body .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .book-card-mini .cityc .txt {
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .booktc,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile > .booktc {
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
    }

    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-card-mini .textcenter,
    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-card-item .textcenter,
    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-row .textcenter {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-card-mini .booktc,
    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-card-mini .booktc a,
    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-card-item .booktc,
    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-card-item .booktc a,
    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-row .booktc,
    body.homepage .homepage-best-works-section.homepage-row-slider-section .book-row .booktc a {
        display: block !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
        -webkit-line-clamp: unset !important;
    }
}

/* Touch landscape/tablet: keep book carousels evenly spaced and aligned. */
@media (min-width: 768px) and (max-width: 1180px) and (hover: none) {
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider,
    body.homepage .mark12 .writers-scroll-carousel,
    body.homepage .mark12 .homepage-scroll-carousel,
    body.homepage .mark12 .owl-carousel,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider {
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        padding: 0 14px 12px !important;
        scroll-snap-type: x proximity !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner,
    body.homepage .mark12 .writers-scroll-carousel,
    body.homepage .mark12 .homepage-scroll-carousel,
    body.homepage .mark12 .owl-carousel,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .books-list,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: clamp(18px, 3vw, 30px) !important;
        width: max-content !important;
        min-width: 100% !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    body.homepage .mark12 .writers-scroll-carousel .item,
    body.homepage .mark12 .writers-scroll-carousel .owl-item,
    body.homepage .mark12 .writers-scroll-carousel .book-card-mini,
    body.homepage .mark12 .writers-scroll-carousel div.toptile,
    body.homepage .mark12 .homepage-scroll-carousel .item,
    body.homepage .mark12 .homepage-scroll-carousel .owl-item,
    body.homepage .mark12 .owl-carousel .item,
    body.homepage .mark12 .owl-carousel .owl-item,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > *,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .toptile.toptiletoptile {
        float: none !important;
        flex: 0 0 clamp(132px, 17vw, 156px) !important;
        width: clamp(132px, 17vw, 156px) !important;
        min-width: clamp(132px, 17vw, 156px) !important;
        max-width: clamp(132px, 17vw, 156px) !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        align-self: flex-start !important;
        scroll-snap-align: start !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.lazy-media,
    body.homepage .mark12 .writers-scroll-carousel picture,
    body.homepage .mark12 .writers-scroll-carousel img,
    body.homepage .mark12 .homepage-scroll-carousel picture,
    body.homepage .mark12 .homepage-scroll-carousel img,
    body.homepage .mark12 .owl-carousel picture,
    body.homepage .mark12 .owl-carousel img,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.lazy-media,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.lazy-media {
        display: block !important;
        width: clamp(132px, 17vw, 156px) !important;
        min-width: clamp(132px, 17vw, 156px) !important;
        max-width: clamp(132px, 17vw, 156px) !important;
        height: clamp(188px, 24vw, 222px) !important;
        min-height: clamp(188px, 24vw, 222px) !important;
        max-height: clamp(188px, 24vw, 222px) !important;
        object-fit: cover !important;
        object-position: center !important;
        border-radius: 10px !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .textcenter,
    body.homepage .mark12 .book-card-mini .textcenter,
    body.homepage .mark12 .toptile .textcenter,
    .cnt-wrapper:has(.homepage-block) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .textcenter,
    html:has(.header__main_homepage) .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .textcenter {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 8px 0 0 !important;
        padding: 0 !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }
}

/* Shared mobile contract for book recommendation rails: two covers, calm arrows, no cover frames. */
@media (max-width: 767px) {
    .book-related-recommendations .homepage-row-slider-wrap,
    .read-also-carousel-block .homepage-row-slider-wrap,
    .mark12 .homepage-row-slider-wrap {
        position: relative !important;
        overflow: hidden !important;
        padding: 0 34px !important;
        box-sizing: border-box !important;
    }

    .book-related-recommendations .homepage-row-slider,
    .read-also-carousel-block .homepage-row-slider,
    .mark12 .homepage-row-slider {
        padding: 0 !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    .book-related-recommendations .homepage-row-slider__inner,
    .read-also-carousel-block .homepage-row-slider__inner,
    .mark12 .writers-scroll-carousel,
    .mark12 .homepage-scroll-carousel,
    .mark12 .owl-carousel {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: flex-start !important;
        gap: 16px !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        padding: 0 0 10px !important;
        scroll-padding-inline: 0 !important;
        scroll-snap-type: x proximity !important;
        box-sizing: border-box !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
    }

    .book-related-recommendations .homepage-row-slider__inner::-webkit-scrollbar,
    .read-also-carousel-block .homepage-row-slider__inner::-webkit-scrollbar,
    .mark12 .writers-scroll-carousel::-webkit-scrollbar,
    .mark12 .homepage-scroll-carousel::-webkit-scrollbar,
    .mark12 .owl-carousel::-webkit-scrollbar {
        display: none !important;
    }

    .book-related-recommendations .book-card-mini,
    .book-related-recommendations .toptile.book-card-mini,
    .read-also-carousel-block .book-card-mini,
    .read-also-carousel-block .toptile.book-card-mini,
    .mark12 .writers-scroll-carousel .item,
    .mark12 .writers-scroll-carousel .owl-item,
    .mark12 .writers-scroll-carousel .book-card-mini,
    .mark12 .writers-scroll-carousel div.toptile,
    .mark12 .homepage-scroll-carousel .item,
    .mark12 .homepage-scroll-carousel .owl-item,
    .mark12 .homepage-scroll-carousel .book-card-mini,
    .mark12 .homepage-scroll-carousel div.toptile,
    .mark12 .owl-carousel .item,
    .mark12 .owl-carousel .owl-item {
        flex: 0 0 calc((100% - 16px) / 2) !important;
        width: calc((100% - 16px) / 2) !important;
        min-width: calc((100% - 16px) / 2) !important;
        max-width: calc((100% - 16px) / 2) !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        align-self: flex-start !important;
        scroll-snap-align: start !important;
        box-sizing: border-box !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .book-related-recommendations .book-card-mini .toptile,
    .read-also-carousel-block .book-card-mini .toptile,
    .mark12 .book-card-mini .toptile,
    .mark12 div.toptile {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .book-related-recommendations .book-card-mini > .prc + .textcenter,
    .book-related-recommendations .book-card-mini > .textcenter:first-child,
    .read-also-carousel-block .book-card-mini > .prc + .textcenter,
    .read-also-carousel-block .book-card-mini > .textcenter:first-child,
    .mark12 .book-card-mini .toptile > div:first-child,
    .mark12 .book-card-mini .toptile picture {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 0 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        overflow: visible !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .book-related-recommendations .book-card-mini picture,
    .read-also-carousel-block .book-card-mini picture,
    .mark12 .book-card-mini picture {
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: 100% !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    .book-related-recommendations .book-card-mini img,
    .book-related-recommendations .book-card-mini img.shadow1,
    .read-also-carousel-block .book-card-mini img,
    .read-also-carousel-block .book-card-mini img.shadow1,
    .mark12 .book-card-mini img,
    .mark12 .book-card-mini img.shadow1 {
        display: block !important;
        width: min(100%, 136px) !important;
        height: auto !important;
        max-width: 136px !important;
        aspect-ratio: 200 / 284 !important;
        object-fit: cover !important;
        object-position: center !important;
        border: 0 !important;
        border-radius: 8px !important;
        box-shadow: none !important;
        background: transparent !important;
    }

    .book-related-recommendations .book-card-mini > .textcenter:last-child,
    .read-also-carousel-block .book-card-mini > .textcenter:last-child,
    .mark12 .book-card-mini .textcenter {
        width: 100% !important;
        max-width: 100% !important;
        margin: 10px 0 0 !important;
        padding: 0 !important;
        text-align: center !important;
        align-items: center !important;
        box-sizing: border-box !important;
    }

    .book-related-recommendations .booktc,
    .book-related-recommendations .booktc a,
    .book-related-recommendations .cityc,
    .book-related-recommendations .cityc a,
    .read-also-carousel-block .booktc,
    .read-also-carousel-block .booktc a,
    .read-also-carousel-block .cityc,
    .read-also-carousel-block .cityc a,
    .mark12 .booktc,
    .mark12 .booktc a,
    .mark12 .cityc,
    .mark12 .cityc a {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
    }

    .book-related-recommendations .homepage-slider-arrow,
    .read-also-carousel-block .homepage-slider-arrow,
    .mark12 .homepage-slider-arrow {
        top: 42% !important;
        width: 28px !important;
        height: 48px !important;
        z-index: 5 !important;
        opacity: 1 !important;
        transform: translateY(-50%) !important;
        pointer-events: auto !important;
    }

    .book-related-recommendations .homepage-slider-prev,
    .read-also-carousel-block .homepage-slider-prev,
    .mark12 .homepage-slider-prev {
        left: 0 !important;
    }

    .book-related-recommendations .homepage-slider-next,
    .read-also-carousel-block .homepage-slider-next,
    .mark12 .homepage-slider-next {
        right: 0 !important;
    }

    .book-related-recommendations .homepage-slider-arrow::before,
    .read-also-carousel-block .homepage-slider-arrow::before,
    .mark12 .homepage-slider-arrow::before {
        width: 42px !important;
        height: 42px !important;
    }

    .mark12 .owl-nav,
    .mark12 .owl-dots {
        display: none !important;
    }
}

/* Mobile writers-opinion heading: keep icon and wrapped title aligned as one unit. */
@media (max-width: 640px) {
    body.homepage .mark12 > h2,
    body.homepage .mark12 > h3,
    body.homepage .mark12 > .txt:first-child,
    body.homepage .mark12 .homepage-section-title,
    html:has(.header__main_homepage) .mark12 > h2,
    html:has(.header__main_homepage) .mark12 > h3,
    html:has(.header__main_homepage) .mark12 > .txt:first-child,
    html:has(.header__main_homepage) .mark12 .homepage-section-title {
        display: grid !important;
        grid-template-columns: 38px minmax(0, 1fr) !important;
        column-gap: 12px !important;
        align-items: start !important;
        margin: 0 0 14px !important;
        color: #087f7f !important;
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
        font-size: clamp(26px, 7vw, 34px) !important;
        font-weight: 800 !important;
        line-height: 1.18 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
    }

    body.homepage .mark12 > h2 > i:first-child,
    body.homepage .mark12 > h3 > i:first-child,
    body.homepage .mark12 > .txt:first-child > i:first-child,
    body.homepage .mark12 .homepage-section-title > i:first-child,
    html:has(.header__main_homepage) .mark12 > h2 > i:first-child,
    html:has(.header__main_homepage) .mark12 > h3 > i:first-child,
    html:has(.header__main_homepage) .mark12 > .txt:first-child > i:first-child,
    html:has(.header__main_homepage) .mark12 .homepage-section-title > i:first-child {
        grid-column: 1 !important;
        width: 38px !important;
        min-width: 38px !important;
        margin: 0 !important;
        text-align: center !important;
        line-height: 1.05 !important;
    }
}

/* Homepage mobile wide cards: keep title/author typography consistent and avoid syllable-like breaks. */
@media (max-width: 767px) {
    body.homepage .book-card-item .book-card-layout-wrapper,
    body.homepage .commitm .book-card-layout-wrapper,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper {
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
    }

    body.homepage .book-card-item .book-card-layout-wrapper .booktc,
    body.homepage .book-card-item .book-card-layout-wrapper .booktc a,
    body.homepage .book-card-item .book-card-layout-wrapper h2.bookname,
    body.homepage .book-card-item .book-card-layout-wrapper h2.bookname a,
    body.homepage .book-card-item .book-card-layout-wrapper .bookname .txt,
    body.homepage .book-card-item .book-card-layout-wrapper .bookname .txt span,
    body.homepage .commitm .book-card-layout-wrapper .booktc,
    body.homepage .commitm .book-card-layout-wrapper .booktc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .booktc,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .booktc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper h2.bookname,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper h2.bookname a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .bookname .txt,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .bookname .txt span,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .booktc,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .booktc a {
        display: block !important;
        color: #111827 !important;
        font-family: inherit !important;
        font-size: clamp(21px, 5.8vw, 26px) !important;
        font-weight: 800 !important;
        line-height: 1.12 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        white-space: normal !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
    }

    body.homepage .book-card-item .book-card-layout-wrapper .cityc,
    body.homepage .book-card-item .book-card-layout-wrapper .cityc a,
    body.homepage .book-card-item .book-card-layout-wrapper .book-author-line,
    body.homepage .book-card-item .book-card-layout-wrapper .book-author-line a,
    body.homepage .commitm .book-card-layout-wrapper .cityc,
    body.homepage .commitm .book-card-layout-wrapper .cityc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .cityc,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .cityc a,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .book-author-line,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .book-author-line a,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .cityc,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .cityc a {
        color: #0b9fa5 !important;
        font-family: inherit !important;
        font-size: clamp(18px, 5vw, 22px) !important;
        font-weight: 500 !important;
        line-height: 1.22 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
    }

    body.homepage .book-card-item .book-card-layout-wrapper .promo_book,
    body.homepage .book-card-item .book-card-layout-wrapper .promo_book span,
    body.homepage .book-card-item .book-card-layout-wrapper .synopsis,
    body.homepage .commitm .book-card-layout-wrapper .promo_book,
    body.homepage .commitm .book-card-layout-wrapper .promo_book span,
    body.homepage .commitm .book-card-layout-wrapper .synopsis,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .promo_book,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .promo_book span,
    .main-site-wrapper:has(.homepage-block) .book-card-item .book-card-layout-wrapper .synopsis,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .promo_book,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .promo_book span,
    .main-site-wrapper:has(.homepage-block) .commitm .book-card-layout-wrapper .synopsis {
        font-family: inherit !important;
        font-size: 17px !important;
        line-height: 1.35 !important;
        letter-spacing: 0 !important;
        text-align: left !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
    }
}

/* Final exclusive badge sync: this must stay after older exclusive overrides. */
.toptile .exclusive,
.toptile .exclusive-pack,
.book-card-mini .toptile .exclusive,
.book-card-mini .toptile .exclusive-pack,
.book-row .toptile .exclusive,
.book-row .toptile .exclusive-pack,
.book-card-item .exclusive,
.book-card-item .exclusive-pack,
.commitm .exclusive,
.commitm .exclusive-pack,
.bookinfo .w300b .relat .exclusive,
.bookinfo .w300b .relat .exclusive-pack,
#result .item_card .relat .exclusive,
#result .item_card .relat .exclusive-pack,
.my-library__grid .book-card-mini .toptile .exclusive,
.my-library__grid .book-card-mini .toptile .exclusive-pack {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    overflow: visible !important;
    display: block !important;
    visibility: visible !important;
    z-index: 14 !important;
    pointer-events: none;
}

.toptile .exclusive::before,
.toptile .exclusive-pack::before,
.book-card-mini .toptile .exclusive::before,
.book-card-mini .toptile .exclusive-pack::before,
.book-row .toptile .exclusive::before,
.book-row .toptile .exclusive-pack::before,
.book-card-item .exclusive::before,
.book-card-item .exclusive-pack::before,
.commitm .exclusive::before,
.commitm .exclusive-pack::before,
.bookinfo .w300b .relat .exclusive::before,
.bookinfo .w300b .relat .exclusive-pack::before,
#result .item_card .relat .exclusive::before,
#result .item_card .relat .exclusive-pack::before,
.my-library__grid .book-card-mini .toptile .exclusive::before,
.my-library__grid .book-card-mini .toptile .exclusive-pack::before {
    content: 'ЭКСКЛЮЗИВ' !important;
    position: absolute !important;
    top: 30px !important;
    right: -36px !important;
    width: 148px !important;
    padding: 4px 8px !important;
    border-radius: 4px !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #ff9f1c 0%, #f97316 100%) !important;
    box-shadow: 0 2px 7px rgba(124, 45, 18, 0.28) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.04em !important;
    text-align: center !important;
    text-transform: uppercase !important;
    transform: rotate(45deg) !important;
    transform-origin: center !important;
    box-sizing: border-box !important;
}

.book-card-mini .toptile .exclusive::before,
.book-card-mini .toptile .exclusive-pack::before,
.homepage-row-slider-section .toptiletoptile .exclusive::before,
.homepage-row-slider-section .toptiletoptile .exclusive-pack::before {
    top: 22px !important;
    right: -29px !important;
    width: 116px !important;
    padding: 3px 6px !important;
    font-size: 9px !important;
}

/* Final cover contract: book covers must fit the frame without cropping embedded titles/authors. */
@media (max-width: 767px) {
    body.homepage .book-card-item .w300b .relat,
    body.homepage .commitm .w300b .relat,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b .relat,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b .relat,
    body.has-book-card .bookinfo .w300b .relat,
    body.has-book-card .book-card-item .w300b .relat,
    body.page-catalog #result .book-card-item.display-mode-0 .w300b .relat,
    body.page-catalog #result .book-card-item.display-mode-2 .w300b .relat,
    body.page-search #result .book-card-item.display-mode-0 .w300b .relat,
    body.page-search #result .book-card-item.display-mode-2 .w300b .relat {
        width: 100% !important;
        max-width: 100% !important;
        aspect-ratio: 200 / 284 !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        background: linear-gradient(180deg, #f6fbfc 0%, #eaf5f6 100%) !important;
        box-sizing: border-box !important;
    }

    body.homepage .book-card-item .w300b .book-cover-link,
    body.homepage .commitm .w300b .book-cover-link,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b .book-cover-link,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b .book-cover-link,
    body.has-book-card .bookinfo .w300b .book-cover-link,
    body.has-book-card .book-card-item .w300b .book-cover-link,
    body.page-catalog #result .book-card-item.display-mode-0 .w300b .book-cover-link,
    body.page-catalog #result .book-card-item.display-mode-2 .w300b .book-cover-link,
    body.page-search #result .book-card-item.display-mode-0 .w300b .book-cover-link,
    body.page-search #result .book-card-item.display-mode-2 .w300b .book-cover-link,
    body.homepage .book-card-item .w300b picture,
    body.homepage .commitm .w300b picture,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b picture,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b picture,
    body.has-book-card .bookinfo .w300b picture,
    body.has-book-card .book-card-item .w300b picture,
    body.page-catalog #result .book-card-item.display-mode-0 .w300b picture,
    body.page-catalog #result .book-card-item.display-mode-2 .w300b picture,
    body.page-search #result .book-card-item.display-mode-0 .w300b picture,
    body.page-search #result .book-card-item.display-mode-2 .w300b picture {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        border-radius: inherit !important;
        background: inherit !important;
        box-sizing: border-box !important;
    }

    body.homepage .book-card-item .w300b picture img,
    body.homepage .commitm .w300b picture img,
    .main-site-wrapper:has(.homepage-block) .book-card-item .w300b picture img,
    .main-site-wrapper:has(.homepage-block) .commitm .w300b picture img,
    body.has-book-card .bookinfo .w300b picture img,
    body.has-book-card .book-card-item .w300b picture img,
    body.page-catalog #result .book-card-item.display-mode-0 .w300b picture img,
    body.page-catalog #result .book-card-item.display-mode-2 .w300b picture img,
    body.page-search #result .book-card-item.display-mode-0 .w300b picture img,
    body.page-search #result .book-card-item.display-mode-2 .w300b picture img,
    body.page-catalog #result .book-card-item.display-mode-0 .w300b img.shadow1,
    body.page-catalog #result .book-card-item.display-mode-2 .w300b img.shadow1,
    body.page-search #result .book-card-item.display-mode-0 .w300b img.shadow1,
    body.page-search #result .book-card-item.display-mode-2 .w300b img.shadow1 {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        aspect-ratio: auto !important;
        object-fit: contain !important;
        object-position: center center !important;
        background: inherit !important;
        border-radius: inherit !important;
        box-sizing: border-box !important;
    }

    body.homepage .book-card-item .w300b img.is-book-cover-fallback,
    body.homepage .book-card-item .w300b img.book-cover-img--placeholder,
    body.homepage .commitm .w300b img.is-book-cover-fallback,
    body.homepage .commitm .w300b img.book-cover-img--placeholder,
    body.has-book-card .bookinfo .w300b img.is-book-cover-fallback,
    body.has-book-card .bookinfo .w300b img.book-cover-img--placeholder,
    body.has-book-card .book-card-item .w300b img.is-book-cover-fallback,
    body.has-book-card .book-card-item .w300b img.book-cover-img--placeholder,
    body.page-catalog #result .book-card-item .w300b img.is-book-cover-fallback,
    body.page-catalog #result .book-card-item .w300b img.book-cover-img--placeholder,
    body.page-search #result .book-card-item .w300b img.is-book-cover-fallback,
    body.page-search #result .book-card-item .w300b img.book-cover-img--placeholder {
        padding: 8px !important;
    }

    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper .book-cover-wrap,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper .book-cover-link,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper .book-cover-picture,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper .relat,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper picture {
        width: 132px !important;
        max-width: 132px !important;
        aspect-ratio: 200 / 284 !important;
        overflow: hidden !important;
        border-radius: 10px !important;
        background: linear-gradient(180deg, #f6fbfc 0%, #eaf5f6 100%) !important;
        box-sizing: border-box !important;
    }

    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper .book-cover-link,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper .book-cover-picture,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper picture {
        height: 100% !important;
    }

    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper .book-cover-picture img,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper picture img,
    body.has-book-card section.book-card-item.display-mode-0 .book-card-layout-wrapper picture img.shadow {
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: none !important;
        aspect-ratio: auto !important;
        object-fit: contain !important;
        object-position: center center !important;
        background: inherit !important;
        border-radius: inherit !important;
        box-sizing: border-box !important;
    }
}

/* Regression guard for legacy homepage rails: cover geometry and caption alignment
   must not depend on whether a renderer uses .cityc or .booktc for the title. */
@media (min-width: 1181px) {
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .homepage-row-slider__inner > * {
        flex: 0 0 156px !important;
        width: 156px !important;
        min-width: 156px !important;
        max-width: 156px !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-row__cover-link,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-mini .toptile > div:first-child,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .book-card-item .toptile,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) picture img,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.shadow1,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) img.book-cover {
        display: block !important;
        width: 156px !important;
        min-width: 156px !important;
        max-width: 156px !important;
        height: 222px !important;
        min-height: 222px !important;
        max-height: 222px !important;
        margin-right: auto !important;
        margin-left: auto !important;
        aspect-ratio: auto !important;
        object-fit: cover !important;
        object-position: center !important;
        box-sizing: border-box !important;
    }

    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a {
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 767px) {
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .textcenter,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .cityc a,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc,
    body.homepage .homepage-row-slider-section .homepage-row-slider-wrap:not(.aside-slider-wrap) .booktc a {
        text-align: left !important;
    }
}

/* Горячие книги: на мобилке обложка в 2 раза уже, контент — на всю оставшуюся ширину */
@media (max-width: 767px) {
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile {
        display: flex !important;
        flex-direction: row !important;
        align-items: flex-start !important;
        gap: 12px !important;
        padding: 8px 0 !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(2) {
        flex: 0 0 80px !important;
        width: 80px !important;
        max-width: 80px !important;
        padding: 0 !important;
        margin: 0 !important;
        position: static !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(2) picture,
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(2) a {
        display: block !important;
        width: 80px !important;
        position: static !important;
        inset: auto !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(2) img,
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(2) img.shadow1 {
        width: 80px !important;
        max-width: 80px !important;
        max-height: none !important;
        height: auto !important;
        aspect-ratio: auto !important;
        display: block !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(3) {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        text-align: left !important;
        padding: 0 !important;
        position: static !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(3) .cityc,
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > div:nth-of-type(3) .cityc a {
        text-align: left !important;
        font-size: 13px !important;
        margin: 0 0 2px !important;
        padding: 0 !important;
        display: block !important;
        width: auto !important;
        min-height: 0 !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > .booktc {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 0 !important;
        text-align: left !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > .booktc a {
        font-size: 12px !important;
        text-align: left !important;
        display: block !important;
        width: auto !important;
        margin: 0 !important;
    }
    body.homepage .lazy-section:has(.fa-fire) .toptiletoptile > .prc {
        display: none !important;
    }
}
