/* Hover and scroll treatments for the home page. */
.poster-image img { transition:transform .5s cubic-bezier(.22,.8,.25,1), filter .5s ease; }
.poster-link:focus-visible { outline:3px solid var(--teal); outline-offset:4px; }
@media(hover:hover) {
 .poster-link:hover .poster-image img { transform:scale(1.025); filter:brightness(1.08); }
}
.home-programs { overflow:hidden; }
.home-program-item { position:relative; min-height:340px; display:grid; align-items:end; isolation:isolate; overflow:hidden; background:#111; }
.home-program-image { position:absolute; inset:0; aspect-ratio:auto; border-radius:0; background:#111; }
.home-program-image img { transition:transform .65s cubic-bezier(.22,.8,.25,1); }
.home-program-image .home-program-event-photo { transform:scale(1); object-position:center; }
.home-program-image::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.38),rgba(0,0,0,.8)); transition:opacity .5s ease; }
.home-program-image:hover img { opacity:1; }
.home-program-copy { position:relative; padding:36px; pointer-events:none; color:#fff; }
.home-program-copy .program-status { color:#76e3dd; font-size:14px; }
.home-program-copy h3 { max-width:none; font-size:clamp(1.4rem,2vw,1.9rem); line-height:1.4; }
.home-program-copy h3 a { color:#fff; pointer-events:auto; }
.home-program-copy>p:last-child { color:#fff; font-size:15px; line-height:1.8; text-shadow:0 1px 5px #000; }
.home-program-item:focus-within { outline:3px solid var(--teal); outline-offset:3px; }
@media(hover:hover) {
 .home-program-item:hover .home-program-image img { transform:scale(1.025); }
 .home-program-item:hover .home-program-image::after { opacity:.62; }
}
main .motion-enter { opacity:0!important; translate:0 -14px; transition:opacity .5s ease-out,translate .7s cubic-bezier(.22,.8,.25,1)!important; }
main .home-program-item.motion-enter { translate:-32px 0; }
main .home-program-item.motion-enter:nth-child(even) { translate:32px 0; }
main .motion-enter.motion-visible, main .home-program-item.motion-enter.motion-visible { opacity:1!important; translate:0 0; }
@media(max-width:760px) {
 .home-program-item { min-height:340px; }
 .home-program-copy { padding:28px 24px; }
 .home-program-copy h3 { font-size:1.45rem; }
 .home-program-copy>p:last-child { font-size:14px; }
}
@media(prefers-reduced-motion:reduce) {
 main .motion-enter { opacity:1!important; translate:none!important; transition:none!important; }
 .poster-image img,.home-program-image img,.home-program-image::after { transition:none; }
}
.poster-sidebar .section-motion-title { width:100%; }

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

@media(max-width:760px) { main .home-program-item.motion-enter { translate:-16px 0; } main .home-program-item.motion-enter:nth-child(even) { translate:16px 0; } main .home-program-item.motion-enter.motion-visible { translate:0 0; } }
