.lfr-layout-structure-item-container {padding: 0;} .lfr-layout-structure-item-row {overflow: hidden;} .portlet-borderless .portlet-content {padding: 0;}.lfr-layout-structure-item-05be5d1f-0d3b-d580-f7b3-dfed32b2f0e9 {
margin-bottom: var(--spacer-6,4.5rem) !important;
}
.lfr-layout-structure-item-bf6a3d8d-a221-a6ca-1832-97bf35b6b46d {
display: none !important;
}
.lfr-layout-structure-item-6beaefb1-426f-d633-43a1-16e7c426399c {
margin-bottom: var(--spacer-4,1.5rem) !important;
}
/* =========================================================
   Card pubblicazioni custom

   Classe da mettere sul frammento grid-same-height
   oppure sul contenitore che lo racchiude:
   cards-pubblicazioni-custom

   Classe sul contenitore della singola card:
   card-pubblicazione-item

   Classe sul paragrafo data:
   data-pubblicazione-custom
   ========================================================= */

.cards-pubblicazioni-custom {
  width: 100%;

  /* valori da regolare solo se necessario */
  --pub-text-box-height: 330px;
  --pub-title-area-height: 112px;
  --pub-cover-ratio: 210 / 297;
}

.cards-pubblicazioni-custom,
.cards-pubblicazioni-custom * {
  box-sizing: border-box !important;
}

/* =========================================================
   Griglia stabile
   ========================================================= */

.cards-pubblicazioni-custom .row {
  align-items: flex-start !important;
  align-content: flex-start !important;
}

.cards-pubblicazioni-custom .col,
.cards-pubblicazioni-custom [class*="col-"] {
  display: flex !important;
  align-items: flex-start !important;
}

/* Contenitore della singola card */
.cards-pubblicazioni-custom .card-pubblicazione-item {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  overflow: visible !important;
}

/* =========================================================
   Reset Liferay
   ========================================================= */

.cards-pubblicazioni-custom .card-pubblicazione-item .lfr-layout-structure-item-card-bianca,
.cards-pubblicazioni-custom .card-pubblicazione-item .lfr-layout-structure-item-card-bianca > div,
.cards-pubblicazioni-custom .card-pubblicazione-item .card-bianca-wrapper,
.cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo,
.cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca {
  margin-top: 0 !important;
  padding-top: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
}

