.still-3d {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    perspective: 1000px;
    animation: fade-in;
    animation-duration: 0.8s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fade-in {
  from {opacity: 0;}
  to {opacity: 1;}
}

.still-3d a {
    height: max-content;
    flex-shrink: 0;
    width: 40%;
    transform: rotateX(-10deg) rotateY(-10deg);
    margin-left: 32px;
    margin-right: 32px;
    transition: 0.5s;
    transition-property: transform, box-shadow;
    box-shadow: -5px 5px 5px #0002;
    text-decoration: none;
    user-select: none;
}

.still-3d a img {
    width: 100%;
    height: auto;
    display: block;
}

.still-3d a:hover {
    transform: rotateX(-10deg) rotateY(-10deg) translateZ(100px);
    box-shadow: -5px 5px 5px #0005;
}

.still-3d a.img-fullscreen {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    box-shadow: -5px 5px 5px #0005;
}

.stills-grid.its-3d {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.still-3d div > * {
    text-align: right;
}

.still-3d div {
    flex-grow: 1;
}

.stills-grid.its-3d > .still-3d:nth-child(even) {
    flex-direction: row-reverse;
    a {
        height: auto;
        width: 40%;
        transform: rotateX(-10deg) rotateY(10deg);
        box-shadow: 5px 5px 5px #0002;
    }
    div > * {
        text-align: left;
    }
    a:hover {
        transform: rotateX(-10deg) rotateY(10deg) translateZ(100px);
        box-shadow: 5px 5px 5px #0005;
    }
}

.still-date {
    opacity: 0.6;
    font-size: 12px;
}