.gpg-c41a443d-grid {
    display: grid;
    gap: 20px;
}

.gpg-c41a443d-card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    overflow: hidden;
    transition: transform 0.3s ease;
    position: relative;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    height: 100%; /* Ensure cards fill grid row height */
    cursor: grab;
}

.gpg-c41a443d-card:active {
    cursor: grabbing;
}

.gpg-c41a443d-card.dragging {
    opacity: 0.5;
    transform: scale(0.95);
}

.gpg-c41a443d-card:hover, 
.gpg-c41a443d-card:focus {
    transform: translateY(-5px);
}

.gpg-c41a443d-image-area {
    width: 100%;
    height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
}

.gpg-c41a443d-image-area img {
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease;
}

.gpg-c41a443d-card:hover .gpg-c41a443d-image-area img {
    transform: scale(1.05);
}

.gpg-c41a443d-footer {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px 20px;
    border-top: 1px solid rgba(255,255,255,0.1);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    flex-grow: 1; /* Make footer expand to fill remaining space */
}

.gpg-c41a443d-title {
    margin: 0;
    flex-grow: 1;
    word-break: break-word;
    display: flex;
    align-items: center; /* Center text vertically */
    justify-content: center;
    text-align: center;
}

@media (max-width: 767px) {
    .gpg-c41a443d-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    
    .gpg-c41a443d-image-area {
        height: auto;
        aspect-ratio: 1 / 1;
    }
    
    .gpg-c41a443d-footer {
        flex-direction: column;
    }
}