/* Wrapper generale della card */
.cards-pubblicazioni-custom .card-pubblicazione-item .card-bianca-wrapper {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  gap: 10px !important;

  /* spazio per il link sotto l'immagine */
  padding-bottom: 64px !important;

  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* =========================================================
   Box testo: altezza identica in tutte le card
   ========================================================= */

.cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca {
  order: 1 !important;
  position: static !important;

  display: block !important;
  width: 100% !important;

  height: var(--pub-text-box-height) !important;
  min-height: var(--pub-text-box-height) !important;
  max-height: var(--pub-text-box-height) !important;

  margin: 0 !important;
  padding: 52px 14px 18px !important;

  border: 1px solid #d7dde8 !important;
  border-radius: 14px !important;
  background: #f3f4f6 !important;

  box-shadow: 0 4px 14px rgba(6, 24, 58, 0.05) !important;
  overflow: hidden !important;
}

/* Etichetta: testo sopra immagine usato come badge */
.cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo > .text {
  position: absolute !important;
  left: 14px !important;
  top: 14px !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  z-index: 5 !important;

  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  max-width: calc(100% - 28px) !important;

  margin: 0 !important;
  padding: 4px 11px !important;

  border: 1px solid #b9c8dc !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #06183a !important;

  font-family: inherit !important;
  font-size: 0.85rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  letter-spacing: normal !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo > .text > div {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Titolo: area fissa, uguale in tutte le card */
.cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca .title {
  display: block !important;
  width: 100% !important;

  height: var(--pub-title-area-height) !important;
  min-height: var(--pub-title-area-height) !important;
  max-height: var(--pub-title-area-height) !important;

  margin: 0 0 38px !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: #06183a !important;
  font-family: inherit !important;
  font-size: 1.05rem !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 1.28 !important;
  letter-spacing: normal !important;

  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: unset !important;
  text-overflow: unset !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca .title > div {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Data sotto il titolo */
.cards-pubblicazioni-custom .card-pubblicazione-item .data-pubblicazione-custom {
  position: absolute !important;
  left: 14px !important;
  top: calc(52px + var(--pub-title-area-height) + 2px) !important;
  z-index: 20 !important;

  display: block !important;
  width: auto !important;
  max-width: calc(100% - 28px) !important;

  margin: 0 !important;
  padding: 0 !important;

  pointer-events: auto !important;

  color: #303846 !important;
  font-family: inherit !important;
  font-size: 0.82rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;

  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .data-pubblicazione-custom * {
  margin: 0 !important;
  padding: 0 !important;

  color: #303846 !important;
  font-family: inherit !important;
  font-size: 0.82rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;

  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Aiuto visivo solo in modifica */
body.has-control-menu .cards-pubblicazioni-custom .card-pubblicazione-item .data-pubblicazione-custom {
  outline: 1px dashed rgba(6, 24, 58, 0.28) !important;
  outline-offset: 2px !important;
}

/* Descrizione */
.cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca .text {
  display: block !important;
  width: 100% !important;
  height: auto !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: #262626 !important;
  font-family: inherit !important;
  font-size: 0.84rem !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  letter-spacing: normal !important;

  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: unset !important;
  text-overflow: unset !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca .text > div {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* =========================================================
   Box immagine: formato A4, senza taglio
   ========================================================= */

.cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo {
  order: 2 !important;

  display: flex !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: var(--pub-cover-ratio) !important;

  margin: 2px 0 0 !important;
  padding: 5px !important;

  position: static !important;
  overflow: hidden !important;

  border: 1px solid #d7dde8 !important;
  border-radius: 14px !important;
  background: #f3f4f6 !important;

  align-items: center !important;
  justify-content: center !important;

  box-shadow: 0 4px 14px rgba(6, 24, 58, 0.05) !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo .image,
.cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo picture {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  align-items: center !important;
  justify-content: center !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo img {
  position: static !important;
  inset: auto !important;

  display: block !important;
  width: 100% !important;
  height: 100% !important;

  max-width: 100% !important;
  max-height: 100% !important;

  object-fit: contain !important;
  object-position: center center !important;

  border-radius: 12px !important;
}

/* =========================================================
   Link sotto il frame immagine
   ========================================================= */

.cards-pubblicazioni-custom .card-pubblicazione-item .link-wrapper,
.cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca .link-wrapper {
  position: absolute !important;
  right: 0 !important;
  bottom: 8px !important;
  z-index: 4 !important;

  display: flex !important;
  justify-content: flex-end !important;

  width: 100% !important;
  max-width: 100% !important;

  padding: 0 !important;
  margin: 0 !important;

  background: transparent !important;
  transform: none !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .link-wrapper a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  width: fit-content !important;
  max-width: 100% !important;

  padding: 8px 14px !important;

  border: 1px solid #0047ba !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #0047ba !important;

  font-family: inherit !important;
  font-size: 0.85rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;

  text-decoration: none !important;
  white-space: nowrap !important;
}

.cards-pubblicazioni-custom .card-pubblicazione-item .link-wrapper a:hover,
.cards-pubblicazioni-custom .card-pubblicazione-item .link-wrapper a:focus {
  background: #0047ba !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 760px) {
  .cards-pubblicazioni-custom {
    --pub-text-box-height: auto;
    --pub-title-area-height: 90px;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .card-bianca-wrapper {
    padding-bottom: 64px !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 48px 12px 16px !important;
    border-radius: 12px !important;
    overflow: visible !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo > .text {
    left: 12px !important;
    top: 12px !important;
    font-size: 0.8rem !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca .title {
    height: var(--pub-title-area-height) !important;
    min-height: var(--pub-title-area-height) !important;
    max-height: none !important;
    margin-bottom: 36px !important;
    font-size: 1rem !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .data-pubblicazione-custom {
    left: 12px !important;
    top: calc(48px + var(--pub-title-area-height) + 2px) !important;
    font-size: 0.76rem !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .data-pubblicazione-custom * {
    font-size: 0.76rem !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .card.card-bianca .text {
    font-size: 0.84rem !important;
    line-height: 1.45 !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo {
    padding: 4px !important;
    border-radius: 12px !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .immagine-con-testo img {
    border-radius: 10px !important;
  }

  .cards-pubblicazioni-custom .card-pubblicazione-item .link-wrapper a {
    width: 100% !important;
  }
}.lfr-layout-structure-item-d1c1e400-d925-a422-106d-813cffdc2db7 {
margin-bottom: var(--spacer-4,1.5rem) !important;
}
.lfr-layout-structure-item-9bd0e74f-5b84-fe9d-331a-2fe29a5c7e58 {
display: none !important;
}
.lfr-layout-structure-item-7deb9e89-e91b-e3b4-ab8f-209382952dd2 {
margin-bottom: var(--spacer-4,1.5rem) !important;
}
.lfr-layout-structure-item-6033e195-7f90-5f01-d030-72ee8df213ac {
display: none !important;
margin-bottom: var(--spacer-4,1.5rem) !important;
}
