/* Utiltity */

.one-line-clamp{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

.two-line-clamp{
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.loop-and-map{
    display: flex;
    gap: 20px;
}


.lm-column{
    width: 50%;
}





/* Results Grid */
.post-grid-results {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* two equal columns */
    gap: 20px;                               /* spacing between items */
    align-items: start;                      /* vertical alignment of items */
    /* padding: 16px; */
    box-sizing: border-box;
  }
  
.lm-colum-grid{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}


/* Map */

#ff-map{
    position: sticky !important;
    top: 160px;
}


/* Card */

.ff-item img, .skeleton-image{
aspect-ratio: 4 / 3;
width: 100%;
object-fit: cover;
}

.ff-item h3{
    margin:0px;
}

.ff-content{
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding-top: 15px;
}


/* Skeleton Card */

.ff-card-skeleton {
    background: #e2e2e2;
    border-radius: 8px;
    animation: pulse 1.5s infinite ease-in-out;
    margin-bottom: 6px;
}



@keyframes pulse {
    0% { opacity: 1; }
    50% { opacity: 0.4; }
    100% { opacity: 1; }
}

.ff-item.ff-card-skeleton {
    min-height: 550px; /* approximate size of your card */
    width: 100%;
    margin-bottom: 20px;
}
