/* Homepage brand panels: preserve the source logo, extend its colours behind it. */
.tb-public .tb26-card a.tb26-logo-wrap {
    height: 132px !important;
    min-height: 132px !important;
    padding: 12px 0 !important;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(90deg, var(--tb-brand-left, #f3f5f8), var(--tb-brand-right, #f3f5f8)) !important;
}
.tb-public .tb26-card .tb26-logo {
    width: auto !important;
    height: 100% !important;
    max-width: 82% !important;
    max-height: 108px !important;
    object-fit: contain;
    mask-image: linear-gradient(90deg, transparent, #000 14%, #000 86%, transparent), linear-gradient(0deg, transparent, #000 12%, #000 88%, transparent);
    mask-composite: intersect;
    transition: transform .3s ease;
}
.tb-public .tb26-card .tb26-logo-wrap:hover .tb26-logo { transform: scale(1.035); }
.tb-public .tb26-card .tb26-logo-wrap:focus-visible { outline: 3px solid #ff3155; outline-offset: -3px; }
.tb-public .tb26-card .tb26-logo-fallback { z-index: 1; }
@media (prefers-reduced-motion: reduce) {
    .tb-public .tb26-card .tb26-logo { transition: none; }
}

/* Use the same source-derived background in the other homepage casino lists. */
.tb-public .tb-home-new-card .tb-home-new-brand,
.tb-public .tb26-status-casino .tb26-status-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    isolation: isolate;
    background: linear-gradient(90deg, var(--tb-brand-left, #f3f5f8), var(--tb-brand-right, #f3f5f8)) !important;
}
.tb-public .tb-home-new-card .tb-home-new-brand {
    height: 108px;
    min-height: 108px;
    padding: 10px 0;
}
.tb-public .tb-home-new-card .tb-home-new-brand > img,
.tb-public .tb26-status-casino .tb26-status-logo > img {
    position: relative;
    inset: auto;
    width: auto !important;
    height: 100% !important;
    max-width: 88% !important;
    max-height: 100%;
    object-fit: contain !important;
    object-position: center;
    background: transparent;
    border-radius: 0;
    mask-image: linear-gradient(90deg, transparent, #000 14%, #000 86%, transparent), linear-gradient(0deg, transparent, #000 12%, #000 88%, transparent);
    mask-composite: intersect;
}
.tb-public .tb-home-new-brand[data-brand-panel-ready] .tb-home-new-fallback { display: none; }
.tb-public .tb26-status-casino .tb26-status-logo {
    width: 52px;
    height: 32px;
    flex: 0 0 52px;
    padding: 2px 0;
    border: 0;
    border-radius: 6px;
}



/* Critical hero styles: apply the final watermark before body markup is painted. */

            /* =========================================================
                                                       HERO BRAND WATERMARK — MODERN FADED / ROTATED LOOK
                                                       ========================================================= */

            .tb-public .tb12-top-art {
                position: relative !important;
                min-height: 290px !important;
                display: flex !important;
                flex-direction: column !important;
                align-items: center !important;
                justify-content: flex-end !important;
                overflow: visible !important;
            }

            .tb-public .tb12-top-glow {
                opacity: .55 !important;
            }

            .tb-public .tb12-top-crop {
                position: absolute !important;
                top: 8px !important;
                left: 50% !important;
                width: 455px !important;
                max-width: none !important;
                height: 245px !important;
                display: flex !important;
                align-items: center !important;
                justify-content: center !important;
                overflow: visible !important;
                transform: translateX(-50%) rotate(-7deg) !important;
                transform-origin: center center !important;
                pointer-events: none !important;
            }

                .tb-public .tb12-top-crop img.tb12-top-vector,
                .tb-public .tb12-top-vector {
                    position: static !important;
                    width: 440px !important;
                    max-width: none !important;
                    height: auto !important;
                    max-height: 240px !important;
                    object-fit: contain !important;
                    transform: scale(1.06) !important;
                    clip-path: none !important;
                    filter: saturate(.72) brightness(.92) !important;
                    opacity: .19 !important;
                    user-select: none !important;
                }

            .tb-public .tb12-brand-tagline-row {
                position: relative !important;
                z-index: 5 !important;
                width: 100% !important;
                display: grid !important;
                grid-template-columns: minmax(28px, 1fr) auto minmax(28px, 1fr) !important;
                gap: 15px !important;
                align-items: center !important;
                margin: 0 0 11px !important;
                padding: 0 10px !important;
            }

            .tb-public .tb12-brand-line {
                display: block !important;
                height: 1px !important;
                background: linear-gradient( 90deg, rgba(255,255,255,0), rgba(255,255,255,.34) ) !important;
            }

                .tb-public .tb12-brand-line:last-child {
                    background: linear-gradient( 90deg, rgba(255,255,255,.34), rgba(255,255,255,0) ) !important;
                }

            .tb-public .tb12-top-tagline {
                position: static !important;
                display: inline-flex !important;
                align-items: center !important;
                justify-content: center !important;
                gap: 14px !important;
                width: auto !important;
                min-height: 39px !important;
                margin: 0 !important;
                padding: 9px 25px !important;
                border: 1px solid rgba(255,255,255,.18) !important;
                border-radius: 999px !important;
                background: linear-gradient( 180deg, rgba(255,255,255,.055), rgba(255,255,255,.025) ) !important;
                box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 8px 24px rgba(5,12,26,.10) !important;
                backdrop-filter: blur(4px) !important;
                -webkit-backdrop-filter: blur(4px) !important;
                color: rgba(255,255,255,.82) !important;
                letter-spacing: 3.1px !important;
                text-transform: uppercase !important;
                text-align: center !important;
                white-space: nowrap !important;
                left: auto !important;
                right: auto !important;
                top: auto !important;
                bottom: auto !important;
                transform: none !important;
            }

                .tb-public .tb12-top-tagline b {
                    color: #ff304e !important;
                    letter-spacing: 0 !important;
                }

            @media (max-width: 1199.98px) {
                .tb-public .tb12-top-art {
                    min-height: 270px !important;
                }

                .tb-public .tb12-top-crop {
                    width: 410px !important;
                    height: 225px !important;
                }

                    .tb-public .tb12-top-crop img.tb12-top-vector,
                    .tb-public .tb12-top-vector {
                        width: 395px !important;
                        max-height: 220px !important;
                    }

                .tb-public .tb12-top-tagline {
                    padding-left: 20px !important;
                    padding-right: 20px !important;
                    letter-spacing: 2.5px !important;
                }
            }

            @media (max-width: 991.98px) {
                .tb-public .tb12-top-art {
                    min-height: 240px !important;
                }

                .tb-public .tb12-top-crop {
                    top: 10px !important;
                    width: 340px !important;
                    height: 190px !important;
                    transform: translateX(-50%) rotate(-6deg) !important;
                }

                    .tb-public .tb12-top-crop img.tb12-top-vector,
                    .tb-public .tb12-top-vector {
                        width: 330px !important;
                        max-height: 188px !important;
                        opacity: .18 !important;
                    }

                .tb-public .tb12-brand-tagline-row {
                    gap: 10px !important;
                }

                .tb-public .tb12-top-tagline {
                    min-height: 35px !important;
                    padding: 8px 16px !important;
                    gap: 10px !important;
                    letter-spacing: 2px !important;
                }
            }

            @media (max-width: 575.98px) {
                .tb-public .tb12-top-art {
                    min-height: 215px !important;
                }

                .tb-public .tb12-top-crop {
                    top: 14px !important;
                    width: 285px !important;
                    height: 165px !important;
                    transform: translateX(-50%) rotate(-5deg) !important;
                }

                    .tb-public .tb12-top-crop img.tb12-top-vector,
                    .tb-public .tb12-top-vector {
                        width: 275px !important;
                        max-height: 160px !important;
                        opacity: .17 !important;
                    }

                .tb-public .tb12-brand-tagline-row {
                    grid-template-columns: 18px minmax(0, auto) 18px !important;
                    gap: 7px !important;
                    padding: 0 !important;
                }

                .tb-public .tb12-top-tagline {
                    min-height: 32px !important;
                    padding: 7px 10px !important;
                    gap: 7px !important;
                    letter-spacing: 1.2px !important;
                }
            }
        
