.custom-revolve-container {
    position: relative !important;
    display: flex !important;
    flex-direction: column;
    align-items: flex-end;
    perspective: 2500px;
    transform-style: preserve-3d;
    min-height: 600px;
    width: 100%;
}

.revolve-card {
    max-width: 70%;
    opacity: 0;
    visibility: hidden;
    backface-visibility: hidden;
    transition: transform 0.8s cubic-bezier(0.645, 0.045, 0.355, 1), opacity 0.5s ease;
    position: absolute !important;
    top: 0;
    right: 0;
    pointer-events: none;
}

.revolve-card.show-card {
    position: relative !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 10;
    pointer-events: all;
    transform: rotateX(0deg) translateZ(0px);
}

.custom-revolve-container.direction-down > .last-card { transform: rotateX(180deg) translateZ(-600px); opacity: 0; }
.custom-revolve-container.direction-down > .revolve-card:not(.show-card):not(.last-card) { transform: rotateX(-180deg) translateZ(-600px); }

.custom-revolve-container.direction-up > .last-card { transform: rotateX(-180deg) translateZ(-600px); opacity: 0; }
.custom-revolve-container.direction-up > .revolve-card:not(.show-card):not(.last-card) { transform: rotateX(180deg) translateZ(-600px); }

.revolve-card img { width: 100%; border-radius: 15px; display: block; }
.portfolio-categories { list-style: none; display: flex; gap: 10px; padding: 10px 0; }
.portfolio-categories li { background: #eee; padding: 5px 12px; border-radius: 20px; font-size: 12px; }