/* IKUNIX v1.37 - compact, readable blog overview */

.blog-index-page .blog-index-hero{
    padding-top:clamp(46px,5vw,72px);
    padding-bottom:clamp(38px,4vw,58px);
}

.blog-index-page .blog-index-hero .hero-text{
    margin-bottom:0;
}

.blog-index-section{
    padding-top:clamp(28px,3vw,44px);
    padding-bottom:clamp(46px,5vw,72px);
}

.blog-grid{
    width:min(100%,1180px);
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px;
    align-items:stretch;
}

.blog-card{
    min-width:0;
    overflow:hidden;
    display:flex;
    flex-direction:column;
    background:var(--surface);
    border:1px solid var(--border);
    border-radius:24px;
    box-shadow:0 12px 34px rgba(0,91,151,.07);
}

.blog-card-media{
    display:block;
    overflow:hidden;
    background:var(--surface-2);
}

.blog-card-media img{
    display:block;
    width:100%;
    aspect-ratio:16/9;
    object-fit:cover;
    transition:transform .24s ease;
}

.blog-card:hover .blog-card-media img{
    transform:scale(1.015);
}

.blog-card-content{
    min-width:0;
    flex:1;
    display:flex;
    flex-direction:column;
    padding:26px 28px 28px;
}

.blog-card-content .eyebrow{
    margin-bottom:8px;
}

.blog-card h2{
    margin:0;
    font-size:clamp(1.45rem,2vw,1.9rem);
    line-height:1.08;
    letter-spacing:-.035em;
}

.blog-card h2 a:hover{
    color:var(--primary-dark);
}

.blog-card-excerpt{
    color:var(--muted);
    margin:14px 0 22px;
    font-size:1rem;
    line-height:1.65;
}

.blog-card-button{
    align-self:flex-start;
    margin-top:auto;
}

/* A single article should not be squeezed into one third of the desktop width. */
.blog-card:only-child{
    grid-column:1 / -1;
    width:min(100%,920px);
    margin:0 auto;
}

@media (min-width:900px){
    .blog-card:only-child{
        display:grid;
        grid-template-columns:minmax(330px,43%) minmax(0,57%);
        min-height:330px;
    }

    .blog-card:only-child .blog-card-media{
        height:100%;
    }

    .blog-card:only-child .blog-card-media img{
        height:100%;
        min-height:330px;
        aspect-ratio:auto;
    }

    .blog-card:only-child .blog-card-content{
        padding:34px 38px;
        justify-content:center;
    }

    .blog-card:only-child h2{
        font-size:clamp(1.75rem,2.4vw,2.25rem);
    }

    .blog-card:only-child .blog-card-excerpt{
        margin-bottom:24px;
        font-size:1.04rem;
    }
}

.blog-empty-state{
    width:min(100%,760px);
    margin:0 auto;
    padding:28px;
    text-align:center;
    background:var(--surface);
    border:1px solid var(--border);
    border-radius:24px;
    box-shadow:0 10px 30px rgba(0,91,151,.06);
}

.blog-empty-state p{
    margin:0;
    color:var(--muted);
}

@media (max-width:899px){
    .blog-grid{
        grid-template-columns:1fr;
        max-width:680px;
    }

    .blog-card:only-child{
        display:flex;
        width:100%;
    }
}

@media (max-width:620px){
    .blog-index-page .blog-index-hero{
        padding-top:38px;
        padding-bottom:32px;
    }

    .blog-index-section{
        padding-top:24px;
        padding-bottom:48px;
    }

    .blog-card-content{
        padding:22px;
    }

    .blog-card h2{
        font-size:1.45rem;
    }

    .blog-card-excerpt{
        font-size:.98rem;
    }
}
