.column-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 18px; margin: 16px 0 32px; }
.column-card { background: #fff; border: 1px solid #eadfe0; border-radius: 12px; overflow: hidden; transition: box-shadow .15s, transform .15s; }
.column-card:hover { box-shadow: 0 6px 18px rgba(80, 40, 50, .12); transform: translateY(-2px); }
.column-card-link { display: flex; flex-direction: column; height: 100%; color: inherit; text-decoration: none; }
.column-card-img { display: block; aspect-ratio: 16 / 9; background: #f7eef0; overflow: hidden; }
.column-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.column-card-noimg { display: flex; align-items: center; justify-content: center; height: 100%; font-size: 36px; color: #d9a9b3; }
.column-card-body { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 18px; }
.column-card-body time { font-size: 12px; color: #8a7479; }
.column-card-body strong { font-size: 16px; line-height: 1.5; }
.column-card-desc { font-size: 13px; line-height: 1.6; color: #6b5a5e; }
@media (max-width: 560px) { .column-grid { grid-template-columns: 1fr; } }
