/* Migrated component rules; preserve media conditions and source order. */
.category-showcase .showcase-card-body .add-cart > i {
  color: var(--industrial-yellow) !important;
  opacity: 1;
}

.category-showcase
  .showcase-card-body
  .add-cart:is(:hover, :focus-visible, .added)
  > i {
  color: var(--industrial-navy) !important;
}

.product-card .product-image,
.search-product.product-card .search-product-image {
  min-height: 220px !important;
  max-height: 220px !important;
}

.product-card:not(.product-detail-related-card):not(.favorite-item-card):not([data-sales-plan-id]:not([data-sales-plan-id="regular"])) .product-image > a > img,
.product-card:not(.product-detail-related-card):not([data-sales-plan-id]:not([data-sales-plan-id="regular"])) .product-image > img,
.search-product.product-card .search-product-image img {
  padding: 12px;
  object-fit: contain !important;
}

/* Preserve framed photos on other home cards; special sales-plan cards stay edge-to-edge. */
.home-page
  :is(
    .product-card:not([data-sales-plan-id]:not([data-sales-plan-id="regular"])) .product-image img,
    .showcase-card .product-image img,
    .rail-card .rail-image img
  ) {
  box-sizing: border-box;
  padding: 8px;
  border: 1px solid #dce3e8;
  border-radius: 12px;
  background: #fff;
  object-fit: contain;
  object-position: center;
}

/* Sales-plan cards use the full media frame and identify the plan on the image. */
.home-page #homeSalesPlans .product-card[data-sales-plan-id]:not([data-sales-plan-id="regular"]) .product-image > a > img {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  object-fit: cover;
}

.product-card > .add-cart,
.search-product.product-card > .search-add-cart,
.showcase-card-body > .add-cart,
.rail-card > .add-cart,
#productView .product-detail-related-card > .add-cart {
  flex-shrink: 0;
}

.product-card > .add-cart > i,
.search-product.product-card > .search-add-cart > i,
.showcase-card-body > .add-cart > i,
.rail-card > .add-cart > i,
#productView .product-detail-related-card > .add-cart > i {
  display: inline-block !important;
  color: var(--industrial-yellow) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.product-card > .add-cart:is(:hover, :focus-visible) > i,
.search-product.product-card > .search-add-cart:is(:hover, :focus-visible) > i,
.showcase-card-body > .add-cart:is(:hover, :focus-visible) > i,
.rail-card > .add-cart:is(:hover, :focus-visible) > i,
#productView .product-detail-related-card > .add-cart:is(:hover, :focus-visible) > i {
  color: var(--industrial-navy) !important;
}

@media (min-width: 390px) and (max-width: 767px) {
  .product-card .product-image,
  .search-product.product-card .search-product-image {
    height: 154px !important;
    min-height: 154px !important;
    max-height: 154px !important;
  }

  .product-card .product-info,
  .search-product.product-card .product-info {
    min-height: 104px;
    padding: 10px 11px 8px !important;
  }

  .product-card .product-info h3,
  .search-product.product-card .product-info h3 {
    min-height: 42px;
  }

  .product-card .product-info > p,
  .search-product.product-card .search-product-price {
    font-size: 14px;
  }

  .product-card > .add-cart,
  .search-product.product-card > .search-add-cart {
    width: calc(100% - 20px);
    min-height: 38px;
    margin: 0 10px 10px;
    gap: 5px;
    font-size: 11px;
  }
}

@media (max-width: 389px) {

  .product-card .product-image,
  .search-product.product-card .search-product-image {
    height: 195px !important;
    min-height: 195px !important;
    max-height: 195px !important;
  }
}

.showcase-card-body {
  display: flex;
  min-height: 214px;
  padding: 15px 16px 16px !important;
  flex: 1;
  flex-direction: column;
  align-items: stretch;
}

@media (max-width: 575px) {

  .showcase-card-body {
    min-height: 195px;
    padding: 13px !important;
  }
}

.product-card-actions {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 8;
  display: grid;
  gap: 8px;
  opacity: 0;
  visibility: visible;
  pointer-events: none;
  transform: translateX(-7px);
  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s ease;
}

