.nlpc-owl .post { 
    position: relative; 
    overflow: hidden; 
    border-radius: 8px; 
    cursor: pointer;
    min-height: 450px; /* Minimum height */
    height: auto; /* Let it grow naturally */
}

/* Image */
.nlpc-owl .post-thumbnail img { 
    width: 100%; 
    height: auto; /* remove 100% to prevent stretching */
    max-height: 450px; /* respect min-height */
    object-fit: cover; 
    display: block; 
    transition: transform 0.7s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Overlay: gradient */
.post-overlay { 
    position: absolute; 
    bottom: 0; 
    left: 0; 
    width: 100%; 
    height: 100%; 
    background: linear-gradient(to top, rgba(0,0,0,0.6) 40%, rgba(0,0,0,0) 70%);
    z-index: 1;
    transition: all 0.6s ease-in-out;
}

/* Hover wave effect */
.post-thumbnail:hover .post-overlay { 
    background: rgba(0,0,0,0.8);
}

/* Top-left labels */
.top-left-labels { 
    position: absolute; 
    top: 10px; 
    left: 10px; 
    display: flex; 
    flex-direction: column; 
    z-index: 2; 
}
.top-left-labels .main-cat { 
    background:red; 
    color:#fff; 
    padding:3px 6px; 
    font-size:12px; 
    font-weight:bold; 
    margin-bottom:3px; 
    border-radius:2px; 
}
.top-left-labels .secondary-cat { 
    background:rgba(0,0,0,0.5); 
    color:#fff; 
    padding:2px 5px; 
    font-size:11px; 
    border-radius:2px; 
}

/* Bottom-left content */
.bottom-left-content { 
    position:absolute; 
    bottom:0; 
    left:0; 
    width:100%; 
    padding:10px; 
    color:#fff; 
    z-index:2; 
    background: linear-gradient(to top, rgba(0,0,0,0.7), rgba(0,0,0,0));
    transition: all 0.6s ease-in-out;
}
.bottom-left-content .entry-title { 
    font-size:18px; 
    margin:0 0 3px; 
}
.bottom-left-content .entry-title a { 
    color:#fff; 
    text-decoration:none; 
}
.bottom-left-content .post-date { 
    font-size:13px; 
    color:#ccc; 
    display:block; 
}
.bottom-left-content .post-details { 
    display:block; 
    color:#fff; 
    font-weight:500; 
    font-size:14px; 
    margin-top:4px; 
    opacity:0; 
    transform: translateY(10px); 
    transition: opacity 0.6s ease, transform 0.6s ease;
}

/* Hover push content slightly and show Read More */
.post-thumbnail:hover .bottom-left-content { 
    transform: translateY(-40%); 
}
.post-thumbnail:hover .post-details { 
    opacity:1; 
    transform: translateY(0); 
}

/* Owl dots top right */
.owl-dots { 
    position:absolute; 
    top:10px; 
    right:10px; 
    z-index:3; 
}

h1.entry-title.main_title {
    display: none;
}