/* ============================================================
   TiAssisto - Card comparatore commerciale definitive
   File: assets/css/compare-cards.css
   ============================================================ */

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

.tia-card-grid,
.tia-card-grid *,
.tia-card-grid *::before,
.tia-card-grid *::after {
  box-sizing: border-box;
}

.tia-card-grid > article.tia-card--compare {
  grid-column: 1 / -1 !important;
}

/* Card desktop */
article.tia-card.tia-card--compare {
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: 305px minmax(0, 1fr) !important;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 0 20px 0 !important;
  overflow: hidden !important;
  border: 1px solid #dbe7fb !important;
  border-radius: 22px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.08) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

article.tia-card.tia-card--compare:hover {
  transform: translateY(-2px) !important;
  border-color: #b8cef8 !important;
  box-shadow: 0 20px 48px rgba(15, 23, 42, 0.12) !important;
}

/* Immagine */
article.tia-card--compare .tia-card-compare__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 246px !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #dbeafe !important;
  border-radius: 0 !important;
  text-decoration: none !important;
}

article.tia-card--compare .tia-card-compare__media img {
  width: 100% !important;
  height: 100% !important;
  min-height: 246px !important;
  display: block !important;
  object-fit: cover !important;
  margin: 0 !important;
  border-radius: 0 !important;
  transition: transform .25s ease !important;
}

article.tia-card--compare:hover .tia-card-compare__media img {
  transform: scale(1.035) !important;
}

article.tia-card--compare .tia-card-compare__badge {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 8px 12px !important;
  border-radius: 999px !important;
  background: #123c96 !important;
  color: #ffffff !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  box-shadow: 0 8px 20px rgba(18, 60, 150, .26) !important;
}

/* Corpo card */
article.tia-card--compare .tia-card-compare__content {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 270px !important;
  width: 100% !important;
  min-width: 0 !important;
}

article.tia-card--compare .tia-card-compare__main {
  min-width: 0 !important;
  padding: 25px 25px 22px !important;
}