.product-card:is(:hover, :focus-within) .product-card-actions,
.showcase-card:is(:hover, :focus-within) .product-card-actions,
.rail-card:is(:hover, :focus-within) .product-card-actions {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0);
}

.product-card-actions > .favorite,
.product-card-actions > .compare-trigger,
.product-card-actions > .add-cart {
  position: relative !important;
  inset: auto !important;
  display: grid !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  place-items: center;
  border: 1px solid #dbe3e7 !important;
  border-radius: 50% !important;
  background: var(--color-white) !important;
  color: var(--industrial-navy) !important;
  box-shadow: 0 5px 15px rgba(16, 42, 67, 0.2) !important;
  cursor: pointer;
  transform: none;
}

.product-card-actions > .favorite,
.product-card-actions > .compare-trigger {
  font-size: 16px !important;
}

.product-card-actions > .favorite:hover:not(.active),
.product-card-actions > .favorite.active,
.product-card-actions > .compare-trigger:hover,
.product-card-actions > .compare-trigger.active {
  border-color: var(--industrial-yellow) !important;
  background: #fff8d9 !important;
  color: var(--industrial-navy) !important;
}

.product-card-actions > .add-cart {
  border-color: var(--industrial-navy) !important;
  background: var(--industrial-navy) !important;
  color: var(--industrial-yellow) !important;
  font-size: 0 !important;
}

.product-card-actions > .add-cart > i {
  display: grid;
  width: 100%;
  height: 100%;
  flex: none;
  place-items: center;
  border: 0 !important;
  background: transparent !important;
  color: var(--industrial-yellow) !important;
  font-size: 18px !important;
}

.product-card-actions > .add-cart:hover,
.product-card-actions > .add-cart:focus-visible,
.product-card-actions > .add-cart.added {
  border-color: var(--industrial-yellow) !important;
  background: var(--industrial-yellow) !important;
  color: var(--industrial-navy) !important;
}

.product-card-actions > .add-cart:hover > i,
.product-card-actions > .add-cart:focus-visible > i,
.product-card-actions > .add-cart.added > i {
  background: transparent !important;
  color: var(--industrial-navy) !important;
}

@media (hover: none), (max-width: 991px) {
  .product-card-actions {
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .product-card-actions {
    transition: none;
  }
}

.product-price-deal {
  display: contents;
}

.product-price-discount {
  display: inline-flex;
  min-height: 27px;
  align-items: center;
  padding: 3px 10px;
  border-radius: 999px;
  background: #fff0f0;
  color: #b83242;
  font-weight: 850;
  white-space: nowrap;
}

.product-price-current {
  display: block;
  color: var(--industrial-navy) !important;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.65;
  white-space: nowrap;
}

.product-price-current small {
  color: var(--industrial-muted) !important;
  font-size: 12px !important;
  font-weight: 600;
}

.search-product.product-card .search-product-price.has-discount {
  display: grid;
  gap: 2px;
  align-content: start;
}

.showcase-card-body > .add-cart {
  width: 100%;
  margin: 12px 0 0 !important;
}

:is(
    .search-product-price,
    .product-card-sale-price,
    .favorite-item-price,
    .compare-price-values,
    .product-info > p
  ).has-discount {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "current current"
    "old discount";
  align-items: center;
  column-gap: 10px;
  row-gap: 0;
}

:is(
    .search-product-price,
    .product-card-sale-price,
    .favorite-item-price,
    .compare-price-values,
    .product-info > p
  ).has-discount > .product-price-current {
  grid-area: current;
  justify-self: start;
  margin: 0;
  text-align: right;
}

:is(
    .search-product-price,
    .product-card-sale-price,
    .favorite-item-price,
    .compare-price-values,
    .product-info > p
  ).has-discount .price-old {
  grid-area: old;
  justify-self: start;
  margin: 0;
  text-align: right;
  white-space: nowrap;
}

:is(
    .search-product-price,
    .product-card-sale-price,
    .favorite-item-price,
    .compare-price-values,
    .product-info > p
  ).has-discount .product-price-discount {
  grid-area: discount;
  align-self: center;
  justify-self: end;
}

.search-main .search-product {
  border-radius: 15px;
}

:is(
    .product-card .product-image,
    .search-product .search-product-image,
    .showcase-card .product-image,
    .rail-card .rail-image,
    .product-card-actions
  )
  > :is(.favorite, .compare-trigger) {
  display: grid !important;
  box-sizing: border-box;
  place-items: center !important;
  padding: 0 !important;
  line-height: 1 !important;
}

:is(
    .product-card .product-image,
    .search-product .search-product-image,
    .showcase-card .product-image,
    .rail-card .rail-image,
    .product-card-actions
  )
  > :is(.favorite, .compare-trigger)
  > i {
  display: grid !important;
  width: 100%;
  height: 100%;
  margin: 0 !important;
  place-items: center !important;
  line-height: 1 !important;
}

#collection .product-card .product-image > img,
#collection .product-card .product-image > a > img {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  padding: 0 !important;
  border: 0;
  border-radius: 0;
  object-fit: cover !important;
  object-position: center;
}

