
/* Grid */
.hicpt-grid{
  display:grid;
  gap:18px;
  margin: 18px 0;
}
.hicpt-cols-1{ grid-template-columns: 1fr; }
.hicpt-cols-2{ grid-template-columns: repeat(2, minmax(0,1fr)); }
.hicpt-cols-3{ grid-template-columns: repeat(3, minmax(0,1fr)); }
.hicpt-cols-4{ grid-template-columns: repeat(4, minmax(0,1fr)); }
.hicpt-cols-5{ grid-template-columns: repeat(5, minmax(0,1fr)); }
.hicpt-cols-6{ grid-template-columns: repeat(6, minmax(0,1fr)); }

@media (max-width: 1024px){
  .hicpt-cols-4, .hicpt-cols-5, .hicpt-cols-6{ grid-template-columns: repeat(3, minmax(0,1fr)); }
}
@media (max-width: 768px){
  .hicpt-cols-3, .hicpt-cols-4, .hicpt-cols-5, .hicpt-cols-6{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 520px){
  .hicpt-grid{ gap:14px; }
  .hicpt-cols-2, .hicpt-cols-3, .hicpt-cols-4, .hicpt-cols-5, .hicpt-cols-6{ grid-template-columns: 1fr; }
}

/* Card */
.hicpt-card{
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15,23,42,.06);
}
.hicpt-card__media{
  display:block;
  aspect-ratio: 16 / 10;
  overflow:hidden;
  background: linear-gradient(135deg, rgba(15,23,42,.06), rgba(15,23,42,.02));
}
.hicpt-card__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition: transform .35s ease;
}
.hicpt-card:hover .hicpt-card__media img{ transform: scale(1.03); }

.hicpt-card__placeholder{
  width:100%;
  height:100%;
}

.hicpt-card__body{
  padding: 14px 14px 16px;
}
.hicpt-card__title{
  margin: 0 0 8px;
  font-size: 1.05rem;
  line-height: 1.25;
}
.hicpt-card__title a{
  text-decoration:none;
}
.hicpt-card__excerpt{
  margin: 0 0 12px;
  opacity: .85;
}
.hicpt-card__cta{
  display:inline-block;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(15, 23, 42, .16);
  text-decoration:none;
  font-weight: 600;
}

/* Single meta blocks */
.hicpt-meta{
  margin: 10px 0 18px;
}
.hicpt-section{
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 16px;
  padding: 14px;
  background: rgba(255,255,255,.9);
  box-shadow: 0 10px 24px rgba(15,23,42,.05);
  margin-bottom: 14px;
}
.hicpt-section h2{
  margin: 0 0 10px;
  font-size: 1.15rem;
}
.hicpt-features ul{
  margin: 0;
  padding-left: 18px;
}
.hicpt-features li{ margin: 6px 0; }

/* Gallery */
.hicpt-gallery-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:10px;
}
@media (max-width: 768px){ .hicpt-gallery-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 520px){ .hicpt-gallery-grid{ grid-template-columns: 1fr; } }

.hicpt-gallery-item{
  display:block;
  border-radius: 14px;
  overflow:hidden;
  border: 1px solid rgba(15, 23, 42, .12);
}
.hicpt-gallery-item img{
  width:100%;
  height: 220px;
  object-fit: cover;
  display:block;
}

/* Empty */
.hicpt-empty{
  padding: 12px 14px;
  border: 1px dashed rgba(15, 23, 42, .35);
  border-radius: 14px;
}
