/* Gallery Section */
.gallery {
    padding: 2rem 1rem;
    position: relative;
    text-align: center;
}

.gallery-wrapper {
    position: relative;
    overflow: hidden;
    max-width: 1200px;
    margin: 0 auto;
}

.gallery-slider {
    display: flex;
    gap: 1rem;
    transition: transform 0.5s ease-in-out;
    will-change: transform;
    width: max-content;
    overflow: hidden;
}

.gallery-slider .snap-center {
    width: 100%;
    max-width: 400px;
    flex: 0 0 auto;
}

@media (min-width: 640px) {
    .gallery-slider .snap-center {
        width: 50%;
    }
}

@media (min-width: 768px) {
    .gallery-slider .snap-center {
        width: 33.333%;
    }
}

@media (min-width: 1024px) {
    .gallery-slider .snap-center {
        width: 221px;
    }
}

.gallery-slider img {
    width: 100%;
    height: auto;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.gallery-slider img:hover {
    transform: scale(1.05);
}

.slider-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(236, 72, 153, 0.7); /* Matches bg-brand-pink/80 */
    color: #ffffff;
    border: none;
    padding: 0.75rem;
    cursor: pointer;
    border-radius: 9999px;
    width: 3rem;
    height: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease;
}

.slider-nav.prev {
    left: 1rem;
}

.slider-nav.next {
    right: 1rem;
}

.slider-nav:hover {
    background: rgba(236, 72, 153, 0.9); /* Matches bg-brand-pink */
}

.slider-nav:disabled {
    background: rgba(236, 72, 153, 0.3);
    cursor: not-allowed;
}

/* Hide navigation buttons on mobile */
@media (max-width: 768px) {
    .slider-nav {
        display: none;
    }
}

/* Ensure proper stacking order for carousel images */
.gallery-slider .relative {
    position: relative;
}

.gallery-slider img {
    width: 100%;
    height: auto;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}

.gallery-slider img.z-0 {
    z-index: 0;
}

.gallery-slider .absolute.inset-0 {
    z-index: 5;
}

.gallery-slider img.z-10 {
    z-index: 10;
}

/* Override any WordPress theme z-index conflicts */
.gallery-slider .relative > * {
    position: relative;
}

.gallery-slider .absolute.bottom-3.left-3 {
    max-width: 50px;
    aspect-ratio: 9 / 6;
    z-index: 10 !important; /* Use !important to override potential theme styles */
}
