/* D-02 + U-03 + U-04: Глобальные CSS-переменные — палитра, типографика, отступы */
:root {
    /* D-02: Нео-японская цветовая палитра */
    --color-bg:        #f7f7f7;
    --color-text:      #2d3436;
    --color-accent:    #E1291A;
    --color-secondary: #55527C;
    --color-surface:   #ffffff;
    --color-border:    #e0d5c8;
    --color-muted:     #888;

    /* D-01: Системный японский шрифтовой стек — без загрузки, без FOUT */
    --font-family: 'Yu Gothic UI', 'Yu Gothic', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Meiryo UI', 'Meiryo', 'Segoe UI', sans-serif;

    /* U-03: Typography scale */
    --font-size-hero: clamp(1.8rem, 4vw, 3rem);
    --font-size-h1: clamp(1.4rem, 3vw, 2.25rem);
    --font-size-h2: clamp(1.15rem, 2.5vw, 1.6rem);
    --font-size-h3: 1.2rem;
    --font-size-base: 1rem;
    --font-size-sm: 0.875rem;
    --font-size-xs: 0.8rem;
    --line-height-tight: 1.25;
    --line-height-base: 1.65;
    --line-height-relaxed: 1.8;
    --font-weight-normal: 400;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    /* U-04: Spacing system */
    --space-xs: 0.25rem;
    --space-sm: 0.5rem;
    --space-md: 1rem;
    --space-lg: 1.5rem;
    --space-xl: 2rem;
    --space-2xl: 3rem;
    --space-3xl: 4rem;
}

/* D-02: Применяем палитру глобально */
body {
    background-color: var(--color-bg) !important;
    color: var(--color-text) !important;
    font-family: var(--font-family) !important;
    letter-spacing: 0.01em;
    word-spacing: 0.02em;
}

/* Белые блоки — surface */
.site-header,
#masthead,
.ast-primary-header-bar,
.wp-block-group.alignfull,
.entry-content,
.ast-article-inner,
.ast-card-blog-layout-1 {
    background-color: var(--color-surface);
}

/* Акцентный цвет — ссылки и кнопки */
a {
    color: var(--color-secondary);
}
a:hover {
    color: var(--color-accent);
}

.wp-block-button__link,
.wp-element-button {
    background-color: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
}

/* Заголовки */
h1, h2, h3, h4, h5, h6,
.entry-title,
.ast-blog-single-element.ast-blog-title a {
    color: var(--color-text);
    font-family: var(--font-family);
}

/* Разделители и рамки */
.chindogu-related,
.chindogu-tags,
.chindogu-footer {
    border-color: var(--color-border) !important;
}

.entry-content h2 { font-size: var(--font-size-h2); line-height: var(--line-height-tight); }
.entry-content h3 { font-size: var(--font-size-h3); line-height: var(--line-height-tight); }
.entry-content p  { font-size: var(--font-size-base); line-height: var(--line-height-relaxed); margin-bottom: 1.5rem; }

/* U-12: Микроанимации — fade-in при загрузке */
@keyframes chindogu-fadein {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}

.ast-article-post,
.ast-grid-post-type-2 {
    animation: chindogu-fadein .4s ease both;
}

.ast-article-post:nth-child(2), .ast-grid-post-type-2:nth-child(2) { animation-delay: .05s; }
.ast-article-post:nth-child(3), .ast-grid-post-type-2:nth-child(3) { animation-delay: .10s; }
.ast-article-post:nth-child(4), .ast-grid-post-type-2:nth-child(4) { animation-delay: .15s; }
.ast-article-post:nth-child(5), .ast-grid-post-type-2:nth-child(5) { animation-delay: .20s; }
.ast-article-post:nth-child(6), .ast-grid-post-type-2:nth-child(6) { animation-delay: .25s; }

/* U-10: Фильтр по тегам */
.chindogu-filter {
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
    margin: 1.5em 0;
    padding: 1em 0;
    border-bottom: 1px solid #e8e8e8;
}

.chindogu-filter-btn {
    display: inline-block;
    padding: .35em .9em;
    background: #f4f4f4;
    border: 1px solid #ddd;
    border-radius: 20px;
    font-size: .85em;
    font-weight: 600;
    color: #444;
    cursor: pointer;
    transition: background .18s, color .18s, border-color .18s;
    line-height: 1.4;
}

