/* One square frame per card keeps image and copy baselines consistent. */
.woocommerce ul.products li.product .tt-product-card-media,
.tt-product-card .tt-product-card-media {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 1 / 1 !important;
  padding: 0 !important;
  line-height: 0;
  background: transparent !important;
  align-self: start;
  border-radius: 24px !important;
  position: relative;
  overflow: hidden;
}
.woocommerce ul.products li.product .tt-product-card-media img,
.tt-product-card .tt-product-card-media img {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  contain: none !important;
  contain-intrinsic-size: none !important;
  object-fit: cover !important;
  object-position: center 58% !important;
  transform: none !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  box-shadow: none !important; /* taste-skill-ignore: cancel inherited card-image elevation. */
}
.tt-product-card-media i { line-height: 1; }
.tt-product-card .tt-product-card-copy {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 8px !important;
  padding: 18px 0 0 !important;
}
.tt-product-card-copy small { grid-column: 1 !important; }
.tt-product-card-copy strong {
  display: block !important;
  min-height: 2.6em;
  line-height: 1.3 !important;
  margin: 0 !important;
  font-size: clamp(16px, 1.2vw, 20px) !important;
}
.woocommerce ul.products li.product .tt-product-card-copy strong {
  height: 2.6em !important;
  min-height: 2.6em !important;
  overflow: hidden;
  display: -webkit-box !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.tt-product-card-copy .price {
  display: flex !important;
  flex-wrap: wrap;
  gap: 4px 8px;
  align-items: baseline;
}
.tt-product-card-copy > span {
  display: flex !important;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 8px;
  white-space: normal !important;
}
@media (max-width: 600px) {
  .tt-product-card .tt-product-card-media { border-radius: 16px !important; }
  .tt-product-card .tt-product-card-copy { padding-top: 12px !important; gap: 6px !important; }
  .tt-product-card-copy strong { font-size: 16px !important; min-height: 3.9em; }
  .woocommerce ul.products li.product .tt-product-card-copy strong {
    height: 3.9em !important;
    min-height: 3.9em !important;
    -webkit-line-clamp: 3;
  }
}
