/* Shared post-card presentation, independent of the section that queries the posts. */
body .post-card.post-card {
  display: flex; flex-direction: column; min-width: 0; min-height: 0; height: 100%;
  overflow: hidden; border: 1px solid #e2e8f1; border-radius: 18px;
  background: #fff; color: #12264a; box-shadow: 0 8px 24px rgba(18,38,74,.05);
}
body .post-card > :is(.solution-card-image,.events-showcase-card__media,.technology-news-card__media,.news-card-media) {
  position: relative; display: block; flex: none; width: 100%; height: auto; min-height: 0;
  aspect-ratio: 16/9; margin: 0; overflow: hidden; background: #edf3fa;
}
body .post-card > :is(.solution-card-image,.events-showcase-card__media,.technology-news-card__media,.news-card-media) img {
  position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;
}
body .post-card > :is(.solution-card-copy,.events-showcase-card__copy,.technology-news-card__copy,.news-card-copy) {
  display: flex; flex: 1; flex-direction: column; align-items: flex-start; min-height: 0;
  min-width: 0; padding: 24px; gap: 0;
}
body .post-card.post-card.post-card :is(h2,h3) {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3;
  overflow: hidden; width: 100%; max-width: none; min-height: 4.2em;
  margin: 12px 0 0; padding: 0; font-size: 21px; line-height: 1.4; letter-spacing: -.02em;
}
body .post-card :is(h2,h3) a { color: inherit; text-decoration: none; }
body .post-card :is(.post-category-label,.events-showcase-card__badge,.technology-news-card__badge) {
  min-height: 28px; margin: 0; padding: 4px 10px; border: 0; border-radius: 6px;
  background: #edf4ff; color: #0966bd; font-size: 12px; line-height: 20px;
}
body .post-card p:not(.news-card-meta) {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3;
  overflow: hidden; min-height: 4.95em; margin: 14px 0 20px; padding: 0;
  color: #53627a; font-size: 15px; line-height: 1.65;
}
body .post-card .news-card-meta { min-height: 0; margin: 12px 0 0; font-size: 12px; }
body .post-card:not(:has(> :is(.solution-card-image,.events-showcase-card__media,.technology-news-card__media,.news-card-media)))::before {
  content: ''; display: block; flex: none; width: 100%; aspect-ratio: 16/9; background: #edf3fa;
}
body .post-card .text-link {
  display: inline-flex; align-items: center; gap: 8px; min-height: 44px;
  margin-top: auto; color: #075bdb; font-size: 14px; text-decoration: none;
}
body .post-card a:focus-visible { outline: 2px solid #075bdb; outline-offset: 3px; }
body .technology-news-grid { grid-template-columns: repeat(3,minmax(0,1fr)); align-items: stretch; }
body .technology-news-secondary { display: contents; }
body .post-card :is(h2,h3) a:hover,body .post-card .text-link:hover { color: #0878e4; text-decoration: underline; }
@media(max-width:959px) {
  body :is(.technology-news-grid,.events-showcase-grid) { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  body :is(.technology-news-grid,.events-showcase-grid) { grid-template-columns: minmax(0,1fr); }
  body .post-card > :is(.solution-card-copy,.events-showcase-card__copy,.technology-news-card__copy,.news-card-copy) { padding: 20px; }
  body .post-card.post-card.post-card :is(h2,h3) { font-size: 20px; }
}