.chindogu-filter-btn:hover {
    background: #333;
    color: #fff;
    border-color: #333;
}

.chindogu-filter-btn.active {
    background: var(--ast-global-color-0, #333);
    color: #fff;
    border-color: var(--ast-global-color-0, #333);
}

/* U-11: Кнопка «Случайный чиндогу» — десктоп справа, мобильный слева */
#chindogu-random {
    position: fixed !important;
    bottom: 4.5rem !important;
    right: 1.5rem !important;
    left: auto !important;
    z-index: 99999 !important;
}

@media (max-width: 768px) {
    #chindogu-random {
        right: auto !important;
        left: 1rem !important;
        transition: bottom 0.3s ease !important;
    }
}

/* D-01: Hero — чёрный жирный текст с белой тенью для читаемости на фото */
.wp-block-group.alignfull h1,
.wp-block-group.alignfull p {
    color: #111111;
    text-shadow: 0 1px 0 rgba(255,255,255,.9), 0 2px 6px rgba(255,255,255,.5);
}

/* V-02: Hero — высота баннера -20% от инлайн-значений (было 2.8rem → 2.24rem) */
.wp-block-group.alignfull:has(.wp-block-heading) {
    padding-top: 2.24rem !important;
    padding-bottom: 2.24rem !important;
}

/* V-02: Hero — адаптивный заголовок, воздух */
.wp-block-group.alignfull h1.wp-block-heading {
    font-size: clamp(32px, 5vw, 56px) !important;
    letter-spacing: -1px !important;
    margin-bottom: 16px !important;
}

.wp-block-group.alignfull > .is-layout-flow > p,
.wp-block-group.alignfull p {
    font-size: clamp(15px, 1.8vw, 20px) !important;
    max-width: 640px;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* A-09: CLS — уменьшаем min-height баннера на 25% */
.wp-block-group.alignfull:has(.wp-block-heading) {
    min-height: 124px;
}

/* D-05: Табличка-заповедь на полях */
.chindogu-commandment-wrap {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    margin-bottom: .25rem;
}

.chindogu-tablet {
    flex-shrink: 0;
    width: auto;
    height: 8em;
}

@media (max-width: 600px) {
    .chindogu-tablet {
        height: 4em;
    }
}

.chindogu-tablet {
    vertical-align: middle;
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.18));
}

.chindogu-commandment-wrap h3 {
    margin: 0;
}

/* D-07: Floating labels — форма Forminator */
.forminator-field {
    position: relative;
    margin-bottom: 1.75rem !important;
}

