/* PATCH_ID: b2c_phase5e18d_product_name_emphasis_stage_safe_20260522 */

/*
  Product name emphasis on hover.
  Works with E18/E18b/E18c runtime classes.
  Keeps layout stable by using transform scale instead of changing actual line-height.
*/

.b2c-product-hover-ready .b2c-product-hover-name,
.b2c-product-hover-card .b2c-product-hover-name,
.b2c-product-hover-ready .product-name,
.b2c-product-hover-card .product-name{
  display:inline-block;
  transform-origin:left center;
  transition:
    transform .28s cubic-bezier(.2,.8,.2,1),
    color .24s ease,
    text-shadow .24s ease,
    letter-spacing .24s ease !important;
  will-change:transform;
}

.b2c-product-hover-ready:hover .b2c-product-hover-name,
.b2c-product-hover-card:hover .b2c-product-hover-name,
.b2c-product-hover-ready:hover .product-name,
.b2c-product-hover-card:hover .product-name{
  transform:translateX(4px) scale(1.075) !important;
  color:#1f1528 !important;
  letter-spacing:-.035em;
  text-shadow:
    0 4px 12px rgba(255,255,255,.78),
    0 10px 22px rgba(87,44,100,.14);
}

/* When the product name has two lines, keep it readable and prevent jump. */
.b2c-product-hover-ready .b2c-product-hover-name,
.b2c-product-hover-card .b2c-product-hover-name{
  max-width:100%;
  line-height:1.28;
}

/* Price should stay slightly behind the name visually. */
.b2c-product-hover-ready:hover .price,
.b2c-product-hover-card:hover .price{
  transform:translateX(3px) scale(1.015) !important;
}

/* Touch devices: no sticky enlarged text. */
@media (hover:none){
  .b2c-product-hover-ready:hover .b2c-product-hover-name,
  .b2c-product-hover-card:hover .b2c-product-hover-name,
  .b2c-product-hover-ready:hover .product-name,
  .b2c-product-hover-card:hover .product-name{
    transform:none !important;
    text-shadow:none !important;
  }
}

@media (prefers-reduced-motion: reduce){
  .b2c-product-hover-ready .b2c-product-hover-name,
  .b2c-product-hover-card .b2c-product-hover-name,
  .b2c-product-hover-ready .product-name,
  .b2c-product-hover-card .product-name{
    transition:none !important;
  }
}
