/* ==========================================================================
   GRID LAYOUT - Uniform Image Sizes & Styling
   ========================================================================== */

/* Override Roslyn's predefined style padding */
.eltdf-blog-predefined-style .eltdf-blog-holder article .eltdf-post-text .eltdf-post-text-inner {
    padding: 0px !important;
}

h2.entry-title, h3.entry-title {
    text-align: center !important;
}

.eltdf-blog-holder article .eltdf-post-info-bottom {
    padding-top: 10px !important;
    position: relative;
}

/* Short horizontal line above author */
.eltdf-blog-holder article .eltdf-post-info-bottom::before {
    content: '';
    display: block;
    width: 50px;
    height: 1px;
    background-color: #000;
    margin: 0 auto 10px;
}

/* ==========================================================================
   Grid Layout - Override Masonry Staggered Effect
   ========================================================================== */

/* Convert masonry to aligned grid */
.eltdf-blog-holder.eltdf-blog-type-masonry .eltdf-blog-holder-inner {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    opacity: 1 !important; /* Override Isotope's initial opacity:0 */
}

/* Remove Isotope positioning */
.eltdf-blog-holder.eltdf-blog-type-masonry article {
    position: static !important;
    float: none !important;
    width: 100% !important;
    transform: none !important;
}

/* Hide grid sizer and gutter elements */
.eltdf-blog-holder.eltdf-blog-type-masonry .eltdf-blog-masonry-grid-sizer,
.eltdf-blog-holder.eltdf-blog-type-masonry .eltdf-blog-masonry-grid-gutter {
    display: none !important;
}

/* Responsive grid */
@media (max-width: 1024px) {
    .eltdf-blog-holder.eltdf-blog-type-masonry .eltdf-blog-holder-inner {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 768px) {
    .eltdf-blog-holder.eltdf-blog-type-masonry .eltdf-blog-holder-inner {
        grid-template-columns: 1fr !important;
    }
    
    /* Wider aspect ratio for mobile */
    .eltdf-blog-holder.eltdf-blog-type-masonry article .eltdf-post-image {
        aspect-ratio: 16 / 9 !important;
    }
}

/* ==========================================================================
   Image Sizing
   ========================================================================== */

/* Force all masonry post images to be the same size */
.eltdf-blog-holder.eltdf-blog-type-masonry article .eltdf-post-image {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 4; /* Portrait 3:4 aspect ratio for all images */
    overflow: hidden;
}

.eltdf-blog-holder.eltdf-blog-type-masonry article .eltdf-post-image img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* Crop image to fill container */
    object-position: center;
}

/* Ensure the link wrapper also respects the sizing */
.eltdf-blog-holder.eltdf-blog-type-masonry article .eltdf-post-image a {
    display: block;
    width: 100%;
    height: 100%;
}
