/* Shared target height for all slides in marquee */
.ejw-slick.marquee .slick-slide {
  /*height: 640px;               adjust this to your desired marquee height */
  display: flex !important;   /* let inner wrapper center nicely */
  align-items: center;
  justify-content: center;
}

/* Images */
.ejw-slick.marquee .ejw-img {
  height: 100%;
  width: auto;                /* scale proportionally */
  display: block;
  padding: 0 10px;
}

/* Videos / iframes */
.ejw-slick.marquee .ejw-embed-wrapper {
  height: 100%;
  width: auto;                /* dynamic width */
  aspect-ratio: auto;         /* allow height to dictate width */
  position: relative;
}

.ejw-slick.marquee .ejw-embed-wrapper iframe,
.ejw-slick.marquee .ejw-embed-wrapper video {
  height: 100%;
  width: auto;
  max-width: none;            /* don’t constrain by parent */
  border: 0;
  object-fit: cover;          /* for <video> */
  pointer-events: none;       /* background-style, non-interactive */
}

/* Lane sizing per instance */
.ejw-slick.equal-height .slick-slide {
  display: flex !important;     /* let content box center */
  align-items: center;
  justify-content: center;
}

/* The content box that gets a fixed height or max-height inline */
.ejw-media-box {
  display: flex;
  align-items: center;
  justify-content: center;
  /* height or max-height is injected inline per instance */
}

/* Images scale by height */
.ejw-media-box .ejw-img {
  height: 100%;
  width: auto;
  display: block;
}

/* Videos / iframes scale by height */
.ejw-media-box iframe,
.ejw-media-box video {
  height: 100%;
  width: auto;
  max-width: none;
  border: 0;
}

/* Marquee "background" behavior: non-interactive */
.ejw-embed-bg { pointer-events: none; }

/* Optional: if you want video to fully fill the box (may crop) */
.ejw-media-box video { object-fit: cover; }