/** Shopify CDN: Minification failed

Line 224:0 Unexpected "}"

**/
/* === MD Tarjeta de producto ===
   Snippet compartido por las rejillas de producto (home, colección, relacionados).
   Medidas de la web original a 440px (móvil) y 1280px (escritorio). */

/* Reset */
.md-tarjeta-producto,
.md-tarjeta-producto *,
.md-tarjeta-producto *::before,
.md-tarjeta-producto *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
.md-tarjeta-producto a { color: inherit; text-decoration: none; }
.md-tarjeta-producto img,
.md-tarjeta-producto svg { max-width: none; border: none; }

/* Tarjeta */
.md-tarjeta-producto {
  --md-tarjeta-producto-body-pad: clamp(6.3px, 1.95vw, 8.6px);
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  font-family: var(--md-font-body);
  font-weight: var(--md-font-weight-regular);
  color: var(--md-color-black);
  background: transparent;
}

.md-tarjeta-producto__link {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
}

/* Imagen cuadrada */
.md-tarjeta-producto__media {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-bottom: 100%;
}

.md-tarjeta-producto__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  /* Las fotos son verticales: se encajan enteras en el cuadrado, como en la web original */
  object-fit: contain;
  background: var(--md-color-bg);
  z-index: 0;
}

.md-tarjeta-producto__img--placeholder {
  background: var(--md-color-bg-soft);
  fill: var(--md-color-muted);
}

/* Flags: descuento y novedad, apiladas en la esquina superior izquierda */
.md-tarjeta-producto__flags {
  list-style: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(2.6px, 0.82vw, 3.6px);
}

.md-tarjeta-producto__flag {
  font-size: clamp(6.9px, 2.14vw, 9.4px);
  line-height: 1.1;
  padding: clamp(2.7px, 0.85vw, 3.75px) clamp(3.8px, 1.19vw, 5.25px);
  color: var(--md-color-on-dark);
  white-space: nowrap;
}

.md-tarjeta-producto__flag--descuento {
  background-color: var(--md-color-discount);
  /* El porcentaje de descuento, algo más grande que el resto de etiquetas (petición del cliente) */
  font-size: clamp(9.5px, 2.95vw, 13px);
  font-weight: var(--md-font-weight-bold);
  padding: clamp(3.3px, 1.02vw, 4.5px) clamp(5.1px, 1.59vw, 7px);
}
.md-tarjeta-producto__flag--nuevo { background-color: var(--md-color-new); }

/* Cuerpo */
.md-tarjeta-producto__body {
  display: flex;
  flex-direction: column;
  padding: var(--md-tarjeta-producto-body-pad);
}

.md-tarjeta-producto__brand {
  font-size: clamp(8.8px, 2.73vw, 12px);
  line-height: 1.4;
  color: var(--md-color-muted);
  margin-bottom: clamp(2.2px, 0.68vw, 3px);
}

/* Título: 2 líneas reservadas para alinear los precios entre tarjetas */
.md-tarjeta-producto__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-family: var(--md-font-body);
  font-size: clamp(8.8px, 2.73vw, 12px);
  font-weight: var(--md-font-weight-regular);
  line-height: 1.2;
  min-height: 2.4em;
  margin-bottom: clamp(3.5px, 1.09vw, 4.8px);
  color: var(--md-color-black);
}

/* Precios */
.md-tarjeta-producto__prices {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0 0.25em;
  margin-top: clamp(8.8px, 2.73vw, 12px);
  padding-bottom: clamp(3.5px, 1.09vw, 4.8px);
  font-size: clamp(11.7px, 3.64vw, 16px);
  line-height: 1.2;
  color: var(--md-color-price, var(--md-color-accent));
}

.md-tarjeta-producto__price--regular {
  text-decoration: line-through;
  /* Sin opacidad: el tachado ya indica el estado y mantiene el contraste */
}

.md-tarjeta-producto__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* Texto de entrega */
.md-tarjeta-producto__delivery {
  display: flex;
  align-items: flex-start;
  gap: 0.35em;
  margin: clamp(8.8px, 2.73vw, 12px) 0 clamp(7px, 2.18vw, 9.6px);
  font-size: clamp(8.8px, 2.73vw, 12px);
  line-height: 1.4;
  color: var(--md-color-black);
}

