.latest-posts-section {
    padding-block: var(--section-padding);
    background-color: var(--color-ink-50);
}

.latest-posts-section .latest-post-wrapper {
    gap: 22px;
}

/* ---------- Heading ---------- */
.latest-posts-section .latest-posts-title {
    font-size: 30px;
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-h2);
}
.latest-posts-section .link-arrow{color: var(--color-heading);}
.latest-posts-section .link-arrow span img{filter: brightness(0) saturate(100%) invert(24%) sepia(17%) saturate(3668%) hue-rotate(155deg) brightness(97%) contrast(92%);}

/* ---------- Grid (3 up, wraps on its own via .card-grid) ---------- */
.latest-posts-section .latest-posts-grid {
    --card-grid-min: 320px;
    --card-grid-gap: var(--space-sl);
    grid-template-columns: repeat(3, 1fr);
}

/* ---------- Post card ---------- */
.post-card {
    height: 100%;
    min-height: 382px;
    overflow: hidden;
    background-color: var(--color-white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-card);
}

.post-card .post-card-img {
    flex-shrink: 0;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    /* background-color: var(--color-ink-25); */
}

.post-card .post-card-img a {
    display: inline-block;
    width: 100%;
    height: 100%;
}

.post-card .post-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.post-card .post-card-body {
    flex: 1 1 0;
    gap: var(--space-xxm);
    padding: var(--space-sl);
}

.post-card .post-card-body p {
    font-family: var(--font-mono);
    font-size: var(--font-size-micro);
    font-weight: var(--font-weight-medium);
    line-height: var(--line-height-auto);
    letter-spacing: 1.32px;
    text-transform: uppercase;
    color: var(--color-navy-700);
}

.post-card .post-card-body .h3:hover {
    color: var(--color-teal-700);
}

/* title = plain <h3> → 24/28 Barlow Condensed semibold from base.css */

/* footer pinned to the bottom (Figma "sp" spacer) */
.post-card .post-card-foot {
    margin-top: auto;
    padding-top: var(--space-xm);
    border-top: 1px solid var(--color-border);
    white-space: nowrap;
}

.post-card .post-card-foot .link-arrow {
    color: var(--color-heading);
}

.post-card .post-card-foot .link-arrow span img {
    filter: brightness(0) saturate(100%) invert(23%) sepia(21%) saturate(3714%) hue-rotate(160deg) brightness(94%) contrast(92%);
}

.post-card .post-card-time {
    font-family: var(--font-mono);
    font-size: var(--font-size-micro);
    font-weight: var(--font-weight-regular);
    line-height: var(--line-height-auto);
    color: var(--color-slate-500);
}

/* ---------- Load more ---------- */
.latest-posts-section .latest-posts-more {
    margin-top: var(--space-xs);
}

.latest-posts-section .load-more-btn {
    gap: 9px;
    height: var(--button-height-md);
    padding-inline: var(--space-lg);
    background-color: var(--color-white);
    border: 1.5px solid var(--color-teal-700);
    border-radius: var(--radius-sm);
    font-family: var(--font-primary);
    font-size: var(--font-size-link);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-auto);
    color: var(--color-teal-700);
    white-space: nowrap;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.latest-posts-section .load-more-btn span {
    font-family: var(--font-mono);
    font-weight: var(--font-weight-regular);
}

.latest-posts-section .load-more-btn:hover,
.latest-posts-section .load-more-btn:focus-visible {
    background-color: var(--color-teal-700);
    color: var(--color-white);
}

@media (max-width:1199px) {
    .latest-posts-section .latest-posts-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width:767px) {
    .latest-posts-section .latest-posts-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .post-card {
        min-height: 300px;
    }
}

.related-posts-header .header-line {
    flex-grow: 1;
    border-top: 1px solid #d3dee8;
    margin: 0 var(--space-xxl);
}