/* V3.8.9 final: carrusel Películas que debes ver */
#humanImpactMoviesSafeSection {
  overflow: hidden !important;
  margin-top: 1.35rem !important;
  margin-bottom: 1.45rem !important;
  color: var(--text, var(--text-primary, inherit)) !important;
}

#humanImpactMoviesSafeSection .section-head {
  margin-bottom: .8rem !important;
}

#humanImpactMoviesSafeSection h2 {
  font-size: clamp(1.65rem, 2.5vw, 2.35rem) !important;
}

#humanImpactMoviesSafeSection .human-impact-safe-subtitle,
#humanImpactMoviesSafeSection [data-human-impact-subtitle] {
  max-width: 820px !important;
  color: color-mix(in srgb, var(--text, #fff) 74%, transparent) !important;
}

#humanImpactMoviesSafeRail {
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 370px !important;
  overflow: hidden !important;
  padding: .8rem 0 1.2rem !important;
  gap: 1rem !important;
  mask-image: linear-gradient(90deg, transparent 0, black 4%, black 96%, transparent 100%);
  -webkit-mask-image: linear-gradient(90deg, transparent 0, black 4%, black 96%, transparent 100%);
}

.human-impact-infinite-track {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 1rem !important;
  width: max-content !important;
  min-width: max-content !important;
  animation: humanImpactInfiniteScroll var(--human-impact-duration, 180s) linear infinite;
  will-change: transform;
}

#humanImpactMoviesSafeRail:hover .human-impact-infinite-track {
  animation-play-state: paused;
}

.human-impact-safe-card {
  flex: 0 0 178px !important;
  width: 178px !important;
  min-width: 178px !important;
  max-width: 178px !important;
  min-height: 350px !important;
  padding: 10px !important;
  border-radius: 18px !important;
  color: var(--text, var(--text-primary, inherit)) !important;
  background:
    linear-gradient(145deg,
      color-mix(in srgb, var(--card-bg, var(--surface, #161b24)) 92%, transparent),
      color-mix(in srgb, var(--surface-2, var(--glass-bg, #222936)) 76%, transparent)
    ) !important;
  border: 1px solid color-mix(in srgb, var(--border-color, rgba(255,255,255,.16)) 80%, transparent) !important;
  box-shadow: var(--shadow-md, 0 16px 44px rgba(0,0,0,.18)) !important;
  backdrop-filter: blur(12px) saturate(1.06) !important;
  -webkit-backdrop-filter: blur(12px) saturate(1.06) !important;
}

.human-impact-safe-poster {
  height: 245px !important;
  border-radius: 14px !important;
  margin-bottom: .55rem !important;
  background-size: cover !important;
  background-position: center !important;
  background-color: color-mix(in srgb, var(--surface-2, #222936) 88%, transparent) !important;
  border: 1px solid color-mix(in srgb, var(--border-color, rgba(255,255,255,.16)) 70%, transparent) !important;
}

.human-impact-safe-poster.is-empty {
  display: grid;
  place-items: center;
  text-align: center;
  padding: 1rem;
  color: color-mix(in srgb, var(--text, #fff) 72%, transparent);
  background:
    radial-gradient(circle at top, color-mix(in srgb, var(--accent, #3daee9) 18%, transparent), transparent 58%),
    color-mix(in srgb, var(--surface-2, #222936) 90%, transparent) !important;
}

.human-impact-safe-poster.is-empty::after {
  content: "Sin portada";
  font-weight: 800;
  opacity: .75;
}

.human-impact-safe-rank {
  display: inline-flex !important;
  min-width: 30px !important;
  height: 22px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  font-size: .76rem !important;
  font-weight: 900 !important;
  margin-bottom: .32rem !important;
  color: var(--accent, #3daee9) !important;
  background: color-mix(in srgb, var(--accent, #3daee9) 14%, transparent) !important;
  border: 1px solid color-mix(in srgb, var(--accent, #3daee9) 34%, transparent) !important;
}

.human-impact-safe-title {
  font-size: .93rem !important;
  line-height: 1.15 !important;
  margin: 0 0 .25rem !important;
  color: var(--text, var(--text-primary, inherit)) !important;
}

.human-impact-safe-description {
  font-size: .78rem !important;
  line-height: 1.25 !important;
  color: color-mix(in srgb, var(--text, #fff) 74%, transparent) !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 !important;
}

.human-impact-safe-action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: .55rem !important;
  padding: .48rem .68rem !important;
  border-radius: 999px !important;
  font-size: .76rem !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  background: var(--accent, var(--accent-color, #3daee9)) !important;
  color: var(--accent-contrast, #06111b) !important;
}

.human-impact-safe-empty {
  color: color-mix(in srgb, var(--text, #fff) 75%, transparent) !important;
  padding: 1rem 0 1.6rem !important;
}

@keyframes humanImpactInfiniteScroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (max-width: 760px) {
  #humanImpactMoviesSafeRail { min-height: 346px !important; }
  .human-impact-safe-card {
    flex-basis: 158px !important;
    width: 158px !important;
    min-width: 158px !important;
    max-width: 158px !important;
    min-height: 330px !important;
  }
  .human-impact-safe-poster { height: 225px !important; }
  .human-impact-infinite-track { gap: .85rem !important; }
}
