/* Productos en profundidad: zoom frontal por transform, sin repintar el layout. */
.product-carousel.is-enhanced { --step: clamp(240px, 29vw, 370px); }
.is-enhanced .brands__products { display: block; position: relative; height: 565px; margin: 16px 0 0; overflow: hidden; touch-action: pan-y; contain: layout paint; }
.is-enhanced .brands__products > li { position: absolute; top: 24px; left: 50%; width: 500px; max-width: 52%; opacity: 0; pointer-events: none; transform: translate3d(calc(-50% + var(--offset) * var(--step)), 0, 0) scale(var(--scale)); transform-origin: center 43%; transition: transform .9s cubic-bezier(.25,.1,.25,1), opacity .65s ease; will-change: transform, opacity; backface-visibility: hidden; z-index: 0; }
.is-enhanced .brands__products > li.is-near { opacity: .65; pointer-events: auto; z-index: 1; }
.is-enhanced .brands__products > li.is-active { opacity: 1; pointer-events: auto; z-index: 2; }
.product-carousel__product { position: relative; display: block; width: 100%; padding: 0 8px 10px; border: 0; background: none; color: inherit; text-align: center; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.product-carousel__product::before { content: ''; position: absolute; top: 405px; left: 20%; width: 60%; height: 24px; border-radius: 50%; background: radial-gradient(ellipse, #15344b26 0, #15344b0d 40%, transparent 72%); pointer-events: none; }
.is-enhanced .brands__products img { height: 420px; width: 100%; aspect-ratio: auto; padding: 10px 8px 24px; object-fit: contain; animation: product-float 4.5s ease-in-out infinite; will-change: transform; backface-visibility: hidden; user-select: none; }
.is-enhanced .brands__products img { animation-delay: var(--float-delay, 0s); }
.is-enhanced .brands__products-name { margin-top: 20px; font-size: 1.4rem; line-height: 1.3; }
.is-enhanced .brands__products-cat { font-size: .9375rem; }
@keyframes product-float { 0%, 100% { transform: translate3d(0, 0, 0); } 50% { transform: translate3d(0, -18px, 0); } }
.product-carousel__controls { display: flex; justify-content: center; align-items: center; gap: 18px; margin-top: 4px; }
.product-carousel__controls button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #a9bac6; border-radius: 50%; background: transparent; color: #005695; cursor: pointer; font-size: 1.8rem; line-height: 1; }
.product-carousel__controls button:hover { background: #dce5ec; border-color: #005695; }
.product-carousel__count { min-width: 62px; text-align: center; font-size: .875rem; font-variant-numeric: tabular-nums; color: #38536a; }
.product-carousel__controls .product-carousel__play { width: auto; border-radius: 6px; padding: 0 12px; font-size: .8125rem; }
.product-carousel__controls [hidden] { display: none; }
@media (max-width: 600px) {
  .product-carousel.is-enhanced { --step: 58vw; }
  .is-enhanced .brands__products { height: 430px; margin-top: 12px; }
  .is-enhanced .brands__products > li { width: 92%; max-width: none; top: 22px; }
  .is-enhanced .brands__products img { height: 295px; padding: 8px 0 20px; }
  .product-carousel__product::before { top: 282px; }
  .is-enhanced .brands__products-name { font-size: 1.125rem; margin-top: 18px; }
  .is-enhanced .brands__products-cat { font-size: .8125rem; }
  .product-carousel__controls { gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .is-enhanced .brands__products > li { transition: none; }
  .is-enhanced .brands__products img { animation: none; }
}
