/* Shared ytModal, extracted from the Live page. Native dialog supplies modal focus containment. */
#ytModal { position: fixed; inset: 0; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; padding: 48px 0; border: 0; background: transparent; color: #fff; overflow: auto; }
#ytModal:not([open]) { display: none; }
#ytModal[open] { display: flex; align-items: center; justify-content: center; }
#ytModal::backdrop { background: transparent; }
#ytModal .yt-modal-mask { position: fixed; inset: 0; background: rgba(0,0,0,.85); }
#ytModal .yt-modal-box { position: relative; width: 90%; max-width: 960px; }
#ytModal .yt-modal-close { position: absolute; top: -40px; right: 0; width: 40px; height: 40px; padding: 0; border: 0; background: transparent; color: #fff; font-size: 36px; line-height: 40px; cursor: pointer; }
#ytModal .yt-video-wrap { position: relative; min-height: 200px; padding-top: 56.25%; background: #000; }
#ytModal iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
#ytModal .yt-modal-fallback { display: block; width: fit-content; margin-top: 12px; color: #fff; text-decoration: underline; font-size: 14px; }
#ytModal button:focus-visible, #ytModal a:focus-visible { outline: 2px solid #f98715; outline-offset: 3px; }
.aifo-youtube-modal-open .hv3r-track,.aifo-youtube-modal-open .ls-highlight-track { animation-play-state: paused !important; }
.hv3r-image-card--playable { position: relative; color: inherit; text-decoration: none; cursor: pointer; }
.hv3r-image-card--playable:focus-visible { outline: 2px solid var(--brand, #f98715); outline-offset: -2px; }
.hv3r-image-card__media { display: block; position: relative; width: 100%; }
.hv3r-image-card__play { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--brand, #f98715); box-shadow: 0 0 0 1px rgba(255,255,255,.3); pointer-events: none; }
.hv3r-image-card__play::after { content: ''; margin-left: 3px; border-top: 7px solid transparent; border-bottom: 7px solid transparent; border-left: 11px solid #fff; }
