/* Home page: constrain to content area so it doesn't overflow when sidebar is open */
.home-page {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    box-sizing: border-box;
    overflow-x: hidden;
}

/* Homepage Carousel Styles */

/* Wide screens: 3 full slides (default slideSize="33.33%") */
/* Smaller screens (max-width: 1024px): 1 full + 2 halves (slideSize="80%") */
@media (max-width: 1024px) {
    #homepage-carousel .mantine-Carousel-slide,
    #homepage-carousel [class*="Carousel-slide"],
    #homepage-carousel [class*="embla__slide"] {
        min-width: 80% !important;
        flex: 0 0 80% !important;
        max-width: 80% !important;
    }
}

/* Center text on carousel slides */
#homepage-carousel .mantine-Carousel-slide > *,
#homepage-carousel [class*="Carousel-slide"] > * {
    text-align: center;
}

/* Carousel slide: black 0.5 overlay above bg-wave.jpg, beneath icon + text */
#homepage-carousel a[href] > div {
    position: relative;
}
#homepage-carousel a[href] > div::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.75);
    z-index: 0;
    border-radius: inherit;
}
#homepage-carousel a[href] > div > div {
    position: relative;
    z-index: 1;
}

/* Style carousel control buttons (prev/next) */
#homepage-carousel .mantine-Carousel-control {
    opacity: 1;
    border-radius: 6px !important;
    background-color: hsl(var(--background)) !important;
    color: hsl(var(--foreground)) !important;
    height: 32px !important;
    width: 32px !important;
}

#homepage-carousel .mantine-Carousel-control svg,
#homepage-carousel .mantine-Carousel-control > svg,
#homepage-carousel [class*="Carousel-control"] svg {
    fill: hsl(var(--foreground)) !important;
    stroke: hsl(var(--foreground)) !important;
    stroke-width: 0.5 !important;
    height: 24px !important;
    width: 24px !important;
}
#homepage-carousel .mantine-Carousel-control:hover {
    background-color: hsl(var(--accent)) !important;
    opacity: 1;
}

#homepage-carousel .mantine-Carousel-control[data-inactive],
#homepage-carousel [class*="Carousel-control"][data-inactive] {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}
