/* ===== CULTURE ===== */
/* Culture/news grid */
.culture-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.2rem;
}
.culture-card {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 12px rgba(0,0,0,.07);
  transition: transform .2s, box-shadow .2s;
}
.culture-card:hover { transform: translateY(-4px); box-shadow: 0 6px 24px rgba(0,0,0,.12); }
.culture-card-img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
}
.culture-card-img-placeholder {
  width: 100%;
  aspect-ratio: 4/3;
  background: var(--g-100);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--g-400);
  font-size: 2rem;
}
.culture-card-body { padding: 1rem; }
.culture-card-date { font-size: .72rem; color: var(--g-500); margin-bottom: .3rem; }
.culture-card-title {
  font-size: .88rem;
  font-weight: 600;
  color: #1a1a2e;
  line-height: 1.4;
  margin-bottom: .5rem;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.culture-card-desc {
  font-size: .78rem;
  color: #6b7280;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.culture-card-tags { display: flex; gap: 4px; flex-wrap: wrap; margin-top: .6rem; }
.culture-card-tag {
  width: 22px; height: 22px;
  border-radius: 4px;
  background: var(--g-600);
  color: #fff;
  font-size: .6rem;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 992px) { .culture-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 576px) { .culture-grid { grid-template-columns: 1fr; } }
