.project-snippet {
    padding: 0 1rem;
    border-bottom: 1px solid black;
    transition: transform 1s ease-out;
}
.project-snippet.empty {padding-top: .5rem !important;}
.project-snippet.ani-scroll {
    transform: translateY(10rem);
}
@media only screen and (min-width: 1024px) {
    .portfolio_d-editorial .project-snippet {
        padding: 0 0 0 1rem;
    }

    .portfolio_d-consulting .project-snippet {
        padding: 0 1rem 0 0;
    }
}

/*
PRACTICE
*/
/* .project_s-practice {
    position: sticky;
    top: 0;
    padding: .5rem;
    background-color: whitesmoke;
    z-index: 10;
}
@media only screen and (min-width: 1024px) {
    .project_s-practice {
        display: none;
    }
} */

.project_s-link_top {
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 -1rem;
    align-self: flex-start;
    background-color: whitesmoke;
    padding: .5rem;
    display: block;
    width: 80vw;
    z-index: 20;
}
@media only screen and (min-width: 1024px) {
    .project_s-link_top {
        width: calc(calc(calc(100vw / 9) * 8) / 2);
        padding: .5rem;
        margin: 0 -.5rem;
    }
}

/*
BLOCKS
*/
/* TITLE */
.project_s-title {
    display: flex !important;
    justify-content: center;
    align-items: self-start;
    min-width: 80vw;
    width: 80vw;
    max-width: 80vw;
    min-height: 7vw;
    padding: 0 .25rem;
    margin: 0 0 .5em -1rem;
    overflow: unset;
}
@media only screen and (min-width: 1024px) {
    .project_s-title {
        min-width: calc(calc(calc(100vw / 9) * 8) / 2);
        width: calc(calc(calc(100vw / 9) * 8) / 2);
        max-width: calc(calc(calc(100vw / 9) * 8) / 2);
    }
}

.project_s-title:not(:first-child) {
    margin-top: .025em !important;
}

.project_s-title .textFitted {
    display: inline-block !important;
}

/* HEADLINE */
.project_s-headline {
    display: inline-block;
    /* padding: 0 1rem; */
    text-align: justify;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    margin: .5rem 0 1.5rem;
}

.project_s-date {
    display: inline-block;
    margin-right: 1rem;
    transform: translateY(-2px);
}

.project_s-link {
    display: inline !;
    float: right;
    transform: translateY(4px);
}


/* GALLERY */
.project_s-gallery {
    display: flex;
    margin-bottom: -.5rem;
}

.project_s-gallery figure {
    display: block;
}

/*
static
*/
.project_s-gallery.static {
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 1rem;
}

.project_s-gallery.static figure {
    margin-bottom: 1rem !important;
}

/* vertical */
.project_s-gallery.static .vertical {
    min-width: calc(50% - .5rem);
    max-width: calc(50% - .5rem);
    width: 100%;
}
.vertical img {
    aspect-ratio: 2/3;
    object-fit: cover;
}

/* horizontal */
.project_s-gallery.static .horizontal {
    width: 100%;
}
.horizontal img {
    aspect-ratio: 3/2;
    object-fit: cover;
}
/* square */
.project_s-gallery.static .square {
    width: 100%;
}
.square img {
    aspect-ratio: 1/1;
    object-fit: cover;
}
/* video */
.project_s-gallery.static .video {
    grid-column: 1/-1;
    width: 100%;
}

/* 
slider
*/
.project_s-gallery.slider {
    position: relative;
}

.project_s-gallery-slider_container {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    margin-bottom: .5rem;
}

.project_s-gallery-slider_container > figure {
    min-width: 100%;
    max-width: 100%;
    height: auto;
    scroll-snap-align: center;
}
.project_s-gallery-slider_container > figure:not(:last-of-type) {margin-right: 1rem;}
@media only screen and (min-width: 768px) {
    .project_s-gallery-slider_container > figure.vertical,
    .project_s-gallery-slider_container > figure.square {
        min-width: 50%;
        max-width: 50%;
    }
}

/* FIGCAPTION */
.project_s-gallery figcaption {
    display: inline-flex;
    width: 100%;
    /* text-align: center; */
    /* padding: 0 .5rem; */
}


/* BUTTONS */
.project_s-gallery-prev,
.project_s-gallery-next {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    color: whitesmoke;
    z-index: 10;
}
.project_s-gallery-prev {left: 0;}
.project_s-gallery-next {right: 0;}

.project_s-gallery-prev span,
.project_s-gallery-next span {color: whitesmoke;}

.project_s-gallery-prev span {rotate: -90deg;}
.project_s-gallery-next span {rotate: 90deg;}


/*
EMBED
*/
.project_s-embed {
    margin-bottom: 1rem;
}

.project_s-embed iframe {
    width: 100%;
    aspect-ratio: 16/9;
    display: block;
    border: none !important;
}

.project_s-embed figure figcaption {display: none;}

.project_s-embed figcaption {
    display: block;
    margin-top: 2px;
}




/* 
HOVER
*/
.project_s-gallery img,
.project_s-gallery video,
.project_s-embed iframe {
    filter: grayscale() contrast(1.5);
    transition: filter 200ms ease-in-out;
}

.project-snippet.hover .project_s-gallery img,
.project-snippet.hover .project_s-gallery video,
.project-snippet.hover .project_s-embed iframe {
    filter: unset;
}

@media (hover: hover) {
    .project-snippet:hover .project_s-gallery img,
    .project-snippet:hover .project_s-gallery video,
    .project-snippet:hover .project_s-embed iframe {
        filter: unset;
    }
}