/** Shopify CDN: Minification failed

Line 463:7 Expected ":"
Line 464:6 Expected ":"
Line 478:8 Expected ":"
Line 490:6 Expected ":"
Line 491:7 Expected ":"
Line 510:6 Expected ":"
Line 511:7 Expected ":"

**/
/* ===== QUICK VIEW MODAL ===== */
.qv-overlay {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.6);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease;
  overflow: hidden;
}

.qv-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}

.qv-modal {
  background: #fff;
  border-radius: 16px;
  width: 90vw;
  max-width: 900px;
  height: 75vh;
  max-height: 75vh;
  position: relative !important;
  overflow: hidden;
  display: flex;
  transform: scale(0.95);
  transition: transform 0.25s ease;
}

.qv-overlay.is-open .qv-modal {
  transform: scale(1);
}

.qv-close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 10;
  background: rgba(255,255,255,0.8);
  border: none;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  font-size: 16px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.qv-inner {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: row;
  overflow: hidden;
  height: 100%;
}

.qv-media {
  flex: 0 0 50%;
  width: 50%;
  position: relative;
  background: #fff;
  overflow: hidden;
  height: 100%;
}

.qv-carousel {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.qv-carousel img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  padding: 24px;
  box-sizing: border-box;
  opacity: 0;
  transition: opacity 0.35s ease;
}

.qv-carousel img.active {
  opacity: 1;
}

.qv-dots {
  position: absolute;
  bottom: 16px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
  background: rgba(255,255,255,0.6);
  backdrop-filter: blur(8px);
  padding: 6px 12px;
  border-radius: 20px;
  z-index: 2;
  pointer-events: auto;
}

.qv-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(0,0,0,0.25);
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
}

.qv-dot.active {
  background: #111;
  transform: scale(1.3);
}

.qv-info {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 36px 32px 56px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-sizing: border-box;
  min-height: 0;
}

.qv-vendor {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  color: #999;
  margin: 0;
  font-weight: 500;
}

.qv-title {
  font-size: 26px;
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
  color: #111;
  letter-spacing: -0.02em;
}

.qv-price-rating {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: nowrap;
  gap: 8px;
}

.qv-price {
  font-size: 20px;
  font-weight: 600;
  color: #111;
  flex-shrink: 0;
}

.qv-rating {
  font-size: 13px;
  color: #666;
  flex-shrink: 0;
  text-align: right;
}

.qv-description {
  font-size: 14px;
  line-height: 1.7;
  color: #555;
  margin: 0;
}

