/* Unified optional video modal for slider and banner roles. */
.bb-role-video-launch{position:relative;display:block;width:100%;height:100%;min-height:96px;border:0;padding:0;margin:0;overflow:hidden;background:#101216;color:#fff;cursor:pointer;isolation:isolate;border-radius:inherit}
.bb-role-video-launch .bb-role-video-poster{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.bb-role-video-empty-cover{display:block;width:100%;height:100%;min-height:96px;background:linear-gradient(135deg,#303542,#101216)}
.bb-role-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:rgba(10,13,18,.8);border:1px solid rgba(255,255,255,.8);box-shadow:0 10px 25px #0007;font-size:27px;color:#fff;transition:transform .18s,background .18s}
.bb-role-video-launch:hover .bb-role-video-play,.bb-role-video-launch:focus-visible .bb-role-video-play{transform:translate(-50%,-50%) scale(1.09);background:#d71920}
.bb-role-video-launch:focus-visible{outline:3px solid #0b58ed;outline-offset:2px}
.bb-role-video-inline{display:block;width:100%;height:100%;min-height:180px;border:0;aspect-ratio:16/9;max-width:100%}
.bb-role-slide__media-video .bb-role-video-inline,.bb-role-slide__media-video .bb-role-video-launch{width:100%;height:100%}
.bb-rbb-card-child--media .bb-role-video-launch,.bb-rbb-card-child--media .bb-role-video-inline,.bb-rbb-split__media .bb-role-video-launch,.bb-rbb-split__media .bb-role-video-inline{height:100%;width:100%;min-height:0}
.bb-rbb-el--image>.bb-role-video-inline,.bb-rbb-el--image>.bb-role-video-launch{min-height:180px}
.bb-role-video-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;background:rgba(3,5,10,.86);padding:clamp(12px,3vw,38px);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);direction:rtl}
.bb-role-video-modal[hidden]{display:none!important}
.bb-role-video-modal__window{position:relative;display:flex;flex-direction:column;width:min(1080px,100%);max-height:calc(100dvh - 24px);background:#11151c;border:1px solid #3e4552;border-radius:18px;box-shadow:0 22px 90px #000b;overflow:hidden;color:#fafafa}
.bb-role-video-modal__top{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;min-height:55px;background:#1a1d24}
.bb-role-video-modal__heading{font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bb-role-video-modal__close{background:#2d313a;border:1px solid #414856;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;color:#fff;cursor:pointer;font-size:23px}
.bb-role-video-modal__close:hover{background:#d71920}
.bb-role-video-modal__stage{position:relative;background:#060709;aspect-ratio:16/9;width:100%;min-height:0;overflow:hidden}
.bb-role-video-modal__stage video,.bb-role-video-modal__stage iframe,.bb-role-video-modal__yt{width:100%;height:100%;border:0;display:block;object-fit:contain}
.bb-role-video-modal__bar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;direction:ltr;padding:11px 14px;background:#1b1e25}
.bb-role-video-modal__bar[hidden]{display:none!important}
.bb-role-video-modal__btn{border:1px solid #414854;background:#303540;color:#fff;border-radius:9px;min-width:38px;min-height:36px;padding:5px 10px;cursor:pointer;font-size:15px}
.bb-role-video-modal__btn:hover,.bb-role-video-modal__btn:focus-visible{border-color:#e62c37;background:#4b252c}
.bb-role-video-modal__seek{flex:1 1 130px;min-width:110px;accent-color:#ed1d2d;cursor:pointer}
.bb-role-video-modal__volume{width:86px;accent-color:#ed1d2d;cursor:pointer}
.bb-role-video-modal__time{color:#e0e2e6;font-size:12px;direction:ltr;font-variant-numeric:tabular-nums;white-space:nowrap}
.bb-role-video-modal__speed{height:36px;background:#303540;border:1px solid #414854;color:#fff;border-radius:9px;padding:4px}
.bb-role-video-modal__provider-note{padding:11px 14px;color:#b9c1ce;font-size:12px;text-align:center;background:#1b1e25}
body.bb-role-video-modal-open{overflow:hidden!important}
@media(max-width:640px){.bb-role-video-modal{padding:6px}.bb-role-video-modal__window{border-radius:10px}.bb-role-video-modal__bar{gap:6px;padding:8px}.bb-role-video-modal__volume{width:58px}.bb-role-video-modal__time{font-size:11px}.bb-role-video-play{width:52px;height:52px;font-size:23px}}

/* Interactive overlays must outrank full-card links without hijacking other
   anchors. Promo media previously lived at z-index:-1 and could not be clicked. */
.bb-rbb-el--linked > .bb-role-video-launch,
.bb-rbb-el--linked > .bb-role-video-inline,
.bb-rbb-el--linked .bb-rbb-card-canvas .bb-role-video-launch,
.bb-rbb-el--linked .bb-rbb-card-canvas .bb-role-video-inline {
    pointer-events:auto!important;
}
.bb-rbb-el--promo:has(> .bb-role-video-launch) > .bb-role-video-launch,
.bb-rbb-el--promo:has(> .bb-role-video-inline) > .bb-role-video-inline {
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:auto!important;
}
.bb-rbb-el--promo:has(> .bb-role-video-launch) > .bb-rbb-promo-shade,
.bb-rbb-el--promo:has(> .bb-role-video-inline) > .bb-rbb-promo-shade {
    pointer-events:none!important;
}
.bb-rbb-el--promo:has(> .bb-role-video-launch) > .bb-rbb-promo-copy,
.bb-rbb-el--promo:has(> .bb-role-video-launch) > .bb-rbb-deal-copy {
    position:relative;
    z-index:2;
    pointer-events:none;
}
.bb-rbb-el--promo:has(> .bb-role-video-launch) > .bb-rbb-promo-copy a,
.bb-rbb-el--promo:has(> .bb-role-video-launch) > .bb-rbb-deal-copy a {
    pointer-events:auto;
}

/* Do not impose a video poster's minimum height on a user-sized 100px (or
   smaller) responsive slide. The containing slide owns geometry. */
.bb-role-slide__media-video .bb-role-video-launch,
.bb-role-slide__media-video .bb-role-video-inline,
.bb-role-slide__media-video .bb-role-video-empty-cover {min-height:0!important}

/* A mobile stacked Grid item previously set media height:auto based on an
   in-flow <img> or <video>. Poster buttons and iframe embeds were zero-height.
   Give those cells their own responsive aspect ratio without overlapping text. */
@container bbRbbCard (max-width:440px){
    .bb-rbb-card-canvas[data-layout="grid"][data-stack-mobile="1"] > .bb-rbb-card-child--media:has(> .bb-role-video-launch),
    .bb-rbb-card-canvas[data-layout="grid"][data-stack-mobile="1"] > .bb-rbb-card-child--media:has(> .bb-role-video-inline){
        position:relative!important;
        height:auto!important;
        aspect-ratio:16/9!important;
        min-height:0!important;
        overflow:hidden;
    }
    .bb-rbb-card-canvas[data-layout="grid"][data-stack-mobile="1"] > .bb-rbb-card-child--media > .bb-role-video-launch,
    .bb-rbb-card-canvas[data-layout="grid"][data-stack-mobile="1"] > .bb-rbb-card-child--media > .bb-role-video-inline{
        position:absolute!important;
        inset:0!important;
        width:100%!important;height:100%!important;
        min-height:0!important;
    }
    .bb-rbb-card-canvas[data-layout="grid"][data-stack-mobile="1"] > .bb-rbb-card-child--media .bb-role-video-poster{
        object-fit:var(--bb-card-mobile-fit,contain);
    }
}

.bb-rbb-el--linked .bb-rbb-split__media .bb-role-video-launch,
.bb-rbb-el--linked .bb-rbb-split__media .bb-role-video-inline{
    pointer-events:auto!important;
}
