.card{position:relative;background:var(--white);border:1px solid var(--mist);border-radius:var(--radius);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);display:flex;flex-direction:column}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card);border-color:#D7D2C4}
.card-thumb{aspect-ratio:16/10;background:var(--void)}
.card-thumb.alt{background:var(--paper-2)}
.card-thumb.slate-bg{background:var(--mist)}
.card-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.card-body{padding:var(--space-5);display:flex;flex-direction:column;gap:10px;flex:1}
.card-body h3{font-size:1.15rem}
.card-body p{font-size:.9rem;color:var(--slate);flex:1}
.card-meta{font-family:var(--mono);font-size:.72rem;color:var(--slate);display:flex;gap:10px;align-items:center;padding-top:6px;border-top:1px solid var(--mist)}

.stretched-link::after{content:"";position:absolute;inset:0}

.featured-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:28px}
.featured-side{display:flex;flex-direction:column;gap:28px}
.card--featured .card-body h3{font-size:1.5rem}

.insights-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.insight-card{position:relative;padding:26px 22px;border:1px solid var(--mist);border-radius:var(--radius);background:var(--white);transition:transform var(--transition-base),border-color var(--transition-base)}
.insight-card:hover{transform:translateY(-4px);border-color:var(--signal)}
.insight-index{font-family:var(--mono);font-size:.72rem;color:var(--signal-deep);margin-bottom:14px;display:block}
.insight-card h3{font-size:1.08rem;margin-bottom:8px}
.insight-card p{font-size:.85rem;color:var(--slate)}

.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}

@media(max-width:980px){
  .featured-grid{grid-template-columns:1fr}
  .insights-grid{grid-template-columns:repeat(2,1fr)}
  .blog-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .insights-grid{grid-template-columns:1fr}
  .blog-grid{grid-template-columns:1fr}
}
