.background-slideshow {
    position: absolute;
    inset: 0;
    z-index: -2;
    overflow: hidden;
    pointer-events: none;
}

.background-slide {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0;
    transition: opacity 1.8s ease-in-out;
}

.background-slide.is-active { opacity: 1; }

.background-slideshow::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(244, 246, 244, 0.84);
}

.background-playback {
    position: absolute;
    right: 24px;
    bottom: 24px;
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid var(--border-light);
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
}

.background-playback:hover { background: #edf2ee; }
.background-playback:focus-visible { outline: 2px solid var(--primary-green); outline-offset: 4px; }
.background-playback img { display: block; width: 18px; height: 18px; }
.background-playback[hidden], .background-playback img[hidden] { display: none; }

.slideshow-page { isolation: isolate; }
.slideshow-page .background-slideshow { position: fixed; }
.slideshow-page .background-playback {
    position: fixed;
    z-index: 900;
    right: max(20px, env(safe-area-inset-right));
    bottom: max(20px, env(safe-area-inset-bottom));
}

[data-background-slideshow] .section-subtitle,
.slideshow-page .social-section-note,
.slideshow-page .bulletin-hero > div > p { color: #314b3d; }

@media (prefers-reduced-motion: reduce) {
    .background-slide { transition: none; }
}
