/* Custom VideoJS styling */ .video-container { position: relative; width: 100%; margin-bottom: 20px; overflow: hidden; min-height: 300px; /* Ensure minimum height */ background-color: #000; } /* Home page video containers */ .hero-video .video-container, .videos .video-container { height: 300px; /* Fixed height for homepage videos */ } /* Ensure the video player is properly contained */ .video-js { width: 100%; height: 100% !important; position: relative; } /* Position the video element correctly */ .video-js .vjs-tech, .video-container video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: contain; } /* Fix control bar positioning */ .video-js .vjs-control-bar { /* Ensure the control bar stays within the player's dimensions */ bottom: 0; width: 100%; } /* Additional responsive adjustments */ @media (max-width: 768px) { .video-container { /* More bottom space on mobile */ margin-bottom: 15px; min-height: 200px; } .hero-video .video-container, .videos .video-container { height: 200px; } } /* Video link and overlay styles */ .video-link { display: block; position: relative; text-decoration: none; color: inherit; height: 100%; } .video-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); display: flex; justify-content: center; align-items: center; opacity: 0; transition: opacity 0.3s ease; } .video-link:hover .video-overlay { opacity: 1; } .video-overlay-text { background-color: rgba(0, 0, 0, 0.7); color: white; padding: 10px 20px; border-radius: 4px; font-size: 16px; font-weight: bold; }