
        /* ----- isolated module – affects nothing outside ----- */
        .keyword-deco * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        .keyword-deco {
            display: flex;
            flex-wrap: wrap;
            gap: 0.85rem 1rem;
            align-items: center;
            font-family: 'Inter', 'Segoe UI', Roboto, system-ui, sans-serif;
            background: transparent;
            max-width: 100%;
            line-height: 1.4;
        }

        /* shared badge style – #c724b1 accent */
        .keyword-deco .badge {
            display: inline-flex;
            align-items: center;
            gap: 0.41rem;
            background: linear-gradient(145deg, #fff6fe, #fef0fd);
            border: 1.23px solid #c724b1;
            border-radius: 49px;
            padding: 0.49rem 1.23rem 0.49rem 0.98rem;
            box-shadow: 0 4.9px 13px rgba(199, 36, 177, 0.15);
            font-weight: 500;
            font-size: 0.9rem;
            color: #1e293b;
            backdrop-filter: blur(2px);
            white-space: nowrap;
            transition: 0.1s;
        }

        .keyword-deco .badge i {
            font-style: normal;
            font-size: 1.15rem;
            color: #c724b1;
        }

        .keyword-deco .badge .text {
            background: transparent;
        }

        /* special highlight for the free prototype part */
        .keyword-deco .free-badge {
            background: #c724b1;
            color: white;
            border-color: #a01d8a;
            box-shadow: 0 6.5px 14.7px rgba(199, 36, 177, 0.35);
        }
        .keyword-deco .free-badge i {
            color: white;
        }
        .keyword-deco .free-badge .text {
            color: white;
            font-weight: 600;
        }

        @media (max-width: 600px) {
            .keyword-deco .badge {
                white-space: normal;
                font-size: 0.82rem;
                padding: 0.41rem 0.98rem;
            }
        }
    