
/* grid type */
.ldev-grid-styling .ldev-grid-item {
    padding: 15px 15px 8px;
    height: calc(100% - 24px);
    margin: 12px 0;
    border: 1px solid transparent;
}

.ldev-grid-col-align .ldev-grid-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-content: center;
}
.ldev-grid-col-align .ldev-grid-item__btn-block,
.ldev-grid-col-align .ldev-grid-item__thumb { text-align: center; }
.ldev-grid-col-align .ldev-grid-item__thumb + .ldev-grid-item__text { margin-top: 8px; }
.ldev-grid-col-align .ldev-card-product.ldev-card-product-single { min-height: auto; height: auto; }

.ldev-grid-styling .ldev-grid-item__heading { margin-top: 0; }
.ldev-grid-item .ldev-grid-item__heading { color: inherit; }

.ldev-grid-item__thumb + .ldev-grid-item__btn-block,
.ldev-grid-item__thumb_and_text_wrapper + .ldev-btn-block { margin-top: 8px; }

/* grid_ratio */
.ldev-grid-ratio-16x9 .ldev-grid-item__thumb { aspect-ratio: 16 / 9; overflow: hidden; }
.ldev-grid-ratio-4x3  .ldev-grid-item__thumb { aspect-ratio: 4 / 3;  overflow: hidden; }
.ldev-grid-ratio-1x1  .ldev-grid-item__thumb { aspect-ratio: 1 / 1;  overflow: hidden; }
.ldev-grid-ratio-3x2  .ldev-grid-item__thumb { aspect-ratio: 3 / 2;  overflow: hidden; }
.ldev-grid-ratio-2x3  .ldev-grid-item__thumb { aspect-ratio: 2 / 3;  overflow: hidden; }

.ldev-grid-ratio-16x9 .ldev-grid-item__thumb img,
.ldev-grid-ratio-4x3  .ldev-grid-item__thumb img,
.ldev-grid-ratio-1x1  .ldev-grid-item__thumb img,
.ldev-grid-ratio-3x2  .ldev-grid-item__thumb img,
.ldev-grid-ratio-2x3  .ldev-grid-item__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* grid_item_border_radius */
.ldev-grid-radius-sm .ldev-grid-item__thumb,
.ldev-grid-radius-sm .ldev-grid-item__thumb img { border-radius: 4px; }

.ldev-grid-radius-md .ldev-grid-item__thumb,
.ldev-grid-radius-md .ldev-grid-item__thumb img { border-radius: 8px; }

.ldev-grid-radius-lg .ldev-grid-item__thumb,
.ldev-grid-radius-lg .ldev-grid-item__thumb img { border-radius: 16px; }

.ldev-grid-radius-circle .ldev-grid-item__thumb,
.ldev-grid-radius-circle .ldev-grid-item__thumb img { border-radius: 50%; }

/* grid_item_link_full */
.ldev-grid-item-link-full .ldev-grid-item { position: relative; }
.ldev-grid-item-link-full .ldev-grid-item__thumb a { display: block; }
.ldev-grid-item-link-full .ldev-grid-item__thumb a::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 3;
}
.ldev-grid-item-link-full .ldev-grid-item__btn-block {
    position: relative;
    z-index: 4;
}

/* grid_text_align */
.ldev-grid-text-left  .ldev-grid-item { text-align: left; }
.ldev-grid-text-center .ldev-grid-item { text-align: center; }
.ldev-grid-text-right .ldev-grid-item { text-align: right; }

/* grid_col_card_radius */
.ldev-grid-card-radius-sm .ldev-grid-item { border-radius: 4px;  overflow: hidden; }
.ldev-grid-card-radius-md .ldev-grid-item { border-radius: 8px;  overflow: hidden; }
.ldev-grid-card-radius-lg .ldev-grid-item { border-radius: 16px; overflow: hidden; }

/* grid_col_shadow */
.ldev-grid-shadow-sm .ldev-grid-item { box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24); }
.ldev-grid-shadow-md .ldev-grid-item { box-shadow: 0 3px 6px rgba(0,0,0,0.15), 0 2px 4px rgba(0,0,0,0.12); }
.ldev-grid-shadow-lg .ldev-grid-item { box-shadow: 0 10px 20px rgba(0,0,0,0.15), 0 3px 6px rgba(0,0,0,0.10); }

/* grid_item_hover */
.ldev-grid-hover-scale .ldev-grid-item,
.ldev-grid-hover-lift  .ldev-grid-item { transition: transform 0.2s ease, box-shadow 0.2s ease; }

.ldev-grid-hover-scale .ldev-grid-item:hover { transform: scale(1.02); }
.ldev-grid-hover-lift  .ldev-grid-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0,0,0,0.15), 0 3px 6px rgba(0,0,0,0.10);
}
.ldev-grid-shadow-sm.ldev-grid-hover-lift .ldev-grid-item:hover { box-shadow: 0 6px 12px rgba(0,0,0,0.18), 0 3px 6px rgba(0,0,0,0.16); }
.ldev-grid-shadow-md.ldev-grid-hover-lift .ldev-grid-item:hover { box-shadow: 0 10px 20px rgba(0,0,0,0.20), 0 6px 6px rgba(0,0,0,0.14); }
.ldev-grid-shadow-lg.ldev-grid-hover-lift .ldev-grid-item:hover { box-shadow: 0 14px 28px rgba(0,0,0,0.25), 0 10px 10px rgba(0,0,0,0.22); }

@media (hover: none) {
    .ldev-grid-hover-scale .ldev-grid-item:hover,
    .ldev-grid-hover-lift  .ldev-grid-item:hover { transform: none; }
}

/* grid_col_gap */
.ldev-grid-gap-none.ldev-row { margin-left: 0; margin-right: 0; }
.ldev-grid-gap-none > [class*="ldev-col-"] { padding-left: 0; padding-right: 0; }

.ldev-grid-gap-sm.ldev-row { margin-left: -5px; margin-right: -5px; }
.ldev-grid-gap-sm > [class*="ldev-col-"] { padding-left: 5px; padding-right: 5px; }

.ldev-grid-gap-lg.ldev-row { margin-left: -25px; margin-right: -25px; }
.ldev-grid-gap-lg > [class*="ldev-col-"] { padding-left: 25px; padding-right: 25px; }
