#work .project-video .project-art { cursor: pointer; }
#work .project-video .project-art:focus-visible { outline: 3px solid #d8ff61; outline-offset: 5px; }
#work .project-video .project-art iframe { pointer-events: none; opacity: 0; transition: opacity 220ms ease; }
#work .project-video.is-video-previewing .project-art iframe { opacity: 1; }
#work .project-video .project-poster { transition: opacity 220ms ease, transform 420ms cubic-bezier(.2, .65, .25, 1); }
#work .project-video.is-video-previewing .project-poster { opacity: 0; transform: scale(1.025); }
#work .project-video.is-video-previewing .project-art { box-shadow: 0 18px 38px rgba(0, 0, 0, .32); }
@media (prefers-reduced-motion: reduce) { #work .project-video .project-poster, #work .project-video.is-video-previewing .project-poster { transform: none; transition: none; } }
.work-video-modal { position: fixed; inset: 0; z-index: 70; display: grid; place-items: center; padding: 24px; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 180ms ease, visibility 180ms ease; }
.work-video-modal.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.work-video-modal__backdrop { position: absolute; inset: 0; background: rgba(6, 3, 17, .82); backdrop-filter: blur(12px); }
.work-video-modal__dialog { position: relative; width: min(960px, 100%); aspect-ratio: 16 / 9; background: #07030f; box-shadow: 0 30px 90px rgba(0, 0, 0, .58); transform: translateY(12px) scale(.985); transition: transform 220ms cubic-bezier(.2, .65, .25, 1); }
.work-video-modal.is-open .work-video-modal__dialog { transform: translateY(0) scale(1); }
.work-video-modal__dialog iframe { display: block; width: 100%; height: 100%; border: 0; }
.work-video-modal__close { position: absolute; z-index: 1; top: -13px; right: -13px; width: 36px; height: 36px; border: 1px solid rgba(255, 255, 255, .42); border-radius: 50%; background: #1c1043; color: #fff; font: 300 28px/30px Arial, sans-serif; cursor: pointer; }
.work-video-modal-open { overflow: hidden; }
@media (max-width: 640px) { .work-video-modal { padding: 16px; } .work-video-modal__close { top: -10px; right: -4px; } }
