/* =========================================================
   TARGETES IMATGE BLOCK
   ========================================================= */

.c-targetes-imatge {
  margin-top: var(--mar-t, 0px);
  margin-bottom: var(--mar-b, 0px);
  padding-top: var(--pad-t, 4rem); 
  padding-bottom: var(--pad-b, 4rem);
  position: relative;
  z-index: 1;
}

.c-targetes-imatge--bg-always,
.c-targetes-imatge--bg-desktop {
  background: var(--bg-block, transparent);
}

.c-targetes-imatge__max-width {
  max-width: var(--max-w, 1920px);
  margin: 0 auto;
}

.c-targetes-imatge__card {
  display: flex;
  flex-direction: column;
  background-color: var(--bg-card, #1E1348);
  border-radius: var(--br-card, 20px 20px 30px 30px);
  overflow: hidden;
  transition: transform 0.3s ease;
}

.c-targetes-imatge__card-image {
  width: 100%;
  aspect-ratio: var(--aspect-desk, 16/10); 
  height: var(--img-h-desk, auto);
  overflow: hidden;
}

.c-targetes-imatge__card-image img {
  border-radius: var(--br-img, 20px);
  width: 100%;
  height: 100%;
  object-fit: var(--img-fit-desk, cover);
  display: block;
}

.c-targetes-imatge__card-body {
  padding: var(--pad-card-desk, 32px 24px);
  display: flex;
  flex-direction: column;
  flex-grow: 1; 
}

.c-targetes-imatge__card-title {
  font-size: var(--fs-titol, 26px);
  font-weight: var(--fw-titol, 700);
  color: var(--color-titol, #ffffff);
  margin-bottom: 16px;
  line-height: 1.2;
}

.c-targetes-imatge__card-text {
  font-size: var(--fs-desc, 16px);
  font-weight: var(--fw-desc, 400);
  line-height: 1.5;
  color: var(--color-desc, #ffffff);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.c-targetes-imatge__card-text p {
  margin: 0 0 12px 0;
}

.c-targetes-imatge__card-text p:last-child {
  margin-bottom: 0;
}

.c-targetes-imatge--placeholder {
  padding: 60px 20px;
  text-align: center;
  background: #f0f0f0;
  border: 2px dashed #ccc;
  border-radius: 8px;
  color: #666;
}

/* =========================================================
   MEDIA QUERIES
   ========================================================= */

@media (max-width: 768px) {
  .c-targetes-imatge {
    margin-top: var(--mar-t-mob, 0px);
    margin-bottom: var(--mar-b-mob, 0px);
    padding-top: var(--pad-t-mob, 2rem); 
    padding-bottom: var(--pad-b-mob, 2rem);
  }

  /* Control de fons mòbil */
  .c-targetes-imatge--bg-desktop {
    background: transparent;
  }
  .c-targetes-imatge--bg-mobile {
    background: var(--bg-block, transparent);
  }

  .c-targetes-imatge__card {
    grid-column: span 2 !important;
    border-radius: var(--br-card-mob, 20px 20px 30px 30px);
  }
    
  .c-targetes-imatge__card-body {
    padding: var(--pad-card-mob, 16px 14px); 
  }

  .c-targetes-imatge__card-title {
    font-size: var(--fs-titol-mob, 16px);
    margin-bottom: 8px;
  }
    
  .c-targetes-imatge__card-text {
    font-size: var(--fs-desc-mob, 14px);
  }
    
  .c-targetes-imatge__card-image {
    aspect-ratio: var(--aspect-mob, 4/3); 
    height: var(--img-h-mob, auto);
  }

  .c-targetes-imatge__card-image img {
    border-radius: var(--br-img-mob, 20px);
    object-fit: var(--img-fit-mob, cover);
  }
}