.blog-index__grid:has(.blog-index__post--card){display:grid;gap:30px;grid-template-columns:repeat(3,minmax(0,1fr))}.blog-index__grid{display:grid;gap:20px}.blog-index__post,.blog-index__post--card{background:#fff;border:1px solid #e8e8e8;border-radius:10px;display:flex;flex-direction:column;height:100%;overflow:hidden}.blog-index__post-header{position:relative}.blog-index__post-image{aspect-ratio:345/220;display:block;object-fit:cover;width:100%}.blog-index__post-content{flex:1;padding:20px}.blog-index__topic{margin-bottom:15px}.blog-index__topic-link{background:#111;border-radius:4px;font-size:14px}.blog-index__post-title{font-size:20px;line-height:1.3;margin:0 0 12px}.blog-index__post-title a{color:#111;font-weight:600;text-decoration:none}.blog-index__post-summary{color:#666;font-size:15px;line-height:1.7}.blog-index__post-footer{align-items:center;border-top:1px solid #ececec;display:flex;justify-content:space-between;padding:16px 20px}.blog-index__author-info{display:flex}.blog-index__author-avatar img{border-radius:50%;height:28px;object-fit:cover;width:28px}.blog-index__date{color:#999;font-size:13px}.blog-index__author-info{align-items:center;color:inherit;display:inline-flex;gap:10px;text-decoration:none}.blog-index__author-name{color:inherit}.blog-index__author-info:hover .blog-index__author-name{text-decoration:underline}.blog-index__topic{display:flex;flex-wrap:wrap;gap:10px}.blog-index__topic-link{align-items:center;background:#1d1d1b;border-radius:5px;color:#fff;display:inline-flex;gap:5px;padding:5px 10px;text-decoration:none;transition:background .25s ease}.blog-index__topic-link:hover{background:#000;color:#fff}.blog-index__topic-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center}.blog-index__topic-icon svg{height:15px;width:15px}.blog-index__topic-text{font-size:14px;font-weight:400;line-height:1.5}article.blog-index__post--card:hover{background:#f5f3f1;border-color:#1d1d1b33;border-style:solid}article.blog-index__post--card{transition:all .3s ease}@media (max-width:991px){.blog-index__grid:has(.blog-index__post--card){grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.blog-index__grid:has(.blog-index__post--card){grid-template-columns:1fr}}