/* MLR Menu Core — product media block and tag lists (1.3.0). Layout only: no colours or fonts,
   the MLR Product Media / MLR Tag List widgets (or the theme) style them. */
.mlr-media { position: relative; }
/* Full width inside Elementor containers: a container that wraps (Elementor's mobile default) otherwise sizes
   the widget to the picture's own width and the image area overflows onto the content below. */
.elementor-widget-mlr_product_media { width: 100%; }
.mlr-media-stage { position: relative; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.mlr-media-main { display: flex; justify-content: center; align-self: stretch; align-items: center; width: 100%; line-height: 0; }
.mlr-media-img { display: block; max-width: 100%; height: auto; }
.mlr-media-video-btn { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; cursor: pointer; line-height: 1.2; }
.mlr-media--video-overlay .mlr-media-video-btn { position: absolute; left: 24px; bottom: 24px; z-index: 2; }
.mlr-media--video-below .mlr-media-video-btn { margin-top: 16px; }
.mlr-media-video-icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; border-radius: 50%; }
.mlr-media-video-btn, .mlr-media-video-icon, .mlr-media-video-icon svg { transition-property: color, background-color, fill; transition-duration: .2s; }
.mlr-media-thumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.mlr-media-thumb { position: relative; display: block; width: 72px; aspect-ratio: 1; overflow: hidden; line-height: 0; }
.mlr-media-thumb img { width: 100%; height: 100%; object-fit: cover; }
.mlr-media-thumb-play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #fff; }
.mlr-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.mlr-tag { display: inline-block; margin: 0; }
