.eva-ugc {
  padding-top: max(calc(var(--eva-pt, 80) * 0.5px), min(calc(var(--eva-pt, 80) * 1px), calc(var(--eva-pt, 80) / 19.2 * 1vw)));
  padding-bottom: max(calc(var(--eva-pb, 80) * 0.5px), min(calc(var(--eva-pb, 80) * 1px), calc(var(--eva-pb, 80) / 19.2 * 1vw)));
}
.eva-ugc__inner { max-width: calc(1420px + var(--eva-gutter) * 2); }
.eva-ugc__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding-bottom: clamp(32px, 3.125vw, 60px);
  text-align: center;
}
.eva-ugc a.eva-ugc__sublink { color: inherit; text-decoration: none; }
.eva-ugc a.eva-ugc__sublink:hover { text-decoration: underline; text-underline-offset: 4px; }

.eva-ugc__track {
  --eva-slide-gap: clamp(16px, 1.5625vw, 30px);
  --eva-slide-w: calc((100% - (var(--eva-ugc-cols, 4) - 1) * var(--eva-slide-gap)) / var(--eva-ugc-cols, 4));
  margin: 0;
  padding: 0;
  list-style: none;
}
.eva-ugc__item { display: flex; flex-direction: column; gap: 20px; }
.eva-ugc__media {
  position: relative;
  aspect-ratio: 333 / 592;
  overflow: hidden;
  background: var(--eva-sabia);
}
.eva-ugc__media > img,
.eva-ugc__media > video,
.eva-ugc__media > .eva-ugc__video,
.eva-ugc__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s var(--eva-ease);
}
.eva-ugc__media .eva-ugc__external,
.eva-ugc__media .eva-ugc__external .theme-video-media { position: absolute; inset: 0; height: 100%; aspect-ratio: auto !important; }
.eva-ugc__item:hover .eva-ugc__media > img { transform: scale(1.03); }
.eva-ugc__overlay { position: absolute; inset: 0; z-index: 1; }

.eva-ugc__content { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
.eva-ugc__handle {
  margin: 0;
  font-size: var(--eva-fs-eyebrow);
  line-height: 30px;
  letter-spacing: 0.05em;
}
.eva-ugc .eva-ugc__handle a { color: inherit; text-decoration: none; }
.eva-ugc__item:hover .eva-ugc__handle,
.eva-ugc__item:focus-within .eva-ugc__handle { font-weight: 700; }
.eva-ugc__caption { max-width: 333px; }

.eva-ugc a.eva-ugc__product {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  margin-top: 6px;
  padding: 8px 12px 8px 8px;
  border: 1px solid var(--eva-line);
  color: inherit;
  text-align: left;
  text-decoration: none;
  transition: border-color 0.2s;
}
.eva-ugc a.eva-ugc__product:hover { border-color: currentColor; }
.eva-ugc__product img { flex: none; width: 48px; height: 48px; object-fit: contain; background: var(--eva-white); }
.eva-ugc__product-info { display: flex; flex: 1; flex-direction: column; min-width: 0; line-height: 1.3; }
.eva-ugc__product-title {
  overflow: hidden;
  font-family: var(--eva-serif);
  font-weight: 700;
  font-size: 18px;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.eva-ugc__product-price { font-size: 13px; font-weight: 600; }

.eva-ugc__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-top: 32px;
}
.eva-ugc__nav .eva-carousel__progress { margin: 0; }
.eva-ugc__nav:has(.eva-carousel__progress[hidden]) { display: none; }
[data-eva-bg="bosque"] .eva-ugc .eva-arrow { color: var(--eva-crema); }

@media (max-width: 959px) {
  .eva-ugc__inner { padding-inline: 0; }
  .eva-ugc__head { padding-inline: var(--eva-gutter); }
  .eva-ugc__track {
    --eva-slide-w: 64%;
    --eva-slide-gap: 12px;
    padding-inline: var(--eva-gutter);
    scroll-padding-inline: var(--eva-gutter);
  }
  .eva-ugc__item { gap: 14px; }
  .eva-ugc__nav .eva-arrow { display: none; }
}
