
.sec-djmm + .sec-djmm { padding-top: 0; }
.djmm-grid { --djmm-gap: 14px; column-count: 1; column-gap: var(--djmm-gap); }
@media (min-width: 600px) { .djmm-grid { column-count: 3; } }
.djmm-item { position: relative; margin: 0 0 var(--djmm-gap); break-inside: avoid; border-radius: 14px; overflow: hidden; background: var(--bg2, #0e0e0f); aspect-ratio: var(--ar); }
.djmm-grid.is-masonry { display: grid; grid-template-columns: minmax(0, 1fr); grid-auto-rows: 2px; column-gap: var(--djmm-gap); row-gap: 0; align-items: start; column-count: auto; }
@media (min-width: 600px) { .djmm-grid.is-masonry { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.djmm-grid.is-masonry .djmm-item { margin: 0; }
.djmm-open, .djmm-play { display: block; width: 100%; height: 100%; position: relative; color: #fff; text-decoration: none; }
.djmm-open { cursor: zoom-in; }
.djmm-img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .6s cubic-bezier(.2,.7,.2,1); }
.djmm-open:hover .djmm-img, .djmm-play:hover .djmm-img { transform: scale(1.03); }
.djmm-open:focus-visible, .djmm-play:focus-visible { outline: 2px solid #b70000; outline-offset: -2px; }
.djmm-play::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,.45)); pointer-events: none; }
.djmm-badge { position: absolute; left: 50%; top: 50%; z-index: 1; width: 64px; height: 64px; margin: -32px 0 0 -32px; border-radius: 50%; display: grid; place-items: center; background: #b70000; color: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.45); transition: transform .25s ease, background .25s ease; }
.djmm-badge svg { margin-left: 3px; }
.djmm-play:hover .djmm-badge, .djmm-play:focus-visible .djmm-badge { transform: scale(1.08); background: #8f0000; }
.djmm-video { display: block; width: 100%; height: 100%; background: #000; object-fit: contain; }
@media (prefers-reduced-motion: reduce) { .djmm-img, .djmm-badge { transition: none; } .djmm-open:hover .djmm-img, .djmm-play:hover .djmm-img { transform: none; } }
