/* Supplementary CSS for Journal Pages with Video Embeds */

/* Override service-visual for video content */
.service-visual iframe {
    width: 100%;
    height: 100%;
    min-height: 400px;
    border-radius: 8px;
    display: block;
}

/* Ensure the parent container accommodates iframe */
.service-visual {
    position: relative;
    overflow: visible;
}

/* Responsive video wrapper */
.video-wrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
    border-radius: 8px;
    background: #000;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

/* Ensure images still work properly */
.service-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .service-visual iframe {
        min-height: 250px;
    }
}
