/* =========================================
   MEDIA V2 - estilos multimedia reutilizables
========================================= */
.media-player,
.media-player img,
.media-player video,
.media-player iframe {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border: 0;
  background: #000;
}

.slide {
  position: relative;
  overflow: hidden;
}

.slide > a {
  display: block;
  width: 100%;
  height: 100%;
}

.slide-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-size: cover;
  background-position: center;
  filter: blur(18px);
  transform: scale(1.08);
  opacity: .38;
}

.slide img,
.slide video,
.slide iframe {
  position: relative;
  z-index: 2;
}

.slide-overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  padding: 24px 24px 26px;
  background: linear-gradient(to top, rgba(0,0,0,.58), rgba(0,0,0,.18), transparent);
  color: #fff;
}

.slide-overlay h2 { margin: 0 0 8px; }
.slide-overlay p { margin: 0 0 14px; }

.hero-slider .media-player {
  width: 100%;
  height: 100%;
  display: block;
}

.hero-slider iframe.media-player { min-height: 100%; }
.hero-slider .slide,
.hero-slider .slider { min-height: 320px; }

@media (max-width: 900px) {
  .hero-slider .slide,
  .hero-slider .slider { min-height: 240px; }
  .slide-overlay { padding: 16px 16px 18px; }
}

.modal-media,
.post-media-box {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
}

.modal-media .media-player,
.post-media-box .media-player {
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 9;
}

.featured-card .media-player {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

.media-player[data-lazy] {
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
}
.featured-cover-wrap .post-media-box {
  border-radius: 14px;
  overflow: hidden;
}

.featured-card .media-player,
.featured-card video,
.featured-card iframe,
.featured-card img {
  width: 100%;
  display: block;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}