/* =========================================
   WPBakery Media / Post Grid - Modern Cards
   ========================================= */

.wpb_content_element .vc_grid-container,
.vc_grid-container {
    margin-left: -12px;
    margin-right: -12px;
}

.vc_grid-item {
    padding: 12px !important;
}

/* Card */
.vc_grid-item .vc_grid-item-mini {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06);
    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}

/* Hover */
.vc_grid-item .vc_grid-item-mini:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.12);
    border-color: rgba(124, 58, 237, 0.18);
}

/* Image */
.vc_grid-item .vc_gitem-zone-a {
    overflow: hidden;
}

.vc_grid-item .vc_gitem-zone-a::before {
    transition: transform 0.5s ease;
}

.vc_grid-item:hover .vc_gitem-zone-a::before {
    transform: scale(1.06);
}

/* Content */
.vc_grid-item .vc_gitem-zone-b {
    padding: 20px !important;
    background: #ffffff;
}

/* Title */
.vc_grid-item .vc_gitem-post-data-source-post_title {
    margin: 0 0 8px !important;
}

.vc_grid-item .vc_gitem-post-data-source-post_title a {
    color: #0f172a !important;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 700;
    text-decoration: none !important;
    transition: color 0.25s ease;
}

.vc_grid-item:hover .vc_gitem-post-data-source-post_title a {
    color: #7c3aed !important;
}

/* Description */
.vc_grid-item .vc_gitem-post-data-source-post_excerpt {
    color: #64748b;
    font-size: 14px;
    line-height: 1.7;
}

/* Buttons */
.vc_grid-item .vc_btn3 {
    border-radius: 10px !important;
    padding: 10px 18px !important;
    font-weight: 600;
    border: none !important;
    transition: all 0.25s ease;
}

.vc_grid-item .vc_btn3:hover {
    transform: translateY(-2px);
}

/* Mobile */
@media (max-width: 767px) {
    .vc_grid-item {
        padding: 8px !important;
    }

    .vc_grid-item .vc_gitem-zone-b {
        padding: 16px !important;
    }

    .vc_grid-item .vc_gitem-post-data-source-post_title a {
        font-size: 18px;
    }
}