.blog-posts-grid,
.scf-feed-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 40px;
}

.blog-post,
.scf-card {
    background: transparent;
    box-shadow: none;
    padding: 10px;
    transition: transform 0.2s ease;
}

.blog-post:hover,
.scf-card:hover {
    transform: scale(1.05);
}

.scf-post-image-link {
    display: block;
    text-decoration: none;
}

.scf-post-image-wrap {
    width: 100%;
    /*height: 250px;*/
    overflow: hidden;
    border-radius: 10px;
}

.blog-image-square,
.scf-post-image {
    width: 100% !important;
    max-width: 100% !important;
    height: 210px !important;
    object-fit: cover !important;
    display: block;
    border-radius: 10px;
}

.scf-post-meta {
    margin-top: 10px;
}

.blog-categories,
.scf-post-categories {
    position: static !important;
    inset: auto !important;
    margin: 0 0 10px 0;
    font-size: 14px !important;
    font-weight: 300 !important;
    background: #f7e0ff;
    padding: 2px 7px;
    border-radius: 5px;
    display: inline-block;
    color: #604f4f !important;
    line-height: 1.5;
}

.blog-categories a,
.scf-post-categories a {
    color: inherit !important;
    text-decoration: none;
}

.blog-categories a:hover,
.scf-post-categories a:hover {
    text-decoration: underline;
}

.scf-post-title,
.blog-post h3 {
    font-size: 18px !important;
    line-height: 1.45;
    color: #000;
    font-weight: 500;
    margin: 10px 0;
}

.scf-post-title-link {
    color: inherit !important;
    text-decoration: none;
}

.scf-post-title-link:hover {
    text-decoration: underline;
}

.blog-date,
.scf-post-date {
    color: #666;
    font-size: 0.9em;
    margin-top: 10px;
    font-weight: 300;
}

.blog-date .fa-calendar,
.scf-post-date .fa-calendar {
    margin-right: 5px;
    font-size: 14px;
    font-weight: 300;
}

@media (max-width: 1024px) {
    .blog-posts-grid,
    .scf-feed-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .blog-posts-grid,
    .scf-feed-grid {
        grid-template-columns: 1fr;
    }

    .blog-post,
    .scf-card {
        padding: 8px;
    }

    .scf-post-image-wrap,
    .blog-image-square,
    .scf-post-image {
        height: 220px !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   NEWS CARDS — card.html style
   Scoped entirely to .scf-card--news so other feeds are unaffected.
   ═══════════════════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;600&display=swap');

/* Cancel the base card hover scale */
.scf-card--news,
.scf-card--news:hover {
    transform: none !important;
    padding: 0;
    cursor: pointer;
    transition: none;
}

/* Image wrap: aspect-ratio replaces fixed height; box-shadow on hover */
.scf-card--news .scf-post-image-wrap {
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    overflow: hidden;
    border-radius: 0;
    transition: box-shadow 0.25s ease;
}

.scf-card--news:hover .scf-post-image-wrap {
    box-shadow: 18px 18px 0px #8c2586;
}

/* Image: fills wrap via 100% height; overrides the 210px !important base rule */
.scf-card--news .scf-post-image-link {
    display: block;
    text-decoration: none;
}

.scf-card--news .blog-image-square,
.scf-card--news .scf-post-image {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    border-radius: 0 !important;
    display: block !important;
    transition: transform 0.35s ease;
}

.scf-card--news:hover .scf-post-image {
    transform: scale(1.04);
}

/* Meta block */
.scf-card--news .scf-post-meta {
    padding: 14px 0 0;
    margin-top: 0;
}

/* Category tag — strip the pill, go uppercase label style */
.scf-card--news .blog-categories,
.scf-card--news .scf-post-categories {
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: #888 !important;
    background: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    margin: 0 0 6px 0 !important;
    display: block;
    line-height: normal;
}

.scf-card--news .blog-categories a,
.scf-card--news .scf-post-categories a {
    color: #888 !important;
    text-decoration: none;
}

/* Title */
.scf-card--news .scf-post-title,
.scf-card--news.blog-post h3 {
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #111 !important;
    line-height: 1.45;
    margin: 0 !important;
    transition: color 0.25s ease;
}

.scf-card--news:hover .scf-post-title {
    color: #8c2586 !important;
}

.scf-card--news .scf-post-title-link {
    color: inherit !important;
    text-decoration: none !important;
}

/* Hide date — not in card.html design */
.scf-card--news .blog-date,
.scf-card--news .scf-post-date {
    display: none !important;
}