.acf-gallery-carousel-block {
position: relative;
overflow: hidden;
background-color: #000;
aspect-ratio: 16 / 9;
width: 100%;
user-select: none; }
.blurred-backgrounds, .main-slides {
position: absolute;
top: 0; left: 0;
width: 100%; height: 100%;
}
.blurred-backgrounds .bg-image {
width: 100%; height: 100%;
background-size: cover;
background-position: center;
filter: none;
transform: none;
opacity: 0; transition: opacity 0.4s ease-in-out;
position: absolute;
}
.acf-gallery-carousel-block.has-blur .blurred-backgrounds .bg-image {
filter: blur(20px) brightness(0.7);
transform: scale(1.1);
}  .acf-gallery-carousel-block.has-blur .blurred-backgrounds .bg-image.active {
opacity: 1;
} .main-slides { z-index: 2; }
.main-slides .slide {
display: flex;
align-items: center;
justify-content: center;
width: 100%; height: 100%;
opacity: 0;
transition: opacity 0.4s ease-in-out;
position: absolute;
visibility: hidden;
}
.main-slides .slide.active {
opacity: 1;
visibility: visible;
}
.main-slides .slide img {
max-width: 100%;
max-height: 100%;
width: auto;
height: auto;
object-fit: contain; }
.nav-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
z-index: 3;
background-color: rgba(0, 0, 0, 0.4);
color: white;
border: none;
cursor: pointer;
font-size: 20px;
transition: background-color 0.2s ease;
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
outline: none;
}
.nav-arrow:hover { background-color: rgba(0, 0, 0, 0.7); }
.nav-arrow.prev { left: 0px; }
.nav-arrow.next { right: 0px; }
.slide-counter {
position: absolute;
bottom: 10px;
left: 10px;
z-index: 3;
background-color: rgba(0, 0, 0, 0.6);
color: white;
padding: 5px 10px;
font-size: 0.875rem;
font-family: "TT Norms Pro", sans-serif;
font-weight: 700;
}