.md-tarjeta-producto__delivery-icon {
  flex: 0 0 auto;
  width: 1em;
  height: 1em;
  margin-top: 0.2em;
  fill: currentColor;
}

/* Tallas: solo con puntero (aparecen al pasar el ratón, como en la web original). En pantallas
   táctiles no hay hover y ocupaban mucho alto, así que no se muestran: la tarjeta entera enlaza a
   la ficha, donde se elige la talla. */
.md-tarjeta-producto__sizes {
  display: none;
}

@media (hover: hover) {
  .md-tarjeta-producto__sizes {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    padding: 0 var(--md-tarjeta-producto-body-pad) var(--md-tarjeta-producto-body-pad);
    font-size: clamp(8.8px, 2.73vw, 12px);
    line-height: 1.4;
    color: var(--md-color-muted);
    /* Entrada de abajo arriba al pasar el ratón */
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
  }

  .md-tarjeta-producto:hover .md-tarjeta-producto__sizes,
  .md-tarjeta-producto:focus-within .md-tarjeta-producto__sizes {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  .md-tarjeta-producto__size {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0 clamp(2px, 0.64vw, 2.8px);
  }

  .md-tarjeta-producto__size--agotada {
    text-decoration: line-through;
    /* Sin opacidad: el tachado y el aria-label ya indican que está agotada */
  }

  /* Con tallas, el cuerpo cede su relleno inferior a la lista: las tallas quedan pegadas al texto
     de entrega y el aire se reserva bajo ellas, separándolas de la tarjeta de abajo */
  .md-tarjeta-producto:has(.md-tarjeta-producto__sizes) .md-tarjeta-producto__body {
    padding-bottom: 0;
  }

  .md-tarjeta-producto:has(.md-tarjeta-producto__sizes) .md-tarjeta-producto__delivery {
    margin-bottom: clamp(2.9px, 0.9vw, 4px);
  }
}
}