article.tia-card--compare .tia-card-compare__location {
  position: relative !important;
  margin: 0 0 8px !important;
  color: #50668d !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 850 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

article.tia-card--compare .tia-card-compare__location::before {
  content: "📍";
  margin-right: 4px;
}

article.tia-card--compare .tia-card-compare__title {
  margin: 0 0 11px !important;
  padding: 0 !important;
  font-size: 27px !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
  color: #071747 !important;
  font-weight: 950 !important;
}

article.tia-card--compare .tia-card-compare__title a {
  color: #071747 !important;
  text-decoration: none !important;
}

article.tia-card--compare .tia-card-compare__title a:hover {
  color: #1d4ed8 !important;
  text-decoration: none !important;
}

article.tia-card--compare .tia-card-compare__excerpt {
  margin: 0 0 15px !important;
  color: #405579 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
}

/* Pillole */
article.tia-card--compare .tia-card-compare__chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

article.tia-card--compare .tia-card-compare__chips span {
  display: inline-flex !important;
  align-items: center !important;
  max-width: 100% !important;
  padding: 7px 10px !important;
  border-radius: 999px !important;
  border: 1px solid #d7e3f8 !important;
  background: #f8fbff !important;
  color: #10204f !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Facts */
article.tia-card--compare .tia-card-compare__facts {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin-top: 4px !important;
}

article.tia-card--compare .tia-card-compare__facts div {
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 6px !important;
  min-width: 0 !important;
  color: #526173 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

article.tia-card--compare .tia-card-compare__facts strong {
  color: #071747 !important;
  font-weight: 900 !important;
}

article.tia-card--compare .tia-card-compare__facts span {
  color: #526173 !important;
  font-weight: 600 !important;
}

/* Colonna destra */
article.tia-card--compare .tia-card-compare__side {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 24px 18px 18px !important;
  border-left: 1px solid #e5edf9 !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
}

article.tia-card--compare .tia-card-compare__price {
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

article.tia-card--compare .tia-card-compare__price span {
  display: block !important;
  margin: 0 0 7px !important;
  color: #253657 !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

article.tia-card--compare .tia-card-compare__price strong {
  display: block !important;
  max-width: 100% !important;
  font-size: 22px !important;
  line-height: 1.18 !important;
  font-weight: 950 !important;
  letter-spacing: -0.02em !important;
  overflow-wrap: anywhere !important;
}

article.tia-card--compare .tia-card-compare__price em {
  display: block !important;
  margin-top: 6px !important;
  color: #667085 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-style: normal !important;
  font-weight: 600 !important;
}

article.tia-card--compare .tia-card-compare__price.is-available strong {
  color: #087443 !important;
}

article.tia-card--compare .tia-card-compare__price.is-missing strong {
  color: #f97316 !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
}

/* Contatti */
article.tia-card--compare .tia-card-compare__contacts {
  min-height: 44px !important;
}

article.tia-card--compare .tia-card-compare__contact-label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #087443 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

article.tia-card--compare .tia-card-compare__contact-label--muted {
  color: #64748b !important;
}

article.tia-card--compare .tia-card-compare__contact-icons {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}

article.tia-card--compare .tia-card-compare__contact-icons a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  border: 1px solid #dbe7fb !important;
  background: #ffffff !important;
  color: #071747 !important;
  text-decoration: none !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

article.tia-card--compare .tia-card-compare__contact-icons a:hover {
  background: #eff6ff !important;
  border-color: #93b4f6 !important;
}

/* Pulsanti */
article.tia-card--compare .tia-card-compare__actions {
  display: grid !important;
  gap: 9px !important;
  margin: 0 !important;
  padding: 0 !important;
}

article.tia-card--compare .tia-card-compare__btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  width: 100% !important;
  padding: 10px 14px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  line-height: 1.15 !important;
  font-weight: 950 !important;
  text-decoration: none !important;
  text-align: center !important;
}

article.tia-card--compare .tia-card-compare__btn--primary {
  background: #1d4ed8 !important;
  color: #ffffff !important;
  border: 1px solid #1d4ed8 !important;
  box-shadow: 0 10px 24px rgba(29, 78, 216, .22) !important;
}

article.tia-card--compare .tia-card-compare__btn--primary:hover {
  background: #123bb3 !important;
  color: #ffffff !important;
}

article.tia-card--compare .tia-card-compare__btn--secondary {
  background: #ffffff !important;
  color: #1d4ed8 !important;
  border: 1px solid #1d4ed8 !important;
}

article.tia-card--compare .tia-card-compare__btn--secondary:hover {
  background: #eff6ff !important;
  color: #123bb3 !important;
}

/* Tablet */
@media (max-width: 1024px) {
  article.tia-card.tia-card--compare {
    grid-template-columns: 245px minmax(0, 1fr) !important;
  }

  article.tia-card--compare .tia-card-compare__content {
    grid-template-columns: minmax(0, 1fr) 230px !important;
  }

  article.tia-card--compare .tia-card-compare__main {
    padding: 21px 20px !important;
  }

  article.tia-card--compare .tia-card-compare__side {
    padding: 21px 16px 16px !important;
  }

  article.tia-card--compare .tia-card-compare__title {
    font-size: 23px !important;
  }

  article.tia-card--compare .tia-card-compare__price strong {
    font-size: 20px !important;
  }

  article.tia-card--compare .tia-card-compare__price.is-missing strong {
    font-size: 17px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .tia-card-grid {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  article.tia-card.tia-card--compare {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 16px 0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  article.tia-card--compare .tia-card-compare__media {
    width: 100% !important;
    height: 185px !important;
    min-height: 185px !important;
  }

  article.tia-card--compare .tia-card-compare__media img {
    width: 100% !important;
    height: 185px !important;
    min-height: 185px !important;
  }

  article.tia-card--compare .tia-card-compare__content {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  article.tia-card--compare .tia-card-compare__main {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 17px 16px 12px !important;
    overflow: hidden !important;
  }

  article.tia-card--compare .tia-card-compare__location {
    font-size: 13px !important;
    margin-bottom: 7px !important;
    overflow-wrap: anywhere !important;
  }

  article.tia-card--compare .tia-card-compare__title {
    font-size: 21px !important;
    line-height: 1.14 !important;
    margin-bottom: 9px !important;
    overflow-wrap: anywhere !important;
  }

  article.tia-card--compare .tia-card-compare__excerpt {
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin-bottom: 12px !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
  }

  article.tia-card--compare .tia-card-compare__chips {
    gap: 7px !important;
    margin-bottom: 13px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }

  article.tia-card--compare .tia-card-compare__chips span {
    max-width: 100% !important;
    font-size: 12.5px !important;
    padding: 6px 9px !important;
    white-space: normal !important;
  }

  article.tia-card--compare .tia-card-compare__facts {
    gap: 10px !important;
  }

  article.tia-card--compare .tia-card-compare__facts div {
    font-size: 13px !important;
  }

  article.tia-card--compare .tia-card-compare__side {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    border-left: 0 !important;
    border-top: 1px solid #e5edf9 !important;
    padding: 14px 16px 16px !important;
    background: #ffffff !important;
    gap: 13px !important;
    overflow: hidden !important;
  }

  article.tia-card--compare .tia-card-compare__price {
    padding: 12px !important;
    border-radius: 14px !important;
    background: #f8fbff !important;
    border: 1px solid #dbe7fb !important;
  }

  article.tia-card--compare .tia-card-compare__price span {
    font-size: 13px !important;
    margin-bottom: 5px !important;
  }

  article.tia-card--compare .tia-card-compare__price strong {
    font-size: 21px !important;
    line-height: 1.18 !important;
    overflow-wrap: anywhere !important;
  }

  article.tia-card--compare .tia-card-compare__price.is-missing strong {
    font-size: 17px !important;
    line-height: 1.22 !important;
  }

  article.tia-card--compare .tia-card-compare__contacts {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  article.tia-card--compare .tia-card-compare__contact-label {
    margin-bottom: 0 !important;
    font-size: 12.5px !important;
  }

  article.tia-card--compare .tia-card-compare__contact-icons {
    gap: 7px !important;
    flex: 0 0 auto !important;
    flex-wrap: nowrap !important;
  }

  article.tia-card--compare .tia-card-compare__contact-icons a {
    width: 32px !important;
    height: 32px !important;
    font-size: 14px !important;
  }

  article.tia-card--compare .tia-card-compare__actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  article.tia-card--compare .tia-card-compare__btn {
    min-height: 42px !important;
    padding: 9px 10px !important;
    border-radius: 11px !important;
    font-size: 13px !important;
    white-space: normal !important;
  }
}

/* Mobile piccolo */
@media (max-width: 420px) {
  article.tia-card--compare .tia-card-compare__media,
  article.tia-card--compare .tia-card-compare__media img {
    height: 165px !important;
    min-height: 165px !important;
  }

  article.tia-card--compare .tia-card-compare__title {
    font-size: 19px !important;
  }

  article.tia-card--compare .tia-card-compare__excerpt {
    -webkit-line-clamp: 2 !important;
  }

  article.tia-card--compare .tia-card-compare__actions {
    grid-template-columns: 1fr !important;
  }

  article.tia-card--compare .tia-card-compare__price strong {
    font-size: 19px !important;
  }

  article.tia-card--compare .tia-card-compare__price.is-missing strong {
    font-size: 16px !important;
  }
}
/* ============================================================
   Servizi con icone nelle card comparatore
   ============================================================ */

article.tia-card--compare .tia-card-compare__chips span {
  gap: 7px !important;
  padding: 7px 11px !important;
}

article.tia-card--compare .tia-card-compare__chips span b {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: 18px !important;
  height: 18px !important;
  font-size: 15px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

article.tia-card--compare .tia-card-compare__chips span em {
  display: inline-block !important;
  min-width: 0 !important;
  max-width: 170px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-style: normal !important;
}

/* Mobile: icona + testo corto, senza rompere la card */
@media (max-width: 767px) {
  article.tia-card--compare .tia-card-compare__chips span {
    max-width: 100% !important;
    gap: 6px !important;
    padding: 6px 9px !important;
  }

  article.tia-card--compare .tia-card-compare__chips span b {
    width: 17px !important;
    height: 17px !important;
    font-size: 14px !important;
  }

  article.tia-card--compare .tia-card-compare__chips span em {
    max-width: 145px !important;
    white-space: nowrap !important;
  }
}

/* Mobile piccolo */
@media (max-width: 420px) {
  article.tia-card--compare .tia-card-compare__chips span em {
    max-width: 118px !important;
  }
}
/* ============================================================
   Pulizia finale card: nasconde facts ripetitivi e compatta servizi
   ============================================================ */

article.tia-card--compare .tia-card-compare__facts {
  display: none !important;
}

article.tia-card--compare .tia-card-compare__chips {
  margin-bottom: 0 !important;
}

/* Evita pillole troppo larghe su desktop */
article.tia-card--compare .tia-card-compare__chips span em {
  max-width: 165px !important;
}

/* Mobile più pulito */
@media (max-width: 767px) {
  article.tia-card--compare .tia-card-compare__facts {
    display: none !important;
  }

  article.tia-card--compare .tia-card-compare__chips {
    margin-bottom: 0 !important;
  }

  article.tia-card--compare .tia-card-compare__side {
    margin-top: 2px !important;
  }

  article.tia-card--compare .tia-card-compare__chips span em {
    max-width: 140px !important;
  }
}

@media (max-width: 420px) {
  article.tia-card--compare .tia-card-compare__chips span em {
    max-width: 115px !important;
  }
}

/* ============================================================
   TiAssisto - Icone servizi professionali definitive
   Card risultati + scheda singola
   Versione 1.2.0
   ============================================================ */

article.tia-card--compare .tia-card-compare__chips,
.tia-single-rich__services {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

article.tia-card--compare .tia-card-compare__chips span,
.tia-single-rich__service {
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  min-height: 38px !important;
  padding: 7px 13px 7px 8px !important;
  border-radius: 16px !important;
  background: #f8fbff !important;
  border: 1px solid #d8e7fb !important;
  color: #071747 !important;
  font-weight: 850 !important;
  line-height: 1.15 !important;
}

article.tia-card--compare .tia-card-compare__chips span b,
.tia-single-rich__service-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 999px !important;
  background: #edf8f3 !important;
  border: 1px solid #c9e7d8 !important;
  color: #2f8a67 !important;
  line-height: 1 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  flex: 0 0 30px !important;
  font-size: 0 !important;
}

article.tia-card--compare .tia-card-compare__chips span b svg,
.tia-single-rich__service-icon svg {
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  overflow: visible !important;
  flex: 0 0 auto !important;
}

article.tia-card--compare .tia-card-compare__chips span b svg path,
article.tia-card--compare .tia-card-compare__chips span b svg circle,
article.tia-card--compare .tia-card-compare__chips span b svg rect,
.tia-single-rich__service-icon svg path,
.tia-single-rich__service-icon svg circle,
.tia-single-rich__service-icon svg rect {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.85 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke !important;
}

article.tia-card--compare .tia-card-compare__chips span em {
  display: inline-block !important;
  font-style: normal !important;
  color: #071747 !important;
  min-width: 0 !important;
}

@media (max-width: 767px) {
  article.tia-card--compare .tia-card-compare__chips span,
  .tia-single-rich__service {
    min-height: 36px !important;
    padding: 7px 11px 7px 8px !important;
  }

  article.tia-card--compare .tia-card-compare__chips span b,
  .tia-single-rich__service-icon {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    flex-basis: 28px !important;
  }

  article.tia-card--compare .tia-card-compare__chips span b svg,
  .tia-single-rich__service-icon svg {
    width: 17px !important;
    height: 17px !important;
  }
}

/* ============================================================
   TiAssisto - FIX v1.2.1: icone servizi sempre visibili
   ============================================================ */
article.tia-card--compare .tia-card-compare__chips span b,
.tia-single-rich__service-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  flex: 0 0 30px !important;
  border-radius: 999px !important;
  background: #edf8f3 !important;
  border: 1px solid #c9e7d8 !important;
  color: #2f8a67 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
  font-size: 0 !important;
  line-height: 1 !important;
}

article.tia-card--compare .tia-card-compare__chips span b svg,
.tia-single-rich__service-icon svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  overflow: visible !important;
  color: currentColor !important;
}

article.tia-card--compare .tia-card-compare__chips span b svg path,
article.tia-card--compare .tia-card-compare__chips span b svg circle,
article.tia-card--compare .tia-card-compare__chips span b svg rect,
.tia-single-rich__service-icon svg path,
.tia-single-rich__service-icon svg circle,
.tia-single-rich__service-icon svg rect {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.9 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

article.tia-card--compare .tia-card-compare__chips span em {
  font-style: normal !important;
}



/* ============================================================
   TiAssisto - FIX layout pagina /cerca/
   Versione 1.2.2
   ============================================================ */

.tia-search-results {
  padding-top: 34px !important;
  padding-bottom: 56px !important;
}

.tia-search-results .tia-archive__top {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 520px) !important;
  gap: 28px !important;
  align-items: end !important;
  margin-bottom: 26px !important;
}

.tia-search-results__summary {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 20px !important;
  margin-bottom: 24px !important;
}

.tia-search-results__summary h2 {
  margin: 0 0 12px !important;
}

.tia-search-results__summary p {
  margin: 8px 0 !important;
}

.tia-search-results__actions {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
}

.tia-compare-layout {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) !important;
  gap: 24px !important;
  align-items: start !important;
  width: 100% !important;
}

.tia-compare-results {
  min-width: 0 !important;
}

.tia-filter-panel {
  position: sticky !important;
  top: 92px !important;
  align-self: start !important;
  background: #ffffff !important;
  border: 1px solid #d8e7fb !important;
  border-radius: 22px !important;
  padding: 20px !important;
  box-shadow: 0 18px 45px rgba(15, 23, 42, 0.06) !important;
}

.tia-filter-panel__label {
  color: #2457e6 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
}

.tia-filter-panel h2 {
  margin: 0 0 16px !important;
  color: #071747 !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
  font-weight: 950 !important;
}

.tia-filter-group {
  border-top: 1px solid #e3eefc !important;
  padding-top: 16px !important;
  margin-top: 16px !important;
}

.tia-filter-group h3 {
  margin: 0 0 12px !important;
  color: #071747 !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 950 !important;
}

.tia-filter-check {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 42px !important;
  padding: 10px 12px !important;
  margin: 8px 0 !important;
  border: 1px solid #d8e7fb !important;
  border-radius: 14px !important;
  background: #f8fbff !important;
  color: #071747 !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  cursor: pointer !important;
}

.tia-filter-check input {
  width: 17px !important;
  height: 17px !important;
  margin: 0 !important;
  accent-color: #2457e6 !important;
  flex: 0 0 auto !important;
}

.tia-filter-check span {
  display: block !important;
  line-height: 1.2 !important;
}

.tia-filter-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  margin-top: 18px !important;
  border: 0 !important;
  border-radius: 15px !important;
  background: #2457e6 !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 950 !important;
  cursor: pointer !important;
  box-shadow: 0 14px 28px rgba(36, 87, 230, 0.22) !important;
}

.tia-search-intro-card {
  background: #ffffff !important;
  border: 1px solid #d8e7fb !important;
  border-radius: 22px !important;
  padding: 26px 28px !important;
  margin-bottom: 22px !important;
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.045) !important;
}

.tia-search-intro-card h2 {
  margin: 0 0 12px !important;
  color: #071747 !important;
  font-size: 28px !important;
  line-height: 1.14 !important;
  font-weight: 950 !important;
}

.tia-search-intro-card p {
  margin: 0 !important;
  color: #41557d !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

.tia-card-grid--archive {
  display: grid !important;
  gap: 24px !important;
}

/* Nasconde la vecchia griglia se qualche CSS storico prova a forzare il layout */
.tia-compare-results .tia-card-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;
}

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

@media (max-width: 980px) {
  .tia-search-results .tia-archive__top {
    grid-template-columns: 1fr !important;
  }

  .tia-search-results__summary {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .tia-compare-layout {
    grid-template-columns: 1fr !important;
  }

  .tia-filter-panel {
    position: static !important;
    top: auto !important;
    border-radius: 20px !important;
    padding: 18px !important;
    margin-bottom: 18px !important;
  }
}

@media (max-width: 767px) {
  .tia-search-results {
    padding-top: 22px !important;
  }

  .tia-filter-panel {
    padding: 16px !important;
  }

  .tia-filter-panel h2 {
    font-size: 22px !important;
  }

  .tia-filter-group {
    padding-top: 14px !important;
    margin-top: 14px !important;
  }

  .tia-filter-check {
    min-height: 40px !important;
    padding: 9px 11px !important;
    font-size: 13.5px !important;
  }

  .tia-search-intro-card {
    padding: 22px 20px !important;
    border-radius: 20px !important;
  }

  .tia-search-intro-card h2 {
    font-size: 23px !important;
  }
}
/* ==========================================================
   TiAssisto - Fix testo card mobile non tagliato
   ========================================================== */

@media (max-width: 767px) {

  .tia-card,
  .tia-listing-card,
  .tia-compare-card,
  .tia-result-card,
  .tia-card--listing {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .tia-card__body,
  .tia-card__content,
  .tia-listing-card__body,
  .tia-listing-card__content,
  .tia-compare-card__body,
  .tia-compare-card__content,
  .tia-result-card__body,
  .tia-result-card__content {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .tia-card p,
  .tia-listing-card p,
  .tia-compare-card p,
  .tia-result-card p,
  .tia-card__excerpt,
  .tia-listing-card__excerpt,
  .tia-compare-card__excerpt,
  .tia-result-card__excerpt,
  .tia-listing-excerpt,
  .tia-card-excerpt {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;

    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    -webkit-box-orient: unset !important;

    font-size: 14px !important;
    line-height: 1.45 !important;
    margin-bottom: 12px !important;
  }

  .tia-card h2,
  .tia-card h3,
  .tia-listing-card h2,
  .tia-listing-card h3,
  .tia-compare-card h2,
  .tia-compare-card h3,
  .tia-result-card h2,
  .tia-result-card h3 {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;

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

  .tia-card__services,
  .tia-listing-card__services,
  .tia-compare-card__services,
  .tia-result-card__services,
  .tia-services {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  .tia-card__services span,
  .tia-listing-card__services span,
  .tia-compare-card__services span,
  .tia-result-card__services span,
  .tia-service-chip,
  .tia-chip {
    max-width: 100% !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    line-height: 1.25 !important;
  }
}