/* EO video — facade: ảnh bìa + nút Play (xem eo-video.js). Trình phát chỉ xuất hiện trong lightbox sau khi bấm. */
.eo-video { position: relative; display: block; aspect-ratio: 16 / 9; width: 100%; overflow: hidden; border-radius: var(--r-lg, 14px); background: linear-gradient(135deg, #1f2937, #0b1220); cursor: pointer; text-decoration: none; color: #fff; isolation: isolate; }
.eo-video--portrait { aspect-ratio: 9 / 16; max-width: 360px; margin-inline: auto; }
.eo-video > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease, filter .3s ease; }
.eo-video::after { content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0) 55%); pointer-events: none; }
.eo-video__play { position: absolute; left: 50%; top: 50%; z-index: 2; width: 76px; height: 76px; margin: -38px 0 0 -38px; border-radius: 50%; background: rgba(255, 255, 255, .94); box-shadow: 0 10px 30px rgba(0, 0, 0, .35); transition: transform .22s cubic-bezier(.2, .7, .2, 1), background-color .2s; }
.eo-video__play::before { content: ''; position: absolute; left: 53%; top: 50%; transform: translate(-50%, -50%); border-style: solid; border-width: 13px 0 13px 22px; border-color: transparent transparent transparent var(--c-accent-ink, var(--c-accent, #111)); }
.eo-video:focus-visible > img{ transform: scale(1.04); filter: brightness(.9); }@media (hover: hover) and (pointer: fine){.eo-video:hover > img{ transform: scale(1.04); filter: brightness(.9); }}
.eo-video:focus-visible .eo-video__play{ transform: scale(1.08); background: #fff; }@media (hover: hover) and (pointer: fine){.eo-video:hover .eo-video__play{ transform: scale(1.08); background: #fff; }}
.eo-video:focus-visible { outline: 3px solid var(--c-accent, #0b5ed7); outline-offset: 3px; }
.eo-video__title { position: absolute; left: 16px; right: 16px; bottom: 12px; z-index: 2; font-weight: 700; font-size: 15px; line-height: 1.35; text-shadow: 0 1px 6px rgba(0, 0, 0, .5); }
.eo-video-inline { position: relative; aspect-ratio: 16 / 9; }
.eo-video-inline .eo-lb-video { position: absolute; inset: 0; padding: 0; }
.eo-video-inline .eo-lb-video > * { width: 100%; height: 100%; border: 0; border-radius: var(--r-lg, 14px); background: #000; }
.wp-block-embed .eo-video, .wp-block-video .eo-video { margin: 0; }
.eo-lb-video__link { color: #fff; font-weight: 700; aspect-ratio: auto !important; width: auto !important; background: none !important; }
@media (prefers-reduced-motion: reduce) { .eo-video > img, .eo-video__play { transition: none; } @media (hover: hover) and (pointer: fine){.eo-video:hover > img{ transform: none; }} @media (hover: hover) and (pointer: fine){.eo-video:hover .eo-video__play{ transform: none; }}}