:is(
    .product-card > .add-cart,
    .search-product.product-card > .search-add-cart,
    .showcase-card-body > .add-cart,
    .rail-card > .add-cart,
    .product-detail-related-card > .add-cart,
    .product-card-actions > .add-cart
  ).added {
  position: relative !important;
  overflow: hidden;
  color: transparent !important;
}

:is(
    .product-card > .add-cart,
    .search-product.product-card > .search-add-cart,
    .showcase-card-body > .add-cart,
    .rail-card > .add-cart,
    .product-detail-related-card > .add-cart,
    .product-card-actions > .add-cart
  ).added > :not(.add-cart-confirmation) {
  visibility: hidden !important;
}

.product-card-actions > .add-cart .add-cart-confirmation > span {
  display: none;
}

:is(#amazing, #bestsellersSlider, #newestSlider) :is(.showcase-card, .product-card) .product-image {
  overflow: hidden;
  padding: 0 !important;
  background: #edf1f3 !important;
}

:is(#amazing, #bestsellersSlider, #newestSlider) :is(.showcase-card, .product-card) .product-image > a {
  display: block;
  width: 100%;
  height: 100%;
}

:is(#amazing, #bestsellersSlider, #newestSlider) :is(.showcase-card, .product-card) .product-image > img,
:is(#amazing, #bestsellersSlider, #newestSlider) :is(.showcase-card, .product-card) .product-image > a > img {
  display: block;
  box-sizing: border-box;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  object-fit: cover !important;
  object-position: center;
}

.product-card-sale-price {
  display: grid;
  min-height: 58px;
  margin-top: auto;
  align-content: center;
  gap: 2px;
}

.product-card-sale-price .product-price-deal,
.compare-price-values .product-price-deal {
  justify-content: flex-start;
}

.product-card-sale-price .product-price-current {
  font-size: 18px;
}

.product-card .product-info > p.has-discount {
  display: grid;
  min-height: 58px;
  align-content: center;
  gap: 2px;
}

.compare-price-values.has-discount .product-price-current {
  font-size: 18px;
}

.product-price-discount {
  font-size: 12px;
}

#productView .product-detail-related-card .product-info > p > .product-price-current {
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.55;
}

#productView .product-detail-related-card .product-info > p.has-discount {
  grid-template-columns: max-content max-content;
  grid-template-areas:
    "current current"
    "old discount";
  justify-content: start;
  column-gap: 8px;
}

#productView .product-detail-related-card .product-info > p > .product-price-current small {
  font-size: 12px !important;
}

#productView .product-detail-related-card .product-info > p .product-price-discount {
  min-height: 25px;
  font-size: 12px !important;
}

/* Shared product-card base styles; page-specific overrides load afterward. */
:root {
  --product-card-radius: 18px;
  --product-card-code-size: var(--font-size-caption);
  --product-card-title-size: var(--font-size-card-title);
  --product-card-price-size: 18px;
  --product-card-price-unit-size: var(--font-size-caption);
  --product-card-button-size: var(--font-size-control);
  --product-card-border: var(--color-card-border);
  --product-card-border-hover: var(--color-line-strong);
  --product-card-surface: var(--color-content-surface);
  --product-card-image-surface: var(--color-page);
  --product-card-text: var(--color-text);
  --product-card-muted: var(--color-text-muted);
  --product-card-price: var(--color-navy);
  --product-card-action: var(--color-navy);
  --product-card-action-hover: var(--color-blue);
}

