/* A bounded cinema frame; intrinsic media dimensions never change the layout. */
.cbav-section { background: radial-gradient(ellipse at 20% 50%,rgba(106,174,204,.1),transparent 65%); }
.cbav-heading { max-width:1040px; margin:0 auto 28px; display:flex; align-items:end; justify-content:space-between; gap:24px; }
.cbav-heading .cbasco-sec-title { margin-bottom:0; }
.cbav-heading p { max-width:320px; margin:0; color:var(--cb-text-muted,#98a2af); line-height:1.9; }
.cbav-shell { max-width:1040px; margin:auto; padding:8px; border:1px solid rgba(106,174,204,.3); border-radius:24px; background:var(--cb-bg-deep,#0a0e14); box-shadow:0 24px 70px rgba(0,0,0,.2); transition:border-color .35s,box-shadow .35s; }
.cbav-shell:hover { border-color:rgba(106,174,204,.65); box-shadow:0 24px 70px rgba(0,0,0,.25),0 0 35px rgba(106,174,204,.1); }
.cbav-stage { position:relative; aspect-ratio:16/9; overflow:hidden; border-radius:17px; background:#050a10; isolation:isolate; }
.cbav-stage .cbav-player { position:absolute; inset:0; width:100%; height:100%; max-width:none; max-height:none; border:0; object-fit:contain; background:#000; }
.cbav-cover { position:absolute; inset:0; width:100%; height:100%; border:0; padding:20px; cursor:pointer; color:#fff; font:inherit; background:radial-gradient(ellipse at 25% 20%,#285369 0%,transparent 65%),linear-gradient(135deg,#101f2c,#080f17); }
.cbav-cover::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(0deg,rgba(0,0,0,.65),rgba(0,0,0,.08)); }
.cbav-cover img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.7; transition:transform .7s,opacity .7s; }
.cbav-cover:hover img { transform:scale(1.035); opacity:.9; }
.cbav-cover-content { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:15px; }
.cbav-cover-content strong { font-size:clamp(1rem,2.4vw,1.65rem); }
.cbav-cover-content > span:last-child { font-size:.8rem; color:#d0e2ed; }
.cbav-play { display:grid; place-items:center; width:80px; height:80px; border-radius:50%; border:1px solid rgba(255,255,255,.7); background:rgba(106,174,204,.22); backdrop-filter:blur(8px); font-size:26px; padding-left:4px; box-shadow:0 0 0 12px rgba(106,174,204,.08); transition:transform .3s,box-shadow .3s; }
.cbav-cover:hover .cbav-play { transform:scale(1.08); box-shadow:0 0 0 20px rgba(106,174,204,.07); }
.cbav-cover:focus-visible { outline:3px solid #c8a84c; outline-offset:-5px; }
.cbav-caption { display:flex; justify-content:space-between; gap:12px; padding:16px 14px 8px; font-size:.78rem; color:var(--cb-text-muted,#98a2af); }
.cbav-fallback,.cbav-error { text-align:center; font-size:.8rem; margin:18px 0 0; }
.cbav-fallback a { color:var(--cb-text-muted,#98a2af); text-underline-offset:4px; }
.cbav-section [hidden] { display:none!important; }
@media(max-width:640px) {
	.cbav-heading { display:block; }
	.cbav-heading p { max-width:none; margin-top:14px; font-size:.9rem; }
	.cbav-shell { border-radius:16px; padding:5px; }
	.cbav-stage { border-radius:11px; }
	.cbav-play { width:48px; height:48px; font-size:19px; box-shadow:0 0 0 7px rgba(106,174,204,.08); }
	.cbav-cover-content { gap:10px; }
	.cbav-cover-content > span:last-child { display:none; }
	.cbav-caption { flex-direction:column; gap:5px; padding:12px 8px 8px; font-size:.7rem; }
}
@media(prefers-reduced-motion:reduce) {
	.cbav-shell,.cbav-cover img,.cbav-play { transition:none; }
	.cbav-cover:hover img,.cbav-cover:hover .cbav-play { transform:none; }
}
