/* Layout grid: mobile/tablet 2x2, desktop 4 in linea, senza spazi */
.hcg-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;  /* default: 2 per riga */
  gap: 0;                          /* nessuno spazio tra i blocchi */
  margin: 0;
  padding: 0;
  margin-bottom: 30px
}

/* 4 per riga su desktop */
@media (min-width: 992px) {
  .hcg-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* Link e figure a bordo pieno */
.hcg-item { display: block; }
.hcg-fig {
  position: relative;
  overflow: hidden;
  border-radius: 0;                /* NO bordi arrotondati */
  margin: 0;                       /* elimina margini default figure */
}

/* Immagini edge-to-edge */
.hcg-fig img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;               /* riempie il riquadro */
  aspect-ratio: 1 / 1;             /* quadrato; cambia se vuoi 16/9 */
  transform: translateZ(0);        /* anti-blur in alcuni browser */
}

/* Didascalia: se vuoi tenerla, resta senza impattare il layout */
.hcg-cap {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 14px 16px;
  background: linear-gradient(to top, rgba(0,0,0,.55), transparent);
  color: #fff;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .3px;
  pointer-events: none;
}

/* Rimuovi qualsiasi spazio ereditato dal tema (se il wrapper avesse .container) */
.hcg-grid.container,
.hcg-grid .container,
.hcg-grid [class*="container"] {
  padding-left: 0 !important;
  padding-right: 0 !important;
}