.forminator-input,
.forminator-textarea,
.forminator-select {
    border: none !important;
    border-bottom: 2px solid var(--color-border, #e0d5c8) !important;
    border-radius: 0 !important;
    background: transparent !important;
    padding: 1.4rem 0 .4rem !important;
    font-size: 1rem !important;
    color: var(--color-text, #373737) !important;
    transition: border-color .2s !important;
    box-shadow: none !important;
    width: 100% !important;
}

.forminator-input:focus,
.forminator-textarea:focus {
    border-bottom-color: var(--color-accent, #E1291A) !important;
    outline: none !important;
    box-shadow: none !important;
}

.forminator-label {
    position: absolute !important;
    top: 1.2rem !important;
    left: 0 !important;
    font-size: 1rem !important;
    color: var(--color-muted, #888) !important;
    pointer-events: none !important;
    transition: top .18s, font-size .18s, color .18s !important;
}

.forminator-input:focus ~ .forminator-label,
.forminator-input:not(:placeholder-shown) ~ .forminator-label,
.forminator-textarea:focus ~ .forminator-label,
.forminator-textarea:not(:placeholder-shown) ~ .forminator-label {
    top: 0 !important;
    font-size: .75rem !important;
    color: var(--color-accent, #E1291A) !important;
}

.forminator-input::placeholder,
.forminator-textarea::placeholder {
    color: transparent !important;
}

.forminator-btn-submit {
    background: var(--color-accent, #E1291A) !important;
    border: none !important;
    border-radius: 8px !important;
    color: #fff !important;
    font-weight: 700 !important;
    padding: .8em 2em !important;
    transition: transform .15s, box-shadow .15s !important;
}

.forminator-btn-submit:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 16px rgba(225,41,26,.3) !important;
}

/* D-08: Scrollytelling — временно отключено */

/* D-09: Кастомный курсор */
body.chindogu-custom-cursor,
body.chindogu-custom-cursor * {
    cursor: none !important;
}

.chindogu-cursor {
    position: fixed;
    top: 0; left: 0;
    width: 18px; height: 18px;
    border: 2px solid var(--color-accent, #E1291A);
    border-radius: 50%;
    pointer-events: none;
    z-index: 999999;
    transform: translate(-50%, -50%);
    transition: width .15s, height .15s, background .15s, border-color .15s;
}

.chindogu-cursor.hover {
    width: 36px;
    height: 36px;
    background: rgba(225,41,26,.12);
}

/* D-10: Bottom tab bar — мобильная навигация */
.chindogu-bottom-nav {
    display: none;
}

@media (max-width: 768px) {
    /* Nav: скрыт по умолчанию, появляется при скролле через класс на body */
    .chindogu-bottom-nav {
        display: flex !important;
        position: fixed !important;
        bottom: -80px !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 99990 !important;
        background: #fff !important;
        border-top: 1px solid var(--color-border, #e0d5c8) !important;
        box-shadow: 0 -2px 12px rgba(0,0,0,.08) !important;
        padding: .4rem 0 env(safe-area-inset-bottom, .4rem) !important;
        transition: bottom 0.3s ease !important;
    }

    body.chindogu-nav-visible .chindogu-bottom-nav {
        bottom: 0 !important;
    }

    .chindogu-bottom-nav a {
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: .2rem;
        font-size: .62rem;
        font-weight: 600;
        color: var(--color-muted, #888);
        text-decoration: none;
        padding: .35rem .2rem;
        transition: color .18s;
        line-height: 1.2;
    }

    .chindogu-bottom-nav a:hover,
    .chindogu-bottom-nav a.active {
        color: var(--color-accent, #E1291A);
    }

    .chindogu-bottom-nav a svg {
        width: 22px; height: 22px;
        stroke: currentColor;
        fill: none;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    /* Кнопка «Случайный» — выравниваем по кнопке «Наверх» */
    #chindogu-random {
        bottom: 5.5rem !important;
        transition: bottom 0.3s ease !important;
    }

    /* Кнопка «Наверх» — поднять когда nav видно */
    body.chindogu-nav-visible #ast-scroll-top {
        bottom: 5.5rem !important;
    }
}

/* D-03: Bento Grid — галерея */
.ast-blog-posts-wrap {
    display: grid !important;
    grid-template-columns: repeat(12, 1fr) !important;
    gap: 1.25rem !important;
    align-items: start;
}

/* Базовый элемент: 4 колонки (3 в ряд) */
.ast-blog-posts-wrap > * {
    grid-column: span 4;
    border-radius: 12px;
    overflow: hidden;
    background: var(--color-surface);
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    position: relative;
}

/* Featured: каждый 3-й — широкая карточка (8 колонок, 2 строки) */
.ast-blog-posts-wrap > *:nth-child(3n) {
    grid-column: span 8;
}

/* D-04: Glassmorphism — подпись при наведении */
.ast-blog-posts-wrap > * .entry-title {
    position: relative;
    z-index: 1;
}

.ast-blog-posts-wrap > * .ast-blog-single-element.ast-blog-thumbnail {
    position: relative;
    overflow: hidden;
}

.ast-blog-posts-wrap > * .ast-blog-single-element.ast-blog-thumbnail::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(55,55,55,.65) 0%, transparent 55%);
    opacity: 0;
    transition: opacity .25s;
}

.ast-blog-posts-wrap > *:hover .ast-blog-single-element.ast-blog-thumbnail::after {
    opacity: 1;
}

/* Планшет: 2 колонки, каждый 3-й — полная ширина */
@media (max-width: 900px) {
    .ast-blog-posts-wrap {
        grid-template-columns: repeat(6, 1fr) !important;
    }
    .ast-blog-posts-wrap > * {
        grid-column: span 3;
    }
    .ast-blog-posts-wrap > *:nth-child(3n) {
        grid-column: span 6;
    }
}

/* Мобильный: 1 колонка */
@media (max-width: 600px) {
    .ast-blog-posts-wrap {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }
    .ast-blog-posts-wrap > *,
    .ast-blog-posts-wrap > *:nth-child(3n) {
        grid-column: span 1;
    }
}

/* U-07: Sticky header */
.site-header,
#masthead,
.ast-primary-header-bar {
    position: sticky;
    top: 0;
    z-index: 999;
    box-shadow: 0 2px 8px rgba(0,0,0,.07);
    background: #fff;
}

/* U-07 mobile: скрывать хедер при скролле вниз (через top, не transform — совместимо с mobile menu) */
@media (max-width: 768px) {
    .site-header,
    #masthead {
        transition: top 0.3s ease;
    }
    body.chindogu-header-hidden .site-header,
    body.chindogu-header-hidden #masthead {
        top: -200px !important;
    }
}

/* D-06: Логотип */
.custom-logo-link img,
.custom-logo-link .astra-logo-svg {
    width: 96px !important;
    max-width: 96px !important;
    height: auto !important;
}
@media (max-width: 768px) {
    .custom-logo-link img,
    .custom-logo-link .astra-logo-svg {
        width: 58px !important;
        max-width: 58px !important;
    }
}

/* D-06: Хедер — убираем отступы сверху/снизу на -15% */
#ast-desktop-header .ast-builder-layout-element,
#ast-mobile-header .ast-builder-layout-element {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}
#ast-desktop-header .ast-above-header-bar,
#ast-mobile-header .ast-above-header-bar {
    min-height: 0 !important;
}

/* D-06: Навигация — шрифт +1 размер, жирный */
.main-header-menu .menu-link,
.main-header-bar-navigation .menu-link {
    font-size: 1.05rem !important;
    font-weight: 700 !important;
}

/* U-05 / V-04: CTA-кнопки — пилюля, градиент, тень */
.wp-block-button__link,
.wp-element-button {
    background: linear-gradient(135deg, #E1291A 0%, #b81f12 100%) !important;
    border-color: transparent !important;
    border-radius: 50px !important;
    padding: 15px 34px !important;
    font-weight: 700 !important;
    letter-spacing: 0.4px !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(225,41,26,.25);
    transition: box-shadow .3s, transform .3s !important;
}
.wp-block-button__link:hover,
.wp-element-button:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 10px 24px rgba(225,41,26,.42) !important;
    text-decoration: none;
    color: #fff !important;
}
.wp-block-button__link:active,
.wp-element-button:active {
    transform: scale(0.97) !important;
    box-shadow: 0 2px 6px rgba(225,41,26,.2) !important;
}

/* U-08: Hover-эффект на карточках галереи */
.ast-article-post,
.ast-grid-post-type-2,
.ast-article-inner {
    transition: transform .2s, box-shadow .2s;
}
.ast-article-post:hover,
.ast-grid-post-type-2:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0,0,0,.11);
}

/* U-06: Responsive card grid — gallery archive */
.ast-archive-description + .ast-row,
.ast-blog-posts-wrap {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: var(--space-lg, 1.5rem);
}
@media (max-width: 600px) {
    .ast-blog-posts-wrap {
        grid-template-columns: 1fr;
    }
}

/* U-02: Line-clamp — обрезаем длинные заголовки до 2 строк */
.ast-article-post .entry-title,
.ast-grid-post-type-2 .entry-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* A-14: Breadcrumbs */
.chindogu-breadcrumbs {
    font-size: .82em;
    color: #888;
    margin-bottom: .75em;
    padding: .25em 0;
}

.chindogu-breadcrumbs a {
    color: #666;
    text-decoration: none;
}

.chindogu-breadcrumbs a:hover {
    color: #222;
    text-decoration: underline;
}

.chindogu-breadcrumbs .breadcrumb_last {
    color: #444;
}

/* A-10: CLS — резервируем размеры элементов чтобы не было сдвигов */

/* Логотип — фиксированный размер, не прыгает при загрузке */
.custom-logo {
    width: 81px;
    height: 55px;
    aspect-ratio: 81 / 55;
}

/* Hero-баннер — минимальная высота чтобы страница не прыгала */
.wp-block-group.alignfull:has(.wp-block-heading) {
    min-height: 220px;
}

/* Карточки галереи — фиксированная высота изображения */
.ast-grid-post-type-2 img,
.ast-article-post img,
.entry-thumbnail img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

/* A-07: Footer */
.chindogu-footer {
    text-align: center;
    padding: 1.5em 1em;
    margin-top: 2em;
    border-top: 1px solid #e0e0e0;
    background: var(--color-bg, #f7f7f7);
    font-size: .85em;
    color: #666;
}

.chindogu-footer a {
    color: #555;
    text-decoration: none;
}

.chindogu-footer a:hover {
    color: #222;
    text-decoration: underline;
}

/* T-08: Теги под статьёй */
.chindogu-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .5em;
    margin-top: 2em;
    padding-top: 1.2em;
    border-top: 2px solid #e8e8e8;
}

.chindogu-tag {
    display: inline-block;
    padding: .3em .75em;
    background: #f4f4f4;
    border: 1px solid #ddd;
    border-radius: 20px;
    font-size: .82em;
    font-weight: 600;
    color: #444;
    text-decoration: none;
    transition: background .2s, color .2s;
}

.chindogu-tag:hover {
    background: #333;
    color: #fff;
    border-color: #333;
    text-decoration: none;
}

/* T-07: Блок "Смотри также" — mobile-first */

/* Фикс: картинки в контенте статьи не должны вылезать за край */
.entry-content figure.wp-block-image {
    max-width: 100%;
    box-sizing: border-box;
}
.entry-content figure.wp-block-image img {
    max-width: 100% !important;
    height: auto !important;
}

/* Блок "Смотри также" */
.chindogu-related {
    margin-top: 2.5em;
    padding-top: 1.5em;
    border-top: 2px solid #e8e8e8;
    text-align: center;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

.chindogu-related h3 {
    font-size: 1.1em;
    font-weight: 700;
    margin-bottom: 1em;
    color: #333;
    text-transform: uppercase;
    letter-spacing: .05em;
}

/* Mobile: 2 колонки */
.chindogu-related-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1em;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}

.chindogu-related-card:nth-child(n+3) {
    display: none;
}

/* Планшет: 3 колонки */
@media (min-width: 601px) {
    .chindogu-related-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .chindogu-related-card:nth-child(n+3) {
        display: block;
    }
    .chindogu-related-card:nth-child(n+4) {
        display: none;
    }
}

/* ПК: 5 колонок */
@media (min-width: 901px) {
    .chindogu-related-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
    .chindogu-related-card:nth-child(n+4) {
        display: block;
    }
}

.chindogu-related-card {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    overflow: visible;
    transition: box-shadow .2s;
    text-decoration: none;
    color: inherit;
    display: block;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    background: #fff;
}

/* Скругление углов только для картинки */
.chindogu-related-card picture,
.chindogu-related-card img,
.chindogu-related-card-noimg {
    border-radius: 6px 6px 0 0;
    overflow: hidden;
}

.chindogu-related-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,.12);
    text-decoration: none;
    color: inherit;
}

