.ssnc-news-grid { --ssnc-columns: 3; display: grid; grid-template-columns: repeat(var(--ssnc-columns), minmax(0,1fr)); gap: 24px; }
.ssnc-news-grid.columns-1 { --ssnc-columns: 1; }
.ssnc-news-grid.columns-2 { --ssnc-columns: 2; }
.ssnc-news-grid.columns-3 { --ssnc-columns: 3; }
.ssnc-news-grid.columns-4 { --ssnc-columns: 4; }
.ssnc-news-card { overflow: hidden; border: 1px solid #e2e5e9; border-radius: 12px; background: #fff; box-shadow: 0 7px 22px rgba(24,42,64,.07); }
.ssnc-news-image { display: block; aspect-ratio: 16/9; overflow: hidden; }
.ssnc-news-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.ssnc-news-card:hover .ssnc-news-image img { transform: scale(1.025); }
.ssnc-news-card-body { padding: 21px; }
.ssnc-news-date { display: block; margin-bottom: 8px; text-transform: uppercase; letter-spacing: .08em; font-size: 11px; font-weight: 700; opacity: .65; }
.ssnc-news-card h3 { margin: 0 0 10px; font-size: 20px; line-height: 1.3; }
.ssnc-news-card h3 a { color: inherit; text-decoration: none; }
.ssnc-news-card p { margin: 0 0 16px; }
.ssnc-news-more { font-weight: 700; text-decoration: none; }
.ssnc-source-note { margin-top: 28px; padding: 16px 18px; border-left: 4px solid currentColor; background: rgba(0,0,0,.035); }
@media (max-width: 1024px) { .ssnc-news-grid.columns-4, .ssnc-news-grid.columns-3 { --ssnc-columns: 2; } }
@media (max-width: 640px) { .ssnc-news-grid { --ssnc-columns: 1 !important; } }