.product-card-clickable {
  cursor: pointer;
}

.product-card,
.search-product.product-card {
  display: flex;
  width: 100%;
  height: 100%;
  overflow: hidden;
  flex-direction: column;
  border: 1px solid var(--product-card-border);
  border-radius: var(--product-card-radius);
  background: var(--product-card-surface);
  box-shadow: var(--shadow-card);
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

.product-card:hover,
.search-product.product-card:hover {
  border-color: var(--product-card-border-hover);
  box-shadow: var(--shadow-card-hover);
  transform: translateY(-6px);
}

.product-card .product-image,
.search-product.product-card .search-product-image {
  position: relative;
  height: var(--product-card-image-height);
  flex: none;
  overflow: hidden;
  padding: 0;
  border-bottom: 1px solid var(--color-divider);
  background: var(--product-card-image-surface);
}

.product-card .product-image > img,
.search-product.product-card .search-product-image > img {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  object-fit: cover;
  object-position: center;
  transition: transform 0.7s ease;
}

.product-card:hover .product-image > img,
.search-product.product-card:hover .search-product-image > img {
  transform: scale(1.05);
}

.product-card .product-info,
.search-product.product-card .product-info {
  display: flex;
  min-height: 122px;
  padding: 20px 20px 16px;
  flex: 1;
  flex-direction: column;
  align-items: stretch;
}

.search-product.product-card .product-info {
  min-height: 156px;
}

.product-card .product-info > div > small {
  display: block;
  min-height: 18px;
  margin: 0 0 5px;
  color: var(--color-accent-ink, #866600);
  font-family: var(--font-body);
  font-size: var(--product-card-code-size);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.07em;
}

.product-card .product-info h3,
.search-product.product-card .product-info h3 {
  min-height: 31px;
  margin: 0;
  color: var(--product-card-text);
  font-family: var(--font-body);
  font-size: var(--product-card-title-size);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: -0.035em;
}

.product-card .product-info > p,
.search-product.product-card .search-product-price {
  min-height: 30px;
  margin: 2px 0 0;
  color: var(--product-card-price);
  font-family: var(--font-body);
  font-size: var(--product-card-price-size);
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: -0.02em;
}

.product-card .product-info > p small,
.search-product.product-card .search-product-price small {
  margin-right: 3px;
  color: var(--product-card-muted);
  font-family: var(--font-body);
  font-size: var(--product-card-price-unit-size);
  font-weight: 600;
  letter-spacing: 0;
}

.product-card > .add-cart,
.search-product.product-card > .search-add-cart {
  display: inline-flex;
  width: calc(100% - 32px);
  min-height: 48px;
  margin: 0 16px 16px;
  padding: 11px 18px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid var(--product-card-action);
  border-radius: 10px;
  background: var(--product-card-action);
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: var(--product-card-button-size);
  font-weight: 600;
  line-height: 1.6;
}

.product-card > .add-cart i,
.search-product.product-card > .search-add-cart i {
  margin: 0;
  color: var(--color-gold);
  font-size: 15px;
}

.product-card > .add-cart:hover:not(:disabled),
.product-card > .add-cart:focus-visible:not(:disabled),
.search-product.product-card > .search-add-cart:hover:not(:disabled),
.search-product.product-card > .search-add-cart:focus-visible:not(:disabled) {
  border-color: var(--color-accent-border-soft, var(--color-gold));
  background: var(--product-card-action-hover);
  color: var(--color-white);
  box-shadow: var(--shadow-card-hover);
  transform: translateY(-1px);
}

.product-card > .add-cart:disabled,
.search-product.product-card > .search-add-cart:disabled,
.showcase-card-body > .add-cart:disabled,
.rail-card > .add-cart:disabled {
  border-color: var(--color-border, #dbe3e7);
  background: #e9edf0;
  color: #687783;
  box-shadow: none;
  cursor: not-allowed;
  opacity: 1;
  transform: none;
}

#favoritesView .favorite-item-card {
  display: flex;
  height: 100%;
  min-height: 0;
  flex-direction: column;
  overflow: hidden;
  padding: 0;
  border: 1px solid var(--product-card-border);
  border-radius: var(--product-card-radius);
  background: var(--product-card-surface);
  box-shadow: var(--shadow-card);
  transition:
    transform 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease;
}

#favoritesView .favorite-item-card:hover {
  transform: translateY(-6px);
  border-color: var(--product-card-border-hover);
  box-shadow: var(--shadow-card-hover);
}

#favoritesView .favorite-item-card .list-remove-button {
  width: calc(100% - 32px);
  min-height: 48px;
  margin: 0 16px 16px;
  border-radius: 10px;
  font-size: var(--product-card-button-size);
}

