.yt-video {
    position: relative;
    width: 100%;
    max-width: 100%;
    max-height: 600px;
    margin: 20px auto;
    aspect-ratio: 16/9;
    background: #000;
    cursor: pointer;
    overflow: hidden;
}

.yt-video .yt-iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.yt-video.wide {
    aspect-ratio: 16/9;
}

.yt-video.square {
    aspect-ratio: 1/1;
}

.yt-video.vertical {
    aspect-ratio: 9/16;
    max-width: 500px;
}

@media (max-width:768px) {
    .yt-video.vertical {
        max-width: 100%;
        height: 100vh;
        aspect-ratio: auto;
    }
}

.yt-poster {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    transition: transform .4s ease;
}

.yt-video.square .yt-poster,
.yt-video.vertical .yt-poster {
    background-size: cover;
}

.yt-video:hover .yt-poster {
    transform: scale(1.05);
}

/* Inline SVG YouTube logo */
.yt-youtube-logo svg {
    width: 60px;
    margin-bottom: 10px;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, .6));
    fill: #FFFFFF;
}

.yt-video:hover .yt-youtube-logo svg {
    fill: #FF3300;
    filter: drop-shadow(0 2px 4px rgba(255, 255, 255, .6));
}

.yt-iframe iframe {
    width: 100%;
    height: 100%;
    border: none;
}