/* Accesibilidad */
.md-tarjeta-producto a:focus-visible {
  outline: 2px solid var(--md-color-focus, #000);
  outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
  .md-tarjeta-producto,
  .md-tarjeta-producto *,
  .md-tarjeta-producto *::before,
  .md-tarjeta-producto *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* Tablet y escritorio: la web original usa las mismas medidas a partir de 768px */
@media (min-width: 768px) {
  .md-tarjeta-producto {
    --md-tarjeta-producto-body-pad: 10px;
  }

  .md-tarjeta-producto__flags { gap: 4.2px; }

  .md-tarjeta-producto__flag {
    font-size: 11px;
    padding: 4.4px 6.1px;
  }

  .md-tarjeta-producto__flag--descuento {
    font-size: 15px;
    padding: 5px 8px;
  }

  .md-tarjeta-producto__brand {
    font-size: 13px;
    margin-bottom: 3px;
  }

  .md-tarjeta-producto__title {
    font-size: 15px;
    margin-bottom: 5.6px;
  }

  .md-tarjeta-producto__prices {
    margin-top: 14px;
    padding-bottom: 5.6px;
    font-size: 25px;
  }

  .md-tarjeta-producto__delivery {
    margin: 14px 0 11.2px;
    font-size: 15px;
  }

  .md-tarjeta-producto__sizes {
    padding: 0 var(--md-tarjeta-producto-body-pad) var(--md-tarjeta-producto-body-pad);
    font-size: 14px;
  }

  .md-tarjeta-producto__size {
    padding: 0 2.8px;
  }
}

/* === Variante "relacionados" (carrusel de la ficha de producto) ===
   Imagen redondeada, precio en negrita y botón negro a todo el ancho; sin flags ni tallas.
   Medidas a 440px (imagen 205) y a 1280px (imagen 266). */
.md-tarjeta-producto--relacionados {
  --md-tarjeta-producto-body-pad: 0px;
  --md-tarjeta-producto-btn-radius: clamp(5.8px, 1.82vw, 8px);
}

.md-tarjeta-producto--relacionados .md-tarjeta-producto__media {
  border-radius: clamp(7.3px, 2.27vw, 10px);
}

.md-tarjeta-producto--relacionados .md-tarjeta-producto__body {
  flex: 1 1 auto;
}

.md-tarjeta-producto--relacionados .md-tarjeta-producto__title {
  font-size: clamp(10.2px, 3.18vw, 14px);
  line-height: 1.2857;
  min-height: 2.5714em;
  max-height: 2.5714em;
  margin: clamp(4.4px, 1.36vw, 6px) 0;
}

.md-tarjeta-producto--relacionados .md-tarjeta-producto__prices {
  margin-top: 0;
  padding-bottom: 0;
  margin-bottom: clamp(9.5px, 2.95vw, 13px);
  font-size: clamp(13.1px, 4.09vw, 18px);
  font-weight: var(--md-font-weight-bold);
  line-height: 1.2222;
  color: var(--md-color-price-product, var(--md-color-black));
}

.md-tarjeta-producto--relacionados .md-tarjeta-producto__price--regular {
  margin-left: clamp(3.6px, 1.14vw, 5px);
  font-size: clamp(8.8px, 2.73vw, 12px);
  font-weight: var(--md-font-weight-regular);
  /* Gris del original (#999) sustituido por el gris de tokens con contraste suficiente */
  color: var(--md-color-muted);
}

/* Formulario nativo del tema: sin caja propia, el botón ocupa todo el ancho */
.md-tarjeta-producto__form,
.md-tarjeta-producto__form-inner {
  display: block;
  width: 100%;
  margin-top: auto;
}

.md-tarjeta-producto__form .md-tarjeta-producto__form-inner {
  margin-top: 0;
}

/* Botón negro: "Añadir al carrito" (submit) o "Ver producto" (enlace) */
.md-tarjeta-producto__button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(4.4px, 1.36vw, 6px);
  width: 100%;
  min-height: clamp(26.3px, 8.18vw, 36px);
  margin-top: auto;
  padding: 0 clamp(8.8px, 2.73vw, 12px);
  border: none;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  font-family: var(--md-font-body);
  font-size: clamp(10.2px, 3.18vw, 14px);
  font-weight: var(--md-font-weight-bold);
  line-height: 1.2143;
  text-align: center;
  color: var(--md-color-on-dark);
  background-color: var(--md-color-black);
  border-radius: var(--md-tarjeta-producto-btn-radius);
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

/* El reset de enlaces (.md-tarjeta-producto a) tiene más especificidad que la clase del botón */
.md-tarjeta-producto .md-tarjeta-producto__button {
  color: var(--md-color-on-dark);
}

.md-tarjeta-producto__button:hover {
  background-color: var(--md-color-dark);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.md-tarjeta-producto__button:active {
  background-color: var(--md-color-dark);
  box-shadow: none;
}

.md-tarjeta-producto__button[disabled],
.md-tarjeta-producto__button[aria-disabled="true"] {
  cursor: default;
  opacity: 0.6;
}

.md-tarjeta-producto__button-icon {
  flex: 0 0 auto;
  width: clamp(11px, 3.41vw, 15px);
  height: clamp(11px, 3.41vw, 15px);
}

.md-tarjeta-producto__button-text {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.md-tarjeta-producto button:focus-visible {
  outline: 2px solid var(--md-color-focus, #000);
  outline-offset: 2px;
}

@media (max-width: 767px) {
  .md-tarjeta-producto__button {
    min-height: 44px;
  }
}

@media (min-width: 768px) {
  .md-tarjeta-producto--relacionados {
    --md-tarjeta-producto-body-pad: 0px;
    --md-tarjeta-producto-btn-radius: 10px;
  }

  .md-tarjeta-producto--relacionados .md-tarjeta-producto__media {
    border-radius: 15px;
  }

  .md-tarjeta-producto--relacionados .md-tarjeta-producto__title {
    font-size: 18px;
    line-height: 1.2222;
    min-height: 2.4444em;
    max-height: 2.4444em;
    margin: 10px 0;
  }

  .md-tarjeta-producto--relacionados .md-tarjeta-producto__prices {
    margin-top: 0;
    padding-bottom: 0;
    margin-bottom: 22px;
    font-size: 22px;
  }

  .md-tarjeta-producto--relacionados .md-tarjeta-producto__price--regular {
    margin-left: 8px;
    font-size: 16px;
  }

  .md-tarjeta-producto__button {
    gap: 8px;
    min-height: 42px;
    padding: 0 12px;
    font-size: 17px;
    line-height: 1.1765;
  }

  .md-tarjeta-producto__button-icon {
    width: 20px;
    height: 20px;
  }
}