/* Keep every desktop home-grid price on the same two-row format. */
.home-page #homeSalesPlans .home-sales-plan-grid > [class*="col-"] {
  display: flex;
}

.home-page #homeSalesPlans .home-sales-plan-grid .product-card {
  width: 100%;
  height: 100%;
}

.product-sales-plan-badge {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  align-items: center;
  gap: 5px;
  margin-block: 4px 2px;
  padding: 3px 8px;
  border: 1px solid rgba(178, 138, 79, 0.2);
  border-radius: 999px;
  background: rgba(246, 197, 21, 0.1);
  color: #85601f;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.5;
}

.product-sales-plan-badge--overlay {
  position: absolute;
  z-index: 2;
  top: 16px;
  right: 15px;
  margin: 0;
  min-height: 34px;
  padding: 4px 12px;
  border: 1px solid rgba(255, 255, 255, 0.78);
  background: linear-gradient(135deg, #f9d544, #efb800);
  color: #102b43;
  box-shadow: 0 5px 14px rgba(4, 13, 26, 0.28), 0 0 0 2px rgba(16, 43, 67, 0.22);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.product-card[data-sales-plan-id="digi-time"] .product-sales-plan-badge--overlay {
  background: linear-gradient(135deg, #ffdf63, #f1b900);
  color: #102b43;
}

.product-card[data-sales-plan-id="digi-af"] .product-sales-plan-badge--overlay {
  background: linear-gradient(135deg, #087c69, #075544);
  color: #fff;
}

.product-sales-plan-badge i {
  flex: 0 0 auto;
}

@media (min-width: 768px) {
  .home-page :is(#productGrid, #homeSalesPlans .home-sales-plan-grid) .product-info > p {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: 28px 24px;
    grid-template-areas:
      "current current"
      "old discount";
    align-items: center;
    align-content: center;
    column-gap: 10px;
    row-gap: 0;
    white-space: nowrap;
  }

  .home-page :is(#productGrid, #homeSalesPlans .home-sales-plan-grid) .product-info > p .product-price-current {
    grid-area: current;
    justify-self: start;
    margin: 0;
    color: var(--product-card-price);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.45;
  }

  .home-page :is(#productGrid, #homeSalesPlans .home-sales-plan-grid) .product-info > p .product-price-current small {
    color: var(--product-card-muted);
    font-size: 11px;
    font-weight: 600;
  }

  .home-page :is(#productGrid, #homeSalesPlans .home-sales-plan-grid) .product-info > p .price-old {
    grid-area: old;
    justify-self: start;
    margin: 0;
    font-size: 14px;
    line-height: 1.4;
  }

  .home-page :is(#productGrid, #homeSalesPlans .home-sales-plan-grid) .product-info > p .product-price-discount {
    grid-area: discount;
    align-self: center;
    justify-self: end;
    font-size: 13px;
  }
}

#favoritesView .price-old,
.product-price-deal .price-old,
.product-detail-sale-meta .price-old,
.inner-page main .search-product .price-old,
#productView .product-detail-related-card .product-info > p .price-old {
  text-decoration-thickness: 1px;
}

/* Shared overlay controls. Their visual centers sit on the same baseline. */
.product-card .product-image > :is(.badge-best, .badge-new, .badge-offer),
.search-product.product-card .search-product-image > span {
  top: 16px;
  right: 15px;
  min-width: 62px;
  height: 32px;
  min-height: 32px;
  padding: 3px 14px;
  border-width: 1px;
  border-radius: 999px !important;
  font-family: var(--font-body);
  font-size: 12.5px;
  font-weight: 700;
  line-height: 1;
  box-shadow: 0 5px 13px rgba(4, 13, 26, 0.13);
}

/* The same media and price markup is used in every card context. */
.product-card .product-image > a,
.showcase-card .product-image > a {
  display: block;
  width: 100%;
  height: 100%;
}

.showcase-card-body > .product-card-sale-price {
  margin: 4px 0 0;
  min-height: 58px;
  color: var(--product-card-price);
  font-size: var(--product-card-price-size);
}

/* Related cards use the same image, content, title, and action rhythm as home cards. */
#productView .product-detail-related-card {
  min-width: 0;
  min-height: 470px;
  margin: 0;
}

#productView .product-detail-related-card .product-info {
  min-height: 118px;
  padding: 14px 15px 12px;
}

#productView .product-detail-related-card .product-image > a > img {
  padding: 0;
  object-fit: cover;
  object-position: center;
}

