.m4u-home-video {
    position: relative;
    width: 100%;
    height: min(var(--m4u-home-video-max-height, 520px), 56.25vw);
    min-height: 180px;
    margin: 0 auto 10px;
    overflow: hidden;
    background: #fecbd2;
    border-radius: 8px;
    box-sizing: border-box;
    container-type: inline-size;
}

.m4u-home-video__player {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: cover;
    object-position: var(--m4u-home-video-focus-x, 50%) var(--m4u-home-video-focus-y, 50%);
}

.m4u-home-video__overlay {
    position: absolute;
    inset: 0;
    color: var(--m4u-home-video-text-colour, #fff);
    font-family: var(--m4u-home-video-text-font, Roboto, Arial, Helvetica, sans-serif);
    font-size: var(--m4u-home-video-text-size-fallback, 4vw);
    font-size: var(--m4u-home-video-text-size, 4cqw);
    font-weight: 700;
    line-height: 1.05;
    text-shadow: 0 2px 12px rgba(114, 100, 73, .75), 0 1px 2px rgba(0, 0, 0, .7);
    text-shadow: 0 .105cqw .632cqw rgba(114, 100, 73, .75), 0 .053cqw .105cqw rgba(0, 0, 0, .7);
    pointer-events: none;
}

.m4u-home-video__overlay-text {
    position: absolute;
    top: clamp(8%, var(--m4u-home-video-text-y, 50%), 92%);
    left: clamp(4%, var(--m4u-home-video-text-x, 50%), 96%);
    width: max-content;
    max-width: max(8%, min(92%, calc(2 * (min(var(--m4u-home-video-text-x, 50%), calc(100% - var(--m4u-home-video-text-x, 50%))) - 4%))));
    font-family: var(--m4u-home-video-text-font, Roboto, Arial, Helvetica, sans-serif) !important;
    font-weight: var(--m4u-home-video-text-weight, 700);
    font-size: inherit;
    line-height: inherit;
    text-align: var(--m4u-home-video-text-alignment, center);
    white-space: pre-line;
    overflow-wrap: anywhere;
    transform: translate(-50%, -50%);
}

.m4u-home-video__link {
    position: absolute;
    z-index: 4;
    inset: 0;
    display: block;
    border-radius: inherit;
    cursor: pointer;
}

.m4u-home-video__link:focus-visible {
    outline: 3px solid #fd8392;
    outline-offset: -3px;
}

.m4u-home-video__link-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

@media (max-width: 760px) {
    .m4u-home-video {
        height: min(var(--m4u-home-video-max-height, 520px), 68vw);
        min-height: 150px;
        margin-bottom: 8px;
        border-radius: 6px;
    }

}
