/* ===== Reusable Kanji Promo Section Styles (prefix: _kanjipero_) ===== */
        ._kanjipero_promo {
            background: #fff;
        }

        ._kanjipero_card {
            border: 1px solid rgba(0, 0, 0, .08);
            border-radius: 16px;
            box-shadow: 0 6px 18px rgba(0, 0, 0, .06);
            overflow: hidden;
        }

        /* Make the whole image tile feel clickable */
        ._kanjipero_image_link {
            display: block;
            height: 100%;
            text-decoration: none;
            outline: none;
        }

        ._kanjipero_image_link:focus-visible {
            box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, .25);
        }

        ._kanjipero_image_wrap {
            position: relative;
            height: 100%;
            min-height: 220px;
            background: #f8f9fa;
        }

        ._kanjipero_image {
            object-fit: contain;
            width: 100%;
            height: 100%;
        }

        /* Small “clickable” hint on hover for pointer feedback */
        ._kanjipero_image_link:hover ._kanjipero_image {
            filter: brightness(0.98);
        }

        /* Tweak spacing on smaller viewports */
        @media (max-width: 767.98px) {
            ._kanjipero_text_col {
                padding-top: 1rem;
            }
        }