/* Social Programs List */
.ss-list--social {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  padding: 1rem 0;
}
@media (max-width: 1024px) {
  .ss-list--social {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .ss-list--social {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 1rem 0 1.5rem 0;
    margin: 0 -1.5rem;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
  }
  .ss-list--social::-webkit-scrollbar {
    height: 6px;
  }
  .ss-list--social::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.05);
    border-radius: 3px;
  }
  .ss-list--social::-webkit-scrollbar-thumb {
    background: rgba(11, 59, 59, 0.3);
    border-radius: 3px;
  }
  .ss-list--social::-webkit-scrollbar-thumb:hover {
    background: rgba(11, 59, 59, 0.5);
  }
}

.ss-item--social {
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow-sm);
  background: var(--neutral-white);
  border: 1px solid var(--neutral-100);
  transition: all var(--transition-smooth);
}
.ss-item--social.is-featured {
  border: 2.5px solid #d4af37;
  box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.15), var(--shadow-md);
}
.ss-item--social.is-featured:hover {
  box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.25), var(--shadow-lg);
}
.ss-item__media {
  position: relative;
  height: 220px;
}
.ss-item__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ss-item__featured-badge {
  position: absolute;
  left: 12px;
  top: 12px;
  background: linear-gradient(135deg, #d4af37 0%, #ffd700 100%);
  color: #000;
  font-size: 11px;
  font-weight: 700;
  padding: 6px 12px;
  border-radius: 999px;
  box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
  letter-spacing: 0.5px;
}
.ss-item__badge {
  position: absolute;
  right: 12px;
  top: 12px;
  background: var(--brand-secondry-main);
  color: #fff;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  box-shadow: var(--shadow-sm);
}
.ss-item__status-badge {
  position: absolute;
  left: 12px;
  bottom: 12px;
  background: #30bced90;
  color: #fff;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  box-shadow: var(--shadow-sm);
}
.ss-item__body {
  padding: 1rem;
}
.ss-item__title {
  font-family: "Cinzel", serif;
  font-size: 20px;
  margin: 0 0 0.25rem;
  color: var(--brand-primary-main);
  letter-spacing: 0.2px;
}
.ss-item__meta-line {
  font-size: 13px;
  color: var(--neutral-600);
  margin-bottom: 0.5rem;
}
.ss-item__desc {
  font-size: 14px;
  color: var(--neutral-700);
  line-height: 1.6;
}

@media (max-width: 640px) {
  .ss-item--social {
    flex: 0 0 calc(100vw - 3rem);
    min-width: 280px;
  }
  .ss-item__media {
    height: 180px;
  }
  .ss-item__body {
    padding: 0.85rem;
  }
  .ss-item__title {
    font-size: 18px;
  }
  .ss-item__desc {
    font-size: 13px;
  }
}