#productView .product-detail-related-card .product-info h3 {
  display: -webkit-box;
  min-height: 4.95em;
  max-height: none;
  margin: 0 0 3px;
  overflow: hidden;
  font-size: 15px;
  line-height: 1.65;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

#productView .product-detail-related-card > .add-cart {
  width: calc(100% - 28px);
  min-height: 42px;
  margin: 0 14px 14px;
  padding: 8px 10px;
  border-radius: 9px;
  font-size: 12.5px;
}

@media (min-width: 390px) and (max-width: 767px) {
  #productView .product-detail-related-card > .add-cart {
    width: calc(100% - 20px);
    min-height: 38px;
    margin: 0 10px 10px;
    font-size: 11px;
  }
}

@media (max-width: 767px) {
  #productView .product-detail-related-card {
    --product-card-image-height: clamp(112px, 34vw, 180px);
    height: auto;
    min-height: 0;
    flex: 0 1 auto;
  }

  #productView .product-detail-related-card .product-info {
    flex: 0 1 auto;
    min-height: 0;
  }

  #productView .product-detail-related-card .product-image > a > img {
    padding: 0;
  }

  #productView .product-detail-related-card .product-info h3 {
    min-height: 4.5em;
    max-height: 4.5em;
    margin-bottom: 0;
  }

  #productView .product-detail-related-card .product-info > p {
    height: 46px;
    min-height: 46px;
    flex: 0 0 46px;
  }

  #favoritesView .favorite-item-card .product-info {
    flex: 0 1 auto;
    gap: 6px;
  }
  #favoritesView .favorite-item-card .product-info h3 {
    min-height: 4.5em;
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
  }
  #favoritesView .favorite-item-card .product-price-current {
    font-size: 14px;
    line-height: 1.6;
    white-space: normal;
  }
  #favoritesView .favorite-item-card .product-price-current small {
    display: inline-block;
    font-size: 10px;
  }
  #favoritesView .favorite-item-card .list-remove-button {
    font-size: 10px;
    gap: 4px;
    margin-top: auto;
  }
  .product-card .product-image > :is(.badge-best, .badge-new, .badge-offer) {
    top: 8px;
    right: 7px;
    min-width: 0;
    max-width: calc(100% - 60px);
    height: auto;
    min-height: 28px;
    padding: 5px 8px;
    font-size: 11px;
    line-height: 1.4;
    overflow-wrap: anywhere;
  }
  .product-card .product-info h3,
  .search-product.product-card .product-info h3,
  .showcase-card-body h3,
  .rail-card h3,
  #productView .product-detail-related-card .product-info h3 {
    font-size: 14px;
    line-height: 1.5;
  }

  .mobile-page--home-index #productGrid > .product-col .product-info h3 {
    font-size: 14px;
    line-height: 1.5;
  }

  .product-card .product-info > p {
    min-height: 46px;
    margin: 4px 0 6px;
    font-size: 14px;
    line-height: 1.4;
  }
}
