/* Keep the photographic grid and its hover motion; protect captions in every state. */
.columned-slider .columned-slider-inner .swiper-slide .columned-slider-detail {
    isolation: isolate;
    width: 100%;
    color: #fff;
}

.columned-slider-detail::before {
    content: "";
    position: absolute;
    inset: -64px 0 -80px;
    z-index: -1;
    pointer-events: none;
    /* At the first text pixel, 76% black gives >= 10:1 even over pure white. */
    background: linear-gradient(to bottom, transparent 0, rgba(0, 0, 0, .76) 64px, rgba(0, 0, 0, .82) calc(100% - 64px), transparent 100%);
}

/* Explicit foreground prevents white-on-white menu hover/focus states. */
.head-sec .broad ul li .nav-link:hover,
.head-sec .broad ul li .nav-link:focus {
    color: #191919;
    background-color: #fff;
}

/* The fixed studio credit also sits on photography. Preserve its text and position. */
body > p:last-of-type {
    background-color: rgba(0, 0, 0, .8) !important;
}

/* Project descriptions must remain comfortably readable in the existing modals. */
.slide-modal-window {
    color: #242424;
    background: #fff;
}

@media (max-width: 991.98px) {
    .slide-modal-window .modal-des-area .modal-inner-description .slide-des {
        font-size: 15px;
        line-height: 1.7;
        margin-bottom: 16px;
    }

    .slide-modal-window .modal-des-area .modal-inner-description .hashtags_div a {
        font-size: 13px;
        line-height: 1.6;
        margin-bottom: 6px;
    }

    .slide-modal-window .modal-des-area .modal-inner-description .slide-btn {
        font-size: 14px;
        padding: 10px 24px;
    }
}
