/* Video Slider Overlay Styles - Designed to match video-grid.css */

/* Hero video preview section */
.hero-video-preview {
  width: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  padding: 1rem 0;
  overflow: hidden; /* Hide overflow beyond container */
  position: relative;
  z-index: 1; /* Ensure it sits above the background pattern */
}

/* Container for the slider */
.slider-container {
  max-width: 100%; /* Increased to 1240px to accommodate 300px thumbnails with margins */
  margin: 0 auto;
  overflow: hidden; /* Hide overflow beyond container width */
  position: relative;
}

/* Base slider container settings */
.hero-video-preview .preview-video-slider {
  width: 100%;
  max-width: 100%; /* Match container width */
  margin: 0 auto;
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 8px;
  padding: 20px 40px; /* Padding for content and arrows */
  overflow: visible; /* Allow visible overflow within container only */
}

/* Individual slide styling */
.preview-video-slide {
  width: 300px;
  box-sizing: border-box;
  padding: 0 10px; /* 10px horizontal margins */
}

/* Video card (container) styling - matches video-box */
.preview-video-card {
  background-color: rgba(30, 30, 30, 0.9);
  border-radius: 10px; /* Added 10px rounded edges */
  overflow: hidden;
  display: flex;
  flex-direction: column;
  text-align: left;
  width: 100%; /* Use full width within the slide */
  height: 100%;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  transition: transform 0.3s ease;
}

.preview-video-card:hover {
  transform: translateY(-5px);
}

/* Thumbnail styling - matches video-thumbnail */
.preview-video-thumb {
  text-decoration: none;
  color: inherit;
  display: block;
  width: 100%;
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border-radius: 10px 10px 0 0; /* Rounded top corners to match card */
  flex: 1; /* Take up all available space */
}

.preview-video-thumb img {
  width: 100%;
  aspect-ratio: 16/9; /* Force 16:9 aspect ratio */
  object-fit: cover;
  display: block;
  transition: transform 0.3s ease;
  border-radius: 10px 10px 0 0; /* Match container rounded edges */
  margin: 0;
}

.preview-video-card:hover .preview-video-thumb img {
  transform: scale(1.05);
}

/* Play button overlay */
.preview-video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 2;
}

.preview-video-card:hover .preview-video-overlay {
  opacity: 1;
}

.preview-play-icon {
  transform: scale(0.8);
  transition: transform 0.3s ease;
}

.preview-video-card:hover .preview-play-icon {
  transform: scale(1);
}

.preview-video-slider .slick-prev:before,
.preview-video-slider .slick-next:before {
  font-size: 20px;
  opacity: 1;
  font-family: 'slick';
  line-height: 1;
}

/* /* Video title styling - matches video-title */ - moved to typography.css */
/* .preview-video-title { - moved to typography.css */
  font-size: var(--fs-base, 16px);
  font-weight: var(--fw-bold, 700);
  color: #fff;
  margin: 0;
  line-height: var(--lh-snug, 1.2);
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0.75rem 0.5rem;
  background-color: rgba(20, 20, 20, 0.9);
  border-radius: 0 0 10px 10px; /* Rounded bottom corners to match card */
  height: 43px; /* Fixed height to match content */
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Make sure all links are properly styled */
.preview-video-card-link,
.preview-video-card-link:hover,
.preview-video-card-link:focus {
  text-decoration: none !important;
  border-bottom: none !important;
  color: inherit;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

/* Slick slider fixes */
.preview-video-slider .slick-list {
  margin: 0;
  padding: 0 !important;
}

.preview-video-slider .slick-track {
  display: flex;
  margin-left: 0;
  margin-right: 0;
}

/* Hide slick dots */
.preview-video-slider .slick-dots {
  display: none !important;
}

/* Slick navigation buttons */
.preview-video-slider .slick-prev,
.preview-video-slider .slick-next {
  width: 40px;
  height: 40px;
  background-color: var(--color-primary);
  border-radius: 50%;
  z-index: 10;
  transition: all 0.3s ease;
}

.preview-video-slider .slick-prev {
  left: 10px;
}

.preview-video-slider .slick-next {
  right: 10px;
}

.preview-video-slider .slick-prev:hover,
.preview-video-slider .slick-next:hover {
  background-color: #c4155b;
}

/* Responsive settings */
@media (max-width: 992px) {
  .preview-video-slider {
    max-width: 100%;
  }
}
