/* The original hero remains the fallback until YouTube starts playing. */
.hero-video-background {
    position: absolute;
    inset: 0;
    z-index: -3;
    overflow: hidden;
    pointer-events: none;
    opacity: 0;
    transition: opacity 1s ease;
}
.hero-video-background iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--hero-video-width, 100%);
    height: var(--hero-video-height, 100%);
    transform: translate(-50%, -50%);
    border: 0;
    pointer-events: none;
}
.hero-video-background video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero--video.is-video-visible .hero-video-background { opacity: 1; }
.hero--video.is-video-visible .hero-cover-glow { opacity: 0; }
.hero--video.is-video-visible::before {
    background: linear-gradient(90deg, rgba(5,7,11,.73), rgba(5,7,11,.36) 55%, rgba(5,7,11,.57));
}
.hero--video.is-video-visible::after {
    background: linear-gradient(180deg, rgba(7,8,13,.1) 45%, rgba(7,8,13,.84) 100%);
}
.hero.hero--video .hero-audio-player {
    background: linear-gradient(135deg, rgba(20,25,34,.82), rgba(10,12,18,.84)) !important;
}
.hero.hero--video .hero-release {
    background: linear-gradient(180deg, rgba(18,21,31,.68), rgba(9,11,17,.72));
}
.hero.hero--video .hero-panel {
    background: linear-gradient(145deg, rgba(18,20,30,.62), rgba(9,10,16,.58));
}
.hero--video .hero-player-group {
    grid-area: player;
    align-self: start;
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 0;
}
.hero--video .hero-video-toggle {
    position: static;
    align-self: flex-start;
    flex: none;
    width: fit-content;
    max-width: 100%;
    z-index: 2;
    min-height: 40px;
    padding: 8px 14px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 6px;
    background: rgba(7,8,13,.8);
    color: #f4f1ea;
    font: inherit;
    font-size: 12px;
    cursor: pointer;
}
.hero-video-toggle[hidden] { display: none; }
.hero-video-toggle:focus-visible { outline: 2px solid #e4bf71; outline-offset: 4px; }
@media (max-width: 640px) {
    .hero-video-background {
        bottom: auto;
        height: min(100%, 900px);
        mask-image: linear-gradient(#000 72%, transparent);
    }
}
@media (prefers-reduced-motion: reduce) {
    .hero-video-background { transition: none; }
}
