/* A217 — Insights cards. Hero untouched. z-index below cascade nav. */
.ins-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 1.25rem;
}
.ins-card {
  --ins-bg: #ffffff;
  --ins-fg: #12202b;
  --ins-muted: #5b6b78;
  --ins-border: rgba(18, 32, 43, 0.08);
  --ins-accent: #0dcaf0;
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--ins-bg);
  color: var(--ins-fg);
  border: 1px solid var(--ins-border);
  border-radius: 1rem;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
  transition: transform .2s ease, box-shadow .2s ease;
  z-index: 1;
}
[data-bs-theme="dark"] .ins-card {
  --ins-bg: #0e141b;
  --ins-fg: #e8eef4;
  --ins-muted: #8aa0b5;
  --ins-border: rgba(232, 238, 244, 0.08);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);
}
.ins-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 32px rgba(15, 23, 42, 0.12);
  color: inherit;
}
.ins-card:focus-visible {
  outline: 2px solid var(--ins-accent);
  outline-offset: 3px;
}
.ins-cover {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #0a1218;
}
.ins-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .35s ease;
}
.ins-card:hover .ins-cover img { transform: scale(1.04); }
.ins-pill {
  position: absolute;
  top: .75rem;
  left: .75rem;
  z-index: 2;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #041218;
  background: var(--ins-accent);
  border-radius: 999px;
  padding: .28rem .7rem;
}
.ins-body { padding: 1.15rem 1.2rem 1.3rem; display: flex; flex-direction: column; gap: .45rem; flex: 1; }
.ins-meta {
  display: flex;
  align-items: center;
  gap: .5rem;
  font-size: .82rem;
  color: var(--ins-muted);
}
.ins-meta time { font-variant-numeric: tabular-nums; }
.ins-title {
  font-size: clamp(1.05rem, 1.4vw, 1.22rem);
  font-weight: 700;
  line-height: 1.3;
  color: var(--ins-fg);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 0;
}
.ins-excerpt {
  margin: 0;
  font-size: .95rem;
  line-height: 1.5;
  color: var(--ins-muted);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}
.ins-more {
  margin-top: .35rem;
  font-size: .82rem;
  font-weight: 650;
  color: var(--ins-accent);
}
@media (prefers-reduced-motion: reduce) {
  .ins-card, .ins-cover img { transition: none; }
  .ins-card:hover { transform: none; }
  .ins-card:hover .ins-cover img { transform: none; }
}
@media (max-width: 575.98px) {
  .ins-grid { grid-template-columns: 1fr; }
  .ins-cover { aspect-ratio: 16 / 9; }
}
