/* Slide container — height behaviour unchanged */
.intro-new {
    min-height: 100vh;
    display: flex;
}

@media (max-width: 991px) {
    .intro-new {
        min-height: calc(100vh - 56px);
    }
}

/* The picture fills the container absolutely */
.slide-picture {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

/* The img fills the picture, object-fit handles the cropping gracefully */
.slide-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

/* Text overlay sits above the image — z-index keeps it on top 
.slideMessage {
    position: relative;
    z-index: 2;
} */


/* nice dots */
.niceDots .slick-dots {
    bottom: -32px;  /* brings them closer to the slide edge */
    line-height: 1; /* removes any extra line-height pushing the strip open */
}

.niceDots .slick-dots li {
    position: relative;
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 6px;
    padding: 0;
    cursor: pointer;
}

.niceDots .slick-dots li button:before,
.niceDots .slick-dots li.slick-active button:before {
    color: transparent;
    opacity: 1;
}

.niceDots .slick-dots li button:before {
    background-color: transparent;
    border: 1.5px solid #1a1a1a;
    border-radius: 50%;
    display: inline-block;
    height: 10px;
    width: 10px;
    padding: 0;
    opacity: 0.35;
    transition: opacity 0.2s ease, background-color 0.2s ease;
}

.niceDots .slick-dots li.slick-active button:before {
    background-color: #1a1a1a;
    border-color: #1a1a1a;
    opacity: 1;
}

/* hide dots when only one slide */
.slick-dots li:first-child:last-child {
    display: none;
}