.qv-variants {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.qv-variant-btn {
  border: 1.5px solid #ddd;
  border-radius: 8px;
  padding: 7px 16px;
  font-size: 15px;
  cursor: pointer;
  background: #fff;
  color: #333;
  transition: all 0.2s ease;
  font-weight: 500;
}

.qv-variant-btn.active {
  border-color: #111;
  background: #111;
  color: #fff;
}

.qv-stock {
  font-size: 13px;
  color: #e53935;
  font-weight: 500;
}

.qv-atc {
  background: #111;
  color: #fff;
  border: none;
  border-radius: 50px;
  padding: 16px 28px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  width: 100%;
  transition: background 0.2s ease;
}

.qv-atc:hover { background: #333; }
.qv-atc:disabled { background: #999; cursor: not-allowed; }

body.qv-open { overflow: hidden; }

.qv-full-link {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(255,255,255,0.4);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 32px;
  font-size: 15px;
  color: #111;
  text-decoration: none;
  font-weight: 500;
  border-top: 1px solid rgba(235,235,235,0.6);
  z-index: 5;
  flex-shrink: 0 !important;
}

.qv-full-link::after {
  content: '→';
  font-size: 16px;
}

.qv-full-link:hover { text-decoration: underline; }

.qv-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 0;
  position: relative;
  border-left: 1px solid #f0f0f0;
}

.qv-info > .qv-full-link {
  margin-top: auto;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* ========================= */
/* =====  Share + Help ===== */
.qv-share-help {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 12px 0 !important;
  border-top: 2px solid #fff !important;
  margin-top: 4px !important;
  flex-shrink: 0 !important;
}

.qv-share-btn,
.qv-help-btn {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
  color: #111 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  font-weight: 500 !important;
}

.qv-share-btn:hover,
.qv-help-btn:hover { color: #1a73e8; }

/* Guarantees */
.qv-guarantees {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  border: 2px solid #fff !important;
  background-color: #f0f0f0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  margin-top: 0px !important;
  flex-shrink: 0 !important;
  margin-bottom: 60px;
}

.qv-guarantee-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
  color: #444 !important;
  border-bottom: 2px solid #fff !important;
}

.qv-guarantee-item:last-child { border-bottom: none !important; }

.qv-guarantee-item svg {
  flex-shrink: 0;
  color: #555;
}

/* ===== RESET CENTRADO DEL TEMA ===== */
.card__information,
.card-information,
.card-wrapper .card__information,
.card-wrapper .card-information {
  text-align: left !important;
}

/* ===== CARD INFORMATION LAYOUT ===== */
.card-information {
  position: relative;
  padding: 0;
  overflow: visible !important;
}

/* Línea 1: Marca */
.card-vendor {
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #999;
  margin-bottom: 4px;
  display: block;
}

/* Línea 2: Título + Precio */
.card-wrapper .card-information .card-title-price-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 8px;
  margin-bottom: 8px;
}

.card-title {
  flex: 1;
  min-width: 0;
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.3;
  text-align: left !important;
}

.card-title a {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
}

.card-price {
  flex-shrink: 0;
  text-align: right !important;
  white-space: nowrap;
  max-width: 45%;
  pointer-events: none !important;
}

.card-price .price__from,
.card-price .price-item--regular::before {
  display: none !important;
}

.card-price .price-item--regular {
  font-size: 14px !important;
  font-weight: 600;
}

/* ===== SWATCHES ===== */
.card-swatch {
  width: 34px !important;
  height: 34px !important;
  border-radius: 6px;
  border: 0px solid transparent;
  padding: 1px;
  cursor: pointer;
  background: #f5f5f5;
  transition: border-color 0.2s ease, transform 0.2s ease;
  overflow: hidden;
  flex-shrink: 0;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 10 !important;
}

.card-swatch img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
  display: block;
}

.card-swatch.active { border-color: #111; }
.card-swatch:hover { transform: scale(1.1); border-color: #999; }
.card-img-slide { pointer-events: none !important; }

/* ===== CARD ATC ===== */
.botón-envoltorio-tarjeta.carta-atc,
.card button.card-atc {
 flex-shrink: 0;
 ¡Ancho: 40px ! importante;
 Altura: 40px ! Importante;
 Ancho-mínimo: 40px !Importante;
 Altura mínima: 40px !importante;
 Radio de frontera: 50% !importante;
 frontera: ¡ninguna importante!
 Resumen: ¡Ninguno! Importante;
 Antecedentes: RGBA (156, 163, 175, 0.85) !importante;
 color: ¡Blanco! importante;
 cursor: puntero;
 relleno: 0 !importante;
 Pantalla: ¡Flex! importante;
 Alinear-ítems: ¡centro !importante;
 Justificar-contenido: Centro !importante;
 Sombra-caja: 0 2px 6px rgba(0,0,0,0.15) !importante;
 transición: todos los 0.3s facilitan !importante;
 Z-Index: 99999 !importante;
 posición: relativo !importante;
 Eventos de puntería: AUTO !Importante;
 opacidad: 1 !importante;
 visibilidad: visible! importante;
}

button.card-atc:hover
.botón-envoltorio.carta-atc:pasa el cursor,
.card button.card-atc:hover {
 Antecedentes: #1a73e8 !importante;
 color: #fff !importante;
 Ancho: 48px ! importante;
 Altura: 48px ! importante;
 Ancho mínimo: 48px ! Importante;
 Altura mínima: 48px ! Importante;
 Sombra-caja: 0 6px 20px rgba(26,115,232,0.45) !importante;
 transformar: ¡ninguno importante!
}

button.card-atc:focus,
button.card-atc:focus-visible {
 Resumen: ¡Ninguno! Importante;
 Sombra-caja: 0 2px 6px rgba(0,0,0,0.15) !importante;
 frontera: ¡ninguna importante!
}

button.card-atc.is-added,
.botón-envoltorio.carta-atc.est-añadido,
.card button.card-atc.is-added {
 Antecedentes: #1a73e8 !importante;
 color: #fff !importante;
 Ancho: 48px ! importante;
 Altura: 48px ! importante;
 Ancho mínimo: 48px ! Importante;
 Altura mínima: 48px ! Importante;
 Sombra-caja: 0 6px 20px rgba(26,115,232,0.45) !importante;
}



.card-atc__icon--check { display: none !important; }

.card-atc__icon--check.visible {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  stroke: white !important;
  color: white !important;
}

.card-atc__icon--check.visible polyline,
.card-atc__icon--check.visible path { stroke: white !important; }

/* ===== QUICK VIEW BUTTON ===== */
.card-badge--view {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
}

.card__media:hover .card-badge--view,
.card:hover .card-badge--view {
  opacity: 1;
  visibility: visible;
}

/* ===== MOBILE ===== */
@media (max-width: 749px) {

  .card-badge--view {
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
  }

  .card-swatch {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
  }

  button.card-atc,
  .card-wrapper button.card-atc {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
  }

  .card-title { font-size: 13px !important; }

  .card-price { font-size: 13px !important; max-width: 40% !important; }

  .qv-modal {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: calc(100dvh - 24px);
    border-radius: 16px;
    overflow: hidden;
    padding-bottom: env(safe-area-inset-bottom);
    box-shadow: 0 10px 30px rgba(0,0,0,0.2);
  }

  .qv-image-wrapper {
    flex-shrink: 0;
    max-height: 42vh;
    padding-top: 8px;
  }

  .qv-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    min-height: 0;
    padding: 16px;
    padding-bottom: 60px;
  }

  .qv-overlay {
    position: fixed;
    inset: 0;
    height: 100dvh;
    padding: 12px 0;
    display: flex;
    justify-content: center;
    align-items: stretch;
    backdrop-filter: blur(4px);
  }

  .qv-footer {
    position: sticky;
    bottom: 0;
    background: white;
    z-index: 5;
    padding: 12px 10px;
    border-top: 1px solid #eee;
    padding-bottom: calc(12px + env(safe-area-inset-bottom));
  }
}