.chindogu-related-card img {
    width: 100%;
    height: 130px;
    object-fit: cover;
    display: block;
    max-width: 100% !important;
}

.chindogu-related-card-noimg {
    width: 100%;
    height: 130px;
    background: #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2em;
}

.chindogu-related-card p {
    margin: 0;
    padding: .75em;
    font-size: .85em;
    font-weight: 600;
    line-height: 1.4;
    color: #222;
    text-align: left;
    word-break: break-word;
}

/* =====================================================
   V-01: Блок «Последние чиндогу» — CSS Grid, равные строки
   ===================================================== */

/* Переключаем с flex на CSS Grid — равная высота карточек в строке */
ul.wp-block-latest-posts.is-grid {
    display: grid !important;
    gap: 1.25rem !important;
    align-items: stretch !important;
    grid-template-columns: repeat(3, 1fr) !important;
}

/* Планшет (601–900px): 2 колонки */
@media (max-width: 900px) {
    ul.wp-block-latest-posts.is-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Мобильный (≤ 600px): 1 колонка */
@media (max-width: 600px) {
    ul.wp-block-latest-posts.is-grid {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }
}

/* Grid сам управляет шириной — убираем flex-овые margin/width */
ul.wp-block-latest-posts.is-grid li {
    width: auto !important;
    margin: 0 !important;
    position: relative;
    background: var(--color-surface, #fff);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    display: flex;
    flex-direction: column;
    transition: transform .2s, box-shadow .2s;
}

ul.wp-block-latest-posts.is-grid li:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0,0,0,.11);
}

/* Изображение — фиксированная высота */
.wp-block-latest-posts__featured-image,
.wp-block-latest-posts__featured-image picture {
    display: block;
    width: 100%;
    height: 200px;
    overflow: hidden;
    flex-shrink: 0;
}

.wp-block-latest-posts__featured-image img {
    width: 100% !important;
    height: 200px !important;
    object-fit: cover !important;
    display: block !important;
}

/* Заголовок */
a.wp-block-latest-posts__post-title {
    display: block;
    padding: .7rem .75rem .3rem;
    font-weight: 700;
    font-size: .95rem;
    line-height: 1.35;
    color: var(--color-text, #373737) !important;
    text-decoration: none !important;
}

a.wp-block-latest-posts__post-title:hover {
    color: var(--color-accent, #E1291A) !important;
    text-decoration: none !important;
}

/* Вся карточка кликабельна через псевдоэлемент */
a.wp-block-latest-posts__post-title::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
}

/* Анонс — первое предложение (JS обрезает контент, overflow на случай ошибки) */
.wp-block-latest-posts__post-excerpt {
    padding: 0 .75rem .7rem;
    font-size: .84rem;
    color: #666;
    line-height: 1.5;
    margin: 0;
    flex-grow: 1;
}

/* Мобильный: excerpt скрыт */
@media (max-width: 600px) {
    .wp-block-latest-posts__post-excerpt {
        display: none;
    }
    .wp-block-latest-posts__featured-image,
    .wp-block-latest-posts__featured-image picture,
    .wp-block-latest-posts__featured-image img {
        height: 180px !important;
    }
}

/* =====================================================
   V-05: Обёртка + градиент + кнопка «Смотреть всё»
   ===================================================== */

.chindogu-latest-wrap {
    position: relative;
}

/* Ограничение высоты — desktop: ~5.5 строки карточек (5.5×310 + 5×20 = 1805) */
.chindogu-latest-wrap .wp-block-latest-posts.is-grid {
    overflow: hidden;
    max-height: 1820px;
}

/* Планшет: ~6.5 строки (6.5×310 + 6×20 = 2135) */
@media (max-width: 900px) {
    .chindogu-latest-wrap .wp-block-latest-posts.is-grid {
        max-height: 2150px;
    }
}

/* Мобильный: ~7.5 строки (7.5×230 + 7×16 = 1837) */
@media (max-width: 600px) {
    .chindogu-latest-wrap .wp-block-latest-posts.is-grid {
        max-height: 1840px;
    }
}

/* Градиент снизу — ~95% последней строки скрыто */
.chindogu-latest-wrap::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 380px;
    background: linear-gradient(
        to top,
        var(--color-bg, #f7f7f7) 0%,
        var(--color-bg, #f7f7f7) 55%,
        transparent 100%
    );
    pointer-events: none;
    z-index: 1;
}

/* Кнопка «Смотреть всё» */
a.chindogu-see-more {
    position: absolute;
    bottom: 32px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    background: var(--color-accent, #E1291A);
    color: #fff !important;
    border-radius: 50px;
    padding: 13px 36px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.4px;
    text-decoration: none !important;
    display: inline-block;
    white-space: nowrap;
    box-shadow: 0 4px 14px rgba(225,41,26,.28);
    transition: box-shadow .25s, transform .25s;
}

a.chindogu-see-more:hover {
    color: #fff !important;
    text-decoration: none !important;
    box-shadow: 0 8px 24px rgba(225,41,26,.42);
    transform: translateX(-50%) scale(1.05);
}

/* M-02: блок "Придумай свой чиндогу" — отступ снизу под плавающие кнопки */
@media (max-width: 767px) {
    .wp-block-group.alignfull.has-background:last-of-type {
        padding-bottom: 8rem !important;
    }
}

