{"product_id":"sauvage","title":"Sauvage Dior 100ml","description":"\u003cmeta name=\"description\" content=\"Sauvage Dior 100 ml. Fragancia masculina premium con envío gratis y pago contra entrega en República Dominicana.\"\u003e\n\u003clink rel=\"preconnect\" href=\"https:\/\/cdn.shopify.com\"\u003e\n\u003cstyle\u003e\n\/* =========================================================\n   SAUVAGE DIOR — PALETA AZUL NOCTURNO PROFUNDO\n   ========================================================= *\/\n\n.sauvage-page {\n  --midnight: #090f1e;       \/* Azul noche ultra profundo *\/\n  --sauvage-blue: #111e38;   \/* Azul cobalto oscuro *\/\n  --sauvage-accent: #3b82f6; \/* Azul eléctrico de contraste *\/\n  --sauvage-light-bg: #0f1b33;\/* Fondo secundario oscuro *\/\n  --dark-slate: #030712;    \/* Fondo oscuro primario *\/\n  --text-dark: #f8fafc;     \/* Texto para secciones oscuras *\/\n  --text-light: #1e293b;    \/* Texto para secciones claras *\/\n  --muted: #94a3b8;\n  --border: rgba(255, 255, 255, .12);\n  --border-light: #cbd5e1;\n  --citrus-gold: #fbbf24;    \/* Estrellas y acentos dorados *\/\n  --green: #22c55e;\n\n  width: 100%;\n  max-width: 1200px;\n  margin: 0 auto;\n  color: var(--text-light);\n  font-family: Arial, Helvetica, sans-serif;\n  overflow: hidden;\n  background: #fff;\n}\n\n.sauvage-page *,\n.sauvage-page *::before,\n.sauvage-page *::after { box-sizing: border-box; }\n\n.sauvage-page img,\n.sauvage-page video { display: block; max-width: 100%; }\n\n.sauvage-container {\n  width: min(1080px, calc(100% - 30px));\n  margin: 0 auto;\n}\n\n\/* TOPBAR AZUL ELEGANTE *\/\n.sauvage-topbar {\n  padding: 11px 12px;\n  background: linear-gradient(90deg, var(--dark-slate) 0%, var(--midnight) 50%, var(--dark-slate) 100%);\n  color: #fff;\n  text-align: center;\n  font-size: 11px;\n  line-height: 1.25;\n  font-weight: 900;\n  letter-spacing: .5px;\n  border-bottom: 1px solid rgba(59, 130, 246, .4);\n}\n\n\/* OCULTAR BOTÓN ORIGINAL DE REALISIT *\/\nbody .rsi-buy-now-button.rsi-buy-now-button-product {\n  position: absolute !important;\n  left: -99999px !important;\n  top: -99999px !important;\n  width: 1px !important;\n  height: 1px !important;\n  min-width: 1px !important;\n  min-height: 1px !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  opacity: 0 !important;\n  visibility: hidden !important;\n  pointer-events: none !important;\n  overflow: hidden !important;\n}\n\n\/* HERO SECTION CON FONDO ELEGANTE *\/\n.sauvage-product-hero {\n  padding: 22px 0 30px;\n  background: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);\n}\n\n.sauvage-product-layout {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n}\n\n\/* GALERÍA 4:5 *\/\n.sauvage-gallery { min-width: 0; }\n\n.sauvage-gallery-main {\n  position: relative;\n  width: 100%;\n  aspect-ratio: 4\/5;\n  height: auto;\n  overflow: hidden;\n  border-radius: 20px;\n  background: #fff;\n  border: 1px solid var(--border-light);\n  box-shadow: 0 10px 30px rgba(9, 15, 30, .12);\n}\n\n.sauvage-gallery-track {\n  display: flex;\n  width: 100%;\n  height: 100%;\n  transition: transform .34s ease;\n  will-change: transform;\n}\n\n.sauvage-gallery-slide {\n  position: relative;\n  flex: 0 0 100%;\n  width: 100%;\n  height: 100%;\n  aspect-ratio: 4\/5;\n  overflow: hidden;\n  background: #fff;\n}\n\n.sauvage-gallery-slide img,\n.sauvage-gallery-slide video {\n  width: 100% !important;\n  height: 100% !important;\n  max-width: none !important;\n  max-height: none !important;\n  object-fit: cover !important;\n  object-position: center !important;\n  background: #fff;\n}\n\n.sauvage-gallery-slide video { cursor: pointer; }\n\n.sauvage-video-badge {\n  position: absolute;\n  right: 12px;\n  bottom: 12px;\n  z-index: 2;\n  display: flex;\n  align-items: center;\n  gap: 5px;\n  padding: 6px 10px;\n  border-radius: 999px;\n  background: rgba(9, 15, 30, .9);\n  color: #60a5fa;\n  font-size: 9px;\n  font-weight: 900;\n  pointer-events: none;\n  border: 1px solid rgba(59, 130, 246, .4);\n}\n\n.sauvage-gallery-arrow {\n  position: absolute;\n  top: 50%;\n  z-index: 5;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 34px;\n  height: 34px;\n  margin-top: -17px;\n  border: 0;\n  border-radius: 50%;\n  background: rgba(255, 255, 255, .95);\n  color: var(--midnight);\n  font-size: 23px;\n  line-height: 1;\n  cursor: pointer;\n  box-shadow: 0 4px 15px rgba(0, 0, 0, .15);\n}\n.sauvage-gallery-arrow.prev { left: 10px; }\n.sauvage-gallery-arrow.next { right: 10px; }\n\n.sauvage-gallery-dots {\n  position: absolute;\n  left: 50%;\n  bottom: 12px;\n  z-index: 5;\n  display: flex;\n  gap: 5px;\n  transform: translateX(-50%);\n}\n.sauvage-gallery-dot {\n  width: 7px;\n  height: 7px;\n  padding: 0;\n  border: 0;\n  border-radius: 50%;\n  background: rgba(255, 255, 255, .7);\n  box-shadow: 0 1px 4px rgba(0, 0, 0, .2);\n  cursor: pointer;\n}\n.sauvage-gallery-dot.active {\n  width: 20px;\n  border-radius: 999px;\n  background: var(--sauvage-accent);\n}\n\n.sauvage-gallery-thumbs {\n  display: flex;\n  gap: 8px;\n  width: 100%;\n  margin-top: 9px;\n  overflow-x: auto;\n  scrollbar-width: none;\n  padding-bottom: 2px;\n}\n.sauvage-gallery-thumbs::-webkit-scrollbar { display: none; }\n\n.sauvage-gallery-thumb {\n  position: relative;\n  flex: 0 0 58px;\n  width: 58px;\n  height: 72px;\n  padding: 3px;\n  border: 2px solid transparent;\n  border-radius: 10px;\n  background: #fff;\n  overflow: hidden;\n  cursor: pointer;\n}\n.sauvage-gallery-thumb.active { border-color: var(--sauvage-accent); }\n.sauvage-gallery-thumb img,\n.sauvage-gallery-thumb video {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n  border-radius: 6px;\n  background: #fff;\n  pointer-events: none;\n}\n.sauvage-thumb-play { display: none !important; }\n\n\/* RATING GALERÍA *\/\n.sauvage-gallery-rating {\n  display: flex;\n  align-items: center;\n  gap: 7px;\n  margin: 10px 2px 0;\n  white-space: nowrap;\n}\n.sauvage-stars {\n  color: var(--citrus-gold);\n  font-size: 17px;\n  line-height: 1;\n  letter-spacing: 1px;\n  white-space: nowrap;\n}\n.sauvage-rating-text {\n  color: #475569;\n  font-size: 10px;\n  line-height: 1.2;\n  font-weight: 700;\n  white-space: nowrap;\n}\n\n\/* PRODUCT INFO *\/\n.sauvage-product-info {\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n}\n\n.sauvage-eyebrow {\n  display: inline-flex;\n  align-items: center;\n  width: max-content;\n  max-width: 100%;\n  padding: 6px 12px;\n  border-radius: 999px;\n  background: #dbeafe;\n  color: #1e40af;\n  font-size: 9px;\n  line-height: 1;\n  font-weight: 900;\n  letter-spacing: .05em;\n  text-transform: uppercase;\n}\n\n.sauvage-product-title {\n  margin: 10px 0 8px;\n  color: var(--midnight);\n  font-size: clamp(30px, 7vw, 48px);\n  line-height: .98;\n  letter-spacing: -1.6px;\n  font-weight: 900;\n}\n.sauvage-product-title span { color: var(--sauvage-accent); }\n\n.sauvage-short-description {\n  margin: 0;\n  color: #475569;\n  font-size: 14px;\n  line-height: 1.5;\n}\n\n.sauvage-quick-benefits {\n  display: grid;\n  grid-template-columns: repeat(2, 1fr);\n  gap: 7px;\n  margin: 14px 0 12px;\n}\n.sauvage-quick-benefit {\n  display: flex;\n  align-items: center;\n  gap: 7px;\n  min-height: 42px;\n  padding: 8px 9px;\n  border: 1px solid var(--border-light);\n  border-radius: 11px;\n  background: #fff;\n  color: var(--midnight);\n  font-size: 9px;\n  font-weight: 800;\n}\n.sauvage-quick-benefit i { font-style: normal; font-size: 16px; }\n\n.sauvage-price-row {\n  display: flex;\n  align-items: center;\n  flex-wrap: wrap;\n  gap: 9px;\n  margin: 5px 0 13px;\n}\n.sauvage-current-price {\n  color: var(--midnight);\n  font-size: 34px;\n  line-height: 1;\n  font-weight: 900;\n  letter-spacing: -1px;\n}\n.sauvage-price-note {\n  padding: 6px 10px;\n  border-radius: 999px;\n  background: #dbeafe;\n  color: #1e40af;\n  font-size: 9px;\n  font-weight: 900;\n}\n\n.sauvage-main-btn {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 100%;\n  min-height: 55px;\n  padding: 14px 18px;\n  border: 0;\n  border-radius: 13px;\n  background: linear-gradient(135deg, var(--midnight) 0%, var(--sauvage-blue) 100%);\n  color: #fff !important;\n  font-family: inherit;\n  font-size: 13px;\n  line-height: 1.15;\n  font-weight: 900;\n  text-align: center;\n  text-decoration: none !important;\n  cursor: pointer;\n  box-shadow: 0 9px 22px rgba(9, 15, 30, .35);\n  transition: .18s ease;\n  border-bottom: 3px solid var(--sauvage-accent);\n}\n.sauvage-main-btn:hover { background: var(--dark-slate); transform: translateY(-1px); }\n.sauvage-main-btn:active { transform: scale(.98); }\n\n.sauvage-payment {\n  margin-top: 8px;\n  color: #64748b;\n  font-size: 10px;\n  line-height: 1.45;\n  text-align: center;\n}\n\n\/* TRUST BAR EN AZUL OSCURO *\/\n.sauvage-trust {\n  border-top: 1px solid rgba(255,255,255,.1);\n  border-bottom: 1px solid rgba(255,255,255,.1);\n  background: var(--midnight);\n  color: #fff;\n}\n.sauvage-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); }\n.sauvage-trust-item {\n  min-width: 0;\n  padding: 14px 5px;\n  text-align: center;\n  border-right: 1px solid rgba(255,255,255,.08);\n}\n.sauvage-trust-item:last-child { border-right: 0; }\n.sauvage-trust-icon { margin-bottom: 3px; font-size: 18px; line-height: 1; }\n.sauvage-trust-item strong { display: block; color: #fff; font-size: 10px; line-height: 1.2; font-weight: 900; }\n.sauvage-trust-item span { display: block; margin-top: 3px; color: #94a3b8; font-size: 8px; line-height: 1.2; }\n\n\/* SECCIONES GENERALES *\/\n.sauvage-section { padding: 48px 0; }\n.sauvage-center { text-align: center; }\n.sauvage-heading {\n  margin: 9px 0 10px;\n  color: #fff;\n  font-size: clamp(28px, 5vw, 43px);\n  line-height: 1.02;\n  letter-spacing: -1.2px;\n  font-weight: 900;\n}\n.sauvage-heading.light { color: var(--midnight); }\n.sauvage-heading span { color: #60a5fa; }\n.sauvage-subtitle {\n  max-width: 650px;\n  margin: 0 auto;\n  color: var(--muted);\n  font-size: 13px;\n  line-height: 1.55;\n}\n\n\/* SECCIÓN EMOCIONAL EN AZUL NOCTURNO CON GRADIENTE *\/\n.sauvage-balance {\n  background: linear-gradient(135deg, var(--midnight) 0%, var(--sauvage-blue) 100%);\n  color: #fff;\n}\n.sauvage-balance-grid {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 22px;\n  align-items: center;\n}\n.sauvage-balance-image { overflow: hidden; border-radius: 18px; border: 1px solid var(--border); }\n.sauvage-balance-image img { width: 100%; aspect-ratio: 4\/5; object-fit: cover; }\n.sauvage-balance-copy p { margin: 0; color: #cbd5e1; font-size: 14px; line-height: 1.6; }\n\n.sauvage-benefit-grid {\n  display: grid;\n  grid-template-columns: repeat(2, 1fr);\n  gap: 9px;\n  margin-top: 18px;\n}\n.sauvage-benefit-card {\n  padding: 14px 11px;\n  border: 1px solid var(--border);\n  border-radius: 13px;\n  background: rgba(255, 255, 255, .05);\n  backdrop-filter: blur(4px);\n}\n.sauvage-benefit-card i { display: block; margin-bottom: 5px; font-style: normal; font-size: 20px; }\n.sauvage-benefit-card strong { display: block; color: #fff; font-size: 10px; line-height: 1.25; }\n.sauvage-benefit-card span { display: block; margin-top: 4px; color: #94a3b8; font-size: 8px; line-height: 1.35; }\n\n\/* IMAGEN DESTACADA EN FONDO CUIDADO *\/\n.sauvage-feature { padding: 30px 0; background: var(--dark-slate); }\n.sauvage-feature-image {\n  overflow: hidden;\n  max-width: 900px;\n  margin: 0 auto;\n  border-radius: 20px;\n  border: 1px solid var(--border);\n}\n.sauvage-feature-image img { width: 100%; height: auto; object-fit: contain; }\n\n\/* NOTAS OLFATIVAS FONDO AZUL PROFUNDO *\/\n.sauvage-formula { background: var(--sauvage-light-bg); color: #fff; }\n.sauvage-formula-grid {\n  display: grid;\n  grid-template-columns: repeat(4, 1fr);\n  gap: 9px;\n  margin-top: 20px;\n}\n.sauvage-formula-card {\n  padding: 16px 8px;\n  border: 1px solid var(--border);\n  border-radius: 14px;\n  background: rgba(255, 255, 255, .04);\n  text-align: center;\n}\n.sauvage-formula-icon { margin-bottom: 5px; font-size: 22px; line-height: 1; }\n.sauvage-formula-card strong { display: block; color: #fff; font-size: 11px; line-height: 1.25; }\n.sauvage-formula-card span { display: block; margin-top: 4px; color: #94a3b8; font-size: 8px; line-height: 1.35; }\n\n.sauvage-formula-image { margin-top: 20px; overflow: hidden; border-radius: 18px; border: 1px solid var(--border); }\n.sauvage-formula-image img { width: 100%; height: auto; object-fit: contain; }\n\n\/* CÓMO USAR EN FONDO CLARO PARA CONTRASTE *\/\n.sauvage-how { background: #f8fafc; }\n.sauvage-steps {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 9px;\n  margin-top: 20px;\n}\n.sauvage-step {\n  position: relative;\n  padding: 18px 10px 15px;\n  border: 1px solid var(--border-light);\n  border-radius: 14px;\n  background: #fff;\n  text-align: center;\n}\n.sauvage-step-number {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 28px;\n  height: 28px;\n  margin: 0 auto 8px;\n  border-radius: 50%;\n  background: var(--sauvage-accent);\n  color: #fff;\n  font-size: 10px;\n  font-weight: 900;\n}\n.sauvage-step strong { display: block; color: var(--midnight); font-size: 10px; }\n.sauvage-step span { display: block; margin-top: 4px; color: #64748b; font-size: 8px; line-height: 1.4; }\n.sauvage-use-note {\n  max-width: 700px;\n  margin: 14px auto 0;\n  padding: 12px 14px;\n  border-radius: 12px;\n  background: #eff6ff;\n  color: var(--midnight);\n  font-size: 9px;\n  line-height: 1.5;\n  text-align: center;\n  border: 1px solid #bfdbfe;\n}\n\n\/* RESEÑAS CON FOTOS ESTANDARIZADAS Y EXTENDIDAS *\/\n.sauvage-reviews { background: #fff; }\n.sauvage-review-summary {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 15px;\n  margin: 15px auto 18px;\n}\n.sauvage-review-score { color: var(--midnight); font-size: 45px; line-height: .9; font-weight: 900; }\n.sauvage-review-summary-right { text-align: left; }\n.sauvage-review-summary-stars { color: var(--citrus-gold); font-size: 19px; letter-spacing: 1px; }\n.sauvage-review-summary-count { margin-top: 3px; color: #64748b; font-size: 10px; font-weight: 700; }\n\n.sauvage-review-carousel { position: relative; width: 100%; margin: 0 auto; padding: 0 45px; }\n.sauvage-reviews-grid {\n  display: flex;\n  gap: 14px;\n  width: 100%;\n  overflow-x: auto;\n  overflow-y: hidden;\n  scroll-behavior: smooth;\n  scroll-snap-type: x mandatory;\n  scrollbar-width: none;\n  padding: 4px 2px 10px;\n}\n.sauvage-reviews-grid::-webkit-scrollbar { display: none; }\n.sauvage-review {\n  flex: 0 0 calc((100% - 28px)\/3);\n  width: calc((100% - 28px)\/3);\n  min-width: 0;\n  padding: 16px;\n  border: 1px solid var(--border-light);\n  border-radius: 17px;\n  background: #fff;\n  scroll-snap-align: start;\n  box-shadow: 0 5px 18px rgba(9, 15, 30, .05);\n  display: flex;\n  flex-direction: column;\n}\n.sauvage-review-top { display: flex !important; align-items: center !important; gap: 9px !important; width: 100% !important; }\n.sauvage-review-avatar {\n  flex: 0 0 46px !important;\n  width: 46px !important;\n  height: 46px !important;\n  border-radius: 50% !important;\n  object-fit: cover !important;\n}\n.sauvage-review-info { min-width: 0; flex: 1; }\n.sauvage-review-name { display: block !important; margin: 0 !important; color: var(--midnight) !important; font-size: 12px !important; line-height: 1.2 !important; font-weight: 900 !important; }\n.sauvage-review-location { display: block !important; margin: 3px 0 0 !important; color: #64748b !important; font-size: 9px !important; line-height: 1.2 !important; }\n.sauvage-review-stars { display: block !important; margin: 9px 0 6px !important; color: var(--citrus-gold) !important; font-size: 14px !important; line-height: 1 !important; letter-spacing: 1px !important; }\n.sauvage-review-text { display: block !important; width: 100% !important; min-height: 52px; margin: 0 !important; color: #334155 !important; font-size: 10px !important; line-height: 1.5 !important; text-align: left !important; }\n\n\/* FOTOS ESTANDARIZADAS - LLENADO COMPLETO Y MÁS LARGAS *\/\n.sauvage-review-photo {\n  display: block !important;\n  width: 100% !important;\n  height: 320px !important;\n  margin: 12px auto 0 !important;\n  border-radius: 12px !important;\n  object-fit: cover !important;\n  object-position: center !important;\n  border: 1px solid var(--border-light) !important;\n}\n\n.sauvage-review-arrow {\n  position: absolute;\n  top: 50%;\n  z-index: 4;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 36px;\n  height: 36px;\n  margin-top: -18px;\n  padding: 0;\n  border: 1px solid var(--border-light);\n  border-radius: 50%;\n  background: #fff;\n  color: var(--midnight);\n  font-size: 22px;\n  cursor: pointer;\n  box-shadow: 0 5px 15px rgba(0,0,0,.08);\n}\n.sauvage-review-arrow.prev { left: 0; }\n.sauvage-review-arrow.next { right: 0; }\n.sauvage-review-dots { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 9px; }\n.sauvage-review-dot { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 50%; background: #cbd5e1; cursor: pointer; }\n.sauvage-review-dot.active { width: 20px; border-radius: 999px; background: var(--sauvage-accent); }\n\n\/* PASOS Y PEDIDO CON DEGRADADO *\/\n.sauvage-order { background: linear-gradient(180deg, var(--midnight) 0%, var(--sauvage-blue) 100%); color: #fff; }\n.sauvage-order-grid {\n  display: grid;\n  grid-template-columns: repeat(4, 1fr);\n  gap: 9px;\n  margin-top: 20px;\n}\n.sauvage-order-step {\n  padding: 15px 7px;\n  border: 1px solid var(--border);\n  border-radius: 13px;\n  background: rgba(255, 255, 255, .05);\n  text-align: center;\n}\n.sauvage-order-step i { display: block; margin-bottom: 6px; font-style: normal; font-size: 21px; }\n.sauvage-order-step strong { display: block; color: #fff; font-size: 9px; }\n.sauvage-order-step span { display: block; margin-top: 3px; color: #94a3b8; font-size: 7px; line-height: 1.35; }\n\n\/* OFERTAS CON FONDO AZUL SUAVE *\/\n.sauvage-offers { background: #f0f4f8; }\n.sauvage-offer-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 20px; }\n.sauvage-offer {\n  position: relative;\n  padding: 18px 14px;\n  border: 1px solid var(--border-light);\n  border-radius: 16px;\n  background: #fff;\n  text-align: center;\n  cursor: pointer;\n  transition: .18s ease;\n}\n.sauvage-offer:hover { transform: translateY(-2px); }\n.sauvage-offer.featured { border: 2px solid var(--sauvage-accent); background: #f0f7ff; }\n.sauvage-offer-label {\n  position: absolute;\n  top: -9px;\n  left: 50%;\n  transform: translateX(-50%);\n  padding: 4px 8px;\n  border-radius: 999px;\n  background: var(--sauvage-accent);\n  color: #fff;\n  font-size: 8px;\n  font-weight: 900;\n  white-space: nowrap;\n}\n.sauvage-offer h3 { margin: 2px 0 4px; color: var(--midnight); font-size: 13px; line-height: 1.2; font-weight: 900; }\n.sauvage-offer-units { color: #64748b; font-size: 9px; }\n.sauvage-offer-reference { margin-top: 5px; color: #94a3b8; font-size: 9px; text-decoration: line-through; }\n.sauvage-offer-price { margin-top: 2px; color: var(--midnight); font-size: 22px; line-height: 1.1; font-weight: 900; }\n.sauvage-offer-saving { margin-top: 4px; color: var(--green); font-size: 9px; font-weight: 900; }\n.sauvage-offer-btn {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 100%;\n  min-height: 34px;\n  margin-top: 11px;\n  padding: 7px;\n  border-radius: 999px;\n  background: #dbeafe;\n  color: #1e40af;\n  font-size: 9px;\n  font-weight: 900;\n}\n.sauvage-offer.featured .sauvage-offer-btn { background: var(--sauvage-accent); color: #fff; }\n\n\/* CROSS-SELL COMBO *\/\n.sauvage-combo {\n  margin-top: 25px;\n  padding: 20px;\n  border: 1px dashed var(--sauvage-accent);\n  border-radius: 16px;\n  background: #fff;\n  text-align: center;\n}\n.sauvage-combo h4 { margin: 0 0 6px; color: var(--midnight); font-size: 14px; font-weight: 900; }\n.sauvage-combo p { margin: 0 0 12px; color: #64748b; font-size: 11px; line-height: 1.4; }\n.sauvage-ws-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: 8px;\n  padding: 10px 18px;\n  border-radius: 10px;\n  background: #25d366;\n  color: #fff !important;\n  font-size: 11px;\n  font-weight: 900;\n  text-decoration: none !important;\n}\n\n\/* FAQ *\/\n.sauvage-faq { max-width: 760px; margin: 20px auto 0; }\n.sauvage-faq details { border-bottom: 1px solid var(--border-light); }\n.sauvage-faq summary {\n  position: relative;\n  padding: 14px 28px 14px 0;\n  list-style: none;\n  cursor: pointer;\n  color: var(--midnight);\n  font-size: 12px;\n  font-weight: 900;\n}\n.sauvage-faq summary::-webkit-details-marker { display: none; }\n.sauvage-faq summary::after { content: \"+\"; position: absolute; right: 0; top: 7px; color: var(--sauvage-accent); font-size: 20px; font-weight: 400; }\n.sauvage-faq details[open] summary::after { content: \"−\"; }\n.sauvage-faq-answer { padding: 0 0 13px; color: #64748b; font-size: 10px; line-height: 1.55; }\n\n\/* CTA FINAL IMPRESIONANTE CON GRADIENTE *\/\n.sauvage-final {\n  padding: 42px 0 48px;\n  background: linear-gradient(135deg, var(--dark-slate) 0%, var(--midnight) 50%, var(--sauvage-blue) 100%);\n  color: #fff;\n  text-align: center;\n  border-top: 3px solid var(--sauvage-accent);\n}\n.sauvage-final .sauvage-eyebrow { background: rgba(255, 255, 255, .14); color: #fff; }\n.sauvage-final .sauvage-heading { color: #fff; max-width: 650px; margin-left: auto; margin-right: auto; }\n.sauvage-final .sauvage-heading span { color: #60a5fa; }\n.sauvage-final-text { max-width: 560px; margin: 0 auto 14px; color: rgba(255,255,255,.9); font-size: 11px; line-height: 1.5; }\n.sauvage-final-price { margin: 9px 0 14px; font-size: 28px; font-weight: 900; }\n.sauvage-final .sauvage-main-btn { max-width: 500px; margin: 0 auto; background: #fff; color: var(--midnight) !important; box-shadow: none; border-bottom: none; }\n.sauvage-final-note { margin-top: 8px; color: rgba(255,255,255,.84); font-size: 9px; }\n\n\/* RESPONSIVE *\/\n@media(min-width: 750px){\n  .sauvage-product-hero { padding: 30px 0 35px; }\n  .sauvage-product-layout { grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: 45px; align-items: center; }\n  .sauvage-gallery-main { width: 100% !important; aspect-ratio: 4\/5 !important; height: auto !important; }\n  .sauvage-gallery-slide, .sauvage-gallery-slide img, .sauvage-gallery-slide video { aspect-ratio: 4\/5 !important; }\n  .sauvage-gallery-thumb { flex-basis: 68px; width: 68px; height: 85px; }\n  .sauvage-balance-grid { grid-template-columns: 1fr 1fr; gap: 40px; }\n  .sauvage-section { padding: 52px 0; }\n}\n\n@media(max-width: 749px){\n  .sauvage-container { width: calc(100% - 24px); }\n  .sauvage-product-hero { padding-top: 12px; }\n  .sauvage-gallery-main { width: 100% !important; aspect-ratio: 4\/5 !important; height: auto !important; border-radius: 18px; }\n  .sauvage-gallery-slide, .sauvage-gallery-slide img, .sauvage-gallery-slide video { aspect-ratio: 4\/5 !important; }\n  .sauvage-gallery-arrow { width: 32px; height: 32px; margin-top: -16px; font-size: 21px; }\n  .sauvage-gallery-arrow.prev { left: 8px; }\n  .sauvage-gallery-arrow.next { right: 8px; }\n  .sauvage-gallery-thumbs { gap: 7px; margin-top: 8px; }\n  .sauvage-gallery-thumb { flex: 0 0 56px; width: 56px; height: 70px; padding: 3px; }\n  .sauvage-product-title { font-size: 35px; letter-spacing: -1.3px; }\n  .sauvage-current-price { font-size: 31px; }\n  .sauvage-main-btn { min-height: 56px; font-size: 12px; }\n  .sauvage-section { padding: 36px 0; }\n  .sauvage-heading { font-size: 29px; }\n  .sauvage-formula-grid { grid-template-columns: repeat(2, 1fr); gap: 7px; }\n  .sauvage-review-carousel { padding: 0 6px; }\n  .sauvage-reviews-grid { gap: 10px; }\n  .sauvage-review { flex: 0 0 100%; width: 100%; padding: 16px; border-radius: 17px; }\n  .sauvage-review-photo { height: 360px !important; }\n  .sauvage-order-grid { grid-template-columns: repeat(2, 1fr); }\n  .sauvage-offer-grid { grid-template-columns: 1fr; }\n  .sauvage-offer { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 10px; text-align: left; padding: 16px; }\n  .sauvage-offer-btn { min-width: 105px; width: auto; margin-top: 6px; }\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"sauvage-page\"\u003e\n\n  \u003cdiv class=\"sauvage-topbar\"\u003e\n    ⚡ FRAGANCIA PREMIUM • 🚚 ENVÍO GRATIS • 💵 PAGA AL RECIBIR\n  \u003c\/div\u003e\n\n  \u003c!-- HERO SECTION --\u003e\n  \u003csection class=\"sauvage-product-hero\"\u003e\n    \u003cdiv class=\"sauvage-container sauvage-product-layout\"\u003e\n\n      \u003c!-- GALERÍA --\u003e\n      \u003cdiv class=\"sauvage-gallery\"\u003e\n        \u003cdiv class=\"sauvage-gallery-main\" id=\"sauvageGalleryMain\"\u003e\n          \u003cdiv class=\"sauvage-gallery-track\" id=\"sauvageGalleryTrack\"\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg1.png?v=1788989031\" alt=\"Sauvage Dior 100ml Eau de Parfum\" loading=\"eager\"\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg2.png?v=1788989030\" alt=\"Sauvage Dior Identidad Masculina\" loading=\"eager\"\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cvideo muted loop playsinline preload=\"none\" aria-label=\"Video Detalle Sauvage Dior\"\u003e\n                \u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/f737769a43dc4de38d13d6875c1eb17a.mp4\" type=\"video\/mp4\"\u003e\u003c\/video\u003e\n              \u003cdiv class=\"sauvage-video-badge\"\u003e▶ VIDEO\u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cvideo muted loop playsinline preload=\"none\" aria-label=\"Video Lifestyle Sauvage Dior\"\u003e\n                \u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/045ccf43bd454669a9af632004423bea.mp4\" type=\"video\/mp4\"\u003e\u003c\/video\u003e\n              \u003cdiv class=\"sauvage-video-badge\"\u003e▶ VIDEO\u003c\/div\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg3.png?v=1788989031\" alt=\"Sauvage Dior Notas\" loading=\"lazy\" decoding=\"async\"\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg4.png?v=1788989030\" alt=\"Sauvage Dior Ocasiones\" loading=\"lazy\" decoding=\"async\"\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg5.png?v=1788989030\" alt=\"Sauvage Dior Oferta Especial\" loading=\"lazy\" decoding=\"async\"\u003e\n            \u003c\/div\u003e\n\n            \u003cdiv class=\"sauvage-gallery-slide\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg6.png?v=1788989031\" alt=\"Sauvage Dior Elegancia\" loading=\"lazy\" decoding=\"async\"\u003e\n            \u003c\/div\u003e\n\n          \u003c\/div\u003e\n\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-arrow prev\" id=\"sauvageGalleryPrev\" aria-label=\"Anterior\"\u003e‹\u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-arrow next\" id=\"sauvageGalleryNext\" aria-label=\"Siguiente\"\u003e›\u003c\/button\u003e\n\n          \u003cdiv class=\"sauvage-gallery-dots\"\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot active\" data-sauvage-dot=\"0\" aria-label=\"Imagen 1\"\u003e\u003c\/button\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot\" data-sauvage-dot=\"1\" aria-label=\"Imagen 2\"\u003e\u003c\/button\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot\" data-sauvage-dot=\"2\" aria-label=\"Video 1\"\u003e\u003c\/button\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot\" data-sauvage-dot=\"3\" aria-label=\"Video 2\"\u003e\u003c\/button\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot\" data-sauvage-dot=\"4\" aria-label=\"Imagen 3\"\u003e\u003c\/button\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot\" data-sauvage-dot=\"5\" aria-label=\"Imagen 4\"\u003e\u003c\/button\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot\" data-sauvage-dot=\"6\" aria-label=\"Imagen 5\"\u003e\u003c\/button\u003e\n            \u003cbutton type=\"button\" class=\"sauvage-gallery-dot\" data-sauvage-dot=\"7\" aria-label=\"Imagen 6\"\u003e\u003c\/button\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003c!-- MINIATURAS --\u003e\n        \u003cdiv class=\"sauvage-gallery-thumbs\"\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb active\" data-sauvage-index=\"0\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg1.png?v=1788989031\" alt=\"Sauvage 1\"\u003e\n          \u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb\" data-sauvage-index=\"1\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg2.png?v=1788989030\" alt=\"Sauvage 2\"\u003e\n          \u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb\" data-sauvage-index=\"2\"\u003e\n            \u003cvideo muted autoplay loop playsinline preload=\"metadata\"\u003e\u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/f737769a43dc4de38d13d6875c1eb17a.mp4\" type=\"video\/mp4\"\u003e\u003c\/video\u003e\n            \u003cspan class=\"sauvage-thumb-play\"\u003e▶\u003c\/span\u003e\n          \u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb\" data-sauvage-index=\"3\"\u003e\n            \u003cvideo muted autoplay loop playsinline preload=\"metadata\"\u003e\u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/045ccf43bd454669a9af632004423bea.mp4\" type=\"video\/mp4\"\u003e\u003c\/video\u003e\n            \u003cspan class=\"sauvage-thumb-play\"\u003e▶\u003c\/span\u003e\n          \u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb\" data-sauvage-index=\"4\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg3.png?v=1788989031\" alt=\"Sauvage 3\"\u003e\n          \u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb\" data-sauvage-index=\"5\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg4.png?v=1788989030\" alt=\"Sauvage 4\"\u003e\n          \u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb\" data-sauvage-index=\"6\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg5.png?v=1788989030\" alt=\"Sauvage 5\"\u003e\n          \u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-gallery-thumb\" data-sauvage-index=\"7\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg6.png?v=1788989031\" alt=\"Sauvage 6\"\u003e\n          \u003c\/button\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"sauvage-gallery-rating\"\u003e\n          \u003cspan class=\"sauvage-stars\"\u003e★★★★★\u003c\/span\u003e\n          \u003cspan class=\"sauvage-rating-text\"\u003e4.8\/5 • Opiniones de nuestros clientes\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003c!-- PRODUCT INFO --\u003e\n      \u003cdiv class=\"sauvage-product-info\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003e🔥 EAU DE PARFUM • 100 ML\u003c\/span\u003e\n\n        \u003ch1 class=\"sauvage-product-title\"\u003e\n          Sauvage Dior 100 ml — \u003cspan\u003ePresencia Inolvidable\u003c\/span\u003e\n        \u003c\/h1\u003e\n\n        \u003cp class=\"sauvage-short-description\"\u003e\n          Una fragancia masculina creada para quienes buscan destacar, transmitir seguridad y dejar una impresión inolvidable a donde quiera que vayan.\n        \u003c\/p\u003e\n\n        \u003cdiv class=\"sauvage-quick-benefits\"\u003e\n          \u003cdiv class=\"sauvage-quick-benefit\"\u003e\n\u003ci\u003e🔥\u003c\/i\u003e\u003cspan\u003eAroma intenso\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"sauvage-quick-benefit\"\u003e\n\u003ci\u003e👔\u003c\/i\u003e\u003cspan\u003eImagen elegante\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"sauvage-quick-benefit\"\u003e\n\u003ci\u003e✨\u003c\/i\u003e\u003cspan\u003eLarga presencia\u003c\/span\u003e\n\u003c\/div\u003e\n          \u003cdiv class=\"sauvage-quick-benefit\"\u003e\n\u003ci\u003e🌙\u003c\/i\u003e\u003cspan\u003eIdeal para momentos especiales\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"sauvage-price-row\"\u003e\n          \u003cspan class=\"sauvage-current-price\"\u003eRD$2,050\u003c\/span\u003e\n          \u003cspan class=\"sauvage-price-note\"\u003eENVÍO GRATIS\u003c\/span\u003e\n        \u003c\/div\u003e\n\n        \u003cbutton type=\"button\" class=\"sauvage-main-btn sauvage-cod-trigger\"\u003e\n          ORDENAR AHORA Y PAGAR AL RECIBIR\n        \u003c\/button\u003e\n\n        \u003cdiv class=\"sauvage-payment\"\u003e\n          🚚 Envío GRATIS a toda República Dominicana • 💵 Pago contra entrega\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- TRUST BAR --\u003e\n  \u003csection class=\"sauvage-trust\"\u003e\n    \u003cdiv class=\"sauvage-container sauvage-trust-grid\"\u003e\n      \u003cdiv class=\"sauvage-trust-item\"\u003e\n        \u003cdiv class=\"sauvage-trust-icon\"\u003e✨\u003c\/div\u003e\n        \u003cstrong\u003eAroma Premium\u003c\/strong\u003e\n        \u003cspan\u003eEau de Parfum\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"sauvage-trust-item\"\u003e\n        \u003cdiv class=\"sauvage-trust-icon\"\u003e👔\u003c\/div\u003e\n        \u003cstrong\u003eFirma Personal\u003c\/strong\u003e\n        \u003cspan\u003eElegante e Intenso\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"sauvage-trust-item\"\u003e\n        \u003cdiv class=\"sauvage-trust-icon\"\u003e🚚\u003c\/div\u003e\n        \u003cstrong\u003eEnvío gratis\u003c\/strong\u003e\n        \u003cspan\u003eToda RD\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"sauvage-trust-item\"\u003e\n        \u003cdiv class=\"sauvage-trust-icon\"\u003e💵\u003c\/div\u003e\n        \u003cstrong\u003ePago al recibir\u003c\/strong\u003e\n        \u003cspan\u003eSin adelantos\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- SECCIÓN EMOCIONAL FONDO DEGRADADO AZUL PROFUNDO --\u003e\n  \u003csection class=\"sauvage-section sauvage-balance\"\u003e\n    \u003cdiv class=\"sauvage-container sauvage-balance-grid\"\u003e\n      \u003cdiv class=\"sauvage-balance-image\"\u003e\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg2.png?v=1788989030\" alt=\"Estilo y Elegancia Sauvage\" loading=\"lazy\" decoding=\"async\"\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-balance-copy\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003eMÁS QUE UN PERFUME\u003c\/span\u003e\n        \u003ch2 class=\"sauvage-heading\"\u003eEl perfume correcto habla \u003cspan\u003eantes que tú.\u003c\/span\u003e\n\u003c\/h2\u003e\n        \u003cp\u003e\n          El aroma que usas define cómo te sientes y cómo los demás te perciben. Sauvage combina frescura cítrica con notas cálidas y amaderadas para convertirse en tu mejor firma personal en cualquier ocasión.\n        \u003c\/p\u003e\n\n        \u003cdiv class=\"sauvage-benefit-grid\"\u003e\n          \u003cdiv class=\"sauvage-benefit-card\"\u003e\n            \u003ci\u003e👔\u003c\/i\u003e\n            \u003cstrong\u003eImagen Impecable\u003c\/strong\u003e\n            \u003cspan\u003eComplementa tu estilo y proyecta carácter.\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"sauvage-benefit-card\"\u003e\n            \u003ci\u003e🌙\u003c\/i\u003e\n            \u003cstrong\u003eNoches y Citas\u003c\/strong\u003e\n            \u003cspan\u003eEl toque ideal para destacar en momentos clave.\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"sauvage-benefit-card\"\u003e\n            \u003ci\u003e🔥\u003c\/i\u003e\n            \u003cstrong\u003eAtractivo Masculino\u003c\/strong\u003e\n            \u003cspan\u003eUna mezcla de frescura e intensidad sofisticada.\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"sauvage-benefit-card\"\u003e\n            \u003ci\u003e✨\u003c\/i\u003e\n            \u003cstrong\u003ePresencia Duradera\u003c\/strong\u003e\n            \u003cspan\u003eFormulado para acompañarte con elegancia.\u003c\/span\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- IMAGEN DESTACADA --\u003e\n  \u003csection class=\"sauvage-section sauvage-feature\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cdiv class=\"sauvage-feature-image\"\u003e\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg4.png?v=1788989030\" alt=\"Sauvage Dior Ocasiones de Uso\" loading=\"lazy\" decoding=\"async\"\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- NOTAS OLFATIVAS FONDO AZUL MEDIANOCHE --\u003e\n  \u003csection class=\"sauvage-section sauvage-formula\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cdiv class=\"sauvage-center\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003eNOTAS DESTACADAS\u003c\/span\u003e\n        \u003ch2 class=\"sauvage-heading\"\u003eUna mezcla diseñada para \u003cspan\u003edestacar.\u003c\/span\u003e\n\u003c\/h2\u003e\n        \u003cp class=\"sauvage-subtitle\"\u003e\n          Una combinación equilibrada entre frescura vibrante y un fondo cálido, amaderado y sensual.\n        \u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-formula-grid\"\u003e\n        \u003cdiv class=\"sauvage-formula-card\"\u003e\n          \u003cdiv class=\"sauvage-formula-icon\"\u003e🍊\u003c\/div\u003e\n          \u003cstrong\u003eBergamota\u003c\/strong\u003e\n          \u003cspan\u003eFrescura vibrante e inmediata.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-formula-card\"\u003e\n          \u003cdiv class=\"sauvage-formula-icon\"\u003e🌿\u003c\/div\u003e\n          \u003cstrong\u003eLavanda\u003c\/strong\u003e\n          \u003cspan\u003eSensación limpia y elegante.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-formula-card\"\u003e\n          \u003cdiv class=\"sauvage-formula-icon\"\u003e🌶\u003c\/div\u003e\n          \u003cstrong\u003eEspecias\u003c\/strong\u003e\n          \u003cspan\u003eToque de pimienta y carácter masculino.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-formula-card\"\u003e\n          \u003cdiv class=\"sauvage-formula-icon\"\u003e🍦\u003c\/div\u003e\n          \u003cstrong\u003eVainilla Ahumada\u003c\/strong\u003e\n          \u003cspan\u003eFondo cálido, amaderado y sensual.\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-formula-image\"\u003e\n        \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/sauvageimg3.png?v=1788989031\" alt=\"Notas Olfativas Sauvage Dior\" loading=\"lazy\" decoding=\"async\"\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- CÓMO USAR --\u003e\n  \u003csection class=\"sauvage-section sauvage-how\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cdiv class=\"sauvage-center\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003eAPLICACIÓN RECOMENDADA\u003c\/span\u003e\n        \u003ch2 class=\"sauvage-heading light\"\u003eCómo proyectar la \u003cspan\u003emáxima estela.\u003c\/span\u003e\n\u003c\/h2\u003e\n        \u003cp class=\"sauvage-subtitle\"\u003ePequeños detalles en tu rutina hacen que tu fragancia perdure por más tiempo.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-steps\"\u003e\n        \u003cdiv class=\"sauvage-step\"\u003e\n          \u003cdiv class=\"sauvage-step-number\"\u003e1\u003c\/div\u003e\n          \u003cstrong\u003ePuntos de pulso\u003c\/strong\u003e\n          \u003cspan\u003eAplica en cuello, muñecas y detrás de las orejas.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-step\"\u003e\n          \u003cdiv class=\"sauvage-step-number\"\u003e2\u003c\/div\u003e\n          \u003cstrong\u003ePiel hidratada\u003c\/strong\u003e\n          \u003cspan\u003eAplica preferiblemente al salir de la ducha con la piel seca.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-step\"\u003e\n          \u003cdiv class=\"sauvage-step-number\"\u003e3\u003c\/div\u003e\n          \u003cstrong\u003eSin frotar\u003c\/strong\u003e\n          \u003cspan\u003eDeja que la fragancia se asiente naturalmente para no romper sus notas.\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-use-note\"\u003e\n        💡 Sugerencia: Aplica de 3 a 4 atomizaciones para lograr una estela perfecta en eventos o citas.\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- RESEÑAS CON FOTOS SIN ESPACIOS BLANCOS (COVER ESTÁNDAR) --\u003e\n  \u003csection class=\"sauvage-section sauvage-reviews\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cdiv class=\"sauvage-center\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003e⭐ OPINIONES DE CLIENTES\u003c\/span\u003e\n        \u003ch2 class=\"sauvage-heading light\"\u003eLo que dicen quienes ya lo usan.\u003c\/h2\u003e\n\n        \u003cdiv class=\"sauvage-review-summary\"\u003e\n          \u003cdiv class=\"sauvage-review-score\"\u003e4.8\u003c\/div\u003e\n          \u003cdiv class=\"sauvage-review-summary-right\"\u003e\n            \u003cdiv class=\"sauvage-review-summary-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-review-summary-count\"\u003e4.8\/5 • Basado en opiniones verificadas\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-review-carousel\"\u003e\n        \u003cdiv class=\"sauvage-reviews-grid\" id=\"sauvageReviewTrack\"\u003e\n\n          \u003cdiv class=\"sauvage-review\"\u003e\n            \u003cdiv class=\"sauvage-review-top\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/ChatGPT_Image_9_sept_2026_22_14_08.png?v=1789006474\" alt=\"Carlos M.\" class=\"sauvage-review-avatar\" loading=\"lazy\" decoding=\"async\"\u003e\n              \u003cdiv class=\"sauvage-review-info\"\u003e\n                \u003cp class=\"sauvage-review-name\"\u003eCarlos M.\u003c\/p\u003e\n                \u003cp class=\"sauvage-review-location\"\u003eSanto Domingo\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"sauvage-review-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003cp class=\"sauvage-review-text\"\u003e“El olor es demasiado bueno. Me preguntaron varias veces en el trabajo cuál perfume estaba usando.”\u003c\/p\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/ChatGPT_Image_9_sept_2026_22_16_22.png?v=1789006610\" alt=\"Cliente con Sauvage\" class=\"sauvage-review-photo\" loading=\"lazy\" decoding=\"async\"\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"sauvage-review\"\u003e\n            \u003cdiv class=\"sauvage-review-top\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/33f8266681c946cd80de486c499fe992.jpg?v=1789006312\" alt=\"José R.\" class=\"sauvage-review-avatar\" loading=\"lazy\" decoding=\"async\"\u003e\n              \u003cdiv class=\"sauvage-review-info\"\u003e\n                \u003cp class=\"sauvage-review-name\"\u003eJosé R.\u003c\/p\u003e\n                \u003cp class=\"sauvage-review-location\"\u003eSantiago\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"sauvage-review-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003cp class=\"sauvage-review-text\"\u003e“Lo compré para salir de noche y quedé muy sorprendido con la presentación y lo intenso del aroma.”\u003c\/p\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/ChatGPT_Image_9_sept_2026_22_16_31.png?v=1789006608\" alt=\"Sauvage entregado\" class=\"sauvage-review-photo\" loading=\"lazy\" decoding=\"async\"\u003e\n          \u003c\/div\u003e\n\n          \u003cdiv class=\"sauvage-review\"\u003e\n            \u003cdiv class=\"sauvage-review-top\"\u003e\n              \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/Captura_de_pantalla_2026-09-09_221332.png?v=1789006505\" alt=\"Manuel A.\" class=\"sauvage-review-avatar\" loading=\"lazy\" decoding=\"async\"\u003e\n              \u003cdiv class=\"sauvage-review-info\"\u003e\n                \u003cp class=\"sauvage-review-name\"\u003eManuel A.\u003c\/p\u003e\n                \u003cp class=\"sauvage-review-location\"\u003eLa Romana\u003c\/p\u003e\n              \u003c\/div\u003e\n            \u003c\/div\u003e\n            \u003cdiv class=\"sauvage-review-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003cp class=\"sauvage-review-text\"\u003e“Excelente perfume, llegó súper rápido y pagué al recibirlo. La fragancia se siente muy elegante.”\u003c\/p\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/ChatGPT_Image_9_sept_2026_22_16_40.png?v=1789006607\" alt=\"Sauvage Dior 100ml\" class=\"sauvage-review-photo\" loading=\"lazy\" decoding=\"async\"\u003e\n          \u003c\/div\u003e\n\n        \u003c\/div\u003e\n\n        \u003cbutton type=\"button\" class=\"sauvage-review-arrow prev\" aria-label=\"Opinión anterior\"\u003e‹\u003c\/button\u003e\n        \u003cbutton type=\"button\" class=\"sauvage-review-arrow next\" aria-label=\"Siguiente opinión\"\u003e›\u003c\/button\u003e\n\n        \u003cdiv class=\"sauvage-review-dots\"\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-review-dot active\" data-review-index=\"0\" aria-label=\"Opinión 1\"\u003e\u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-review-dot\" data-review-index=\"1\" aria-label=\"Opinión 2\"\u003e\u003c\/button\u003e\n          \u003cbutton type=\"button\" class=\"sauvage-review-dot\" data-review-index=\"2\" aria-label=\"Opinión 3\"\u003e\u003c\/button\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- PASOS Y PEDIDO --\u003e\n  \u003csection class=\"sauvage-section sauvage-order\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cdiv class=\"sauvage-center\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003ePASOS PARA TU PEDIDO\u003c\/span\u003e\n        \u003ch2 class=\"sauvage-heading\"\u003eOrdena fácil y \u003cspan\u003epaga al recibir.\u003c\/span\u003e\n\u003c\/h2\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-order-grid\"\u003e\n        \u003cdiv class=\"sauvage-order-step\"\u003e\n          \u003ci\u003e🛒\u003c\/i\u003e\u003cstrong\u003e1. Ordenas\u003c\/strong\u003e\u003cspan\u003eCompleta tus datos en el formulario.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-order-step\"\u003e\n          \u003ci\u003e📲\u003c\/i\u003e\u003cstrong\u003e2. Confirmamos\u003c\/strong\u003e\u003cspan\u003eValidamos tu orden por WhatsApp\/llamada.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-order-step\"\u003e\n          \u003ci\u003e🚚\u003c\/i\u003e\u003cstrong\u003e3. Enviamos\u003c\/strong\u003e\u003cspan\u003eLo despachamos gratis a tu dirección.\u003c\/span\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sauvage-order-step\"\u003e\n          \u003ci\u003e💵\u003c\/i\u003e\u003cstrong\u003e4. Recibes\u003c\/strong\u003e\u003cspan\u003ePagas en efectivo al repartidor.\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003cp class=\"sauvage-subtitle\" style=\"margin-top:15px;text-align:center;color:#cbd5e1;\"\u003e\n        Santo Domingo \/ Santiago: 1–2 días aprox. • Resto del país: 2–3 días aprox.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- OFERTAS Y PACKS --\u003e\n  \u003csection class=\"sauvage-section sauvage-offers\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cdiv class=\"sauvage-center\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003e🔥 OFERTA ESPECIAL\u003c\/span\u003e\n        \u003ch2 class=\"sauvage-heading light\"\u003eElige tu paquete y \u003cspan\u003eahorra más.\u003c\/span\u003e\n\u003c\/h2\u003e\n        \u003cp class=\"sauvage-subtitle\"\u003eLleva unidades adicionales para regalo o colección al mejor precio.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-offer-grid\"\u003e\n        \u003cdiv class=\"sauvage-offer sauvage-cod-trigger\" data-sauvage-quantity=\"1\"\u003e\n          \u003cdiv\u003e\n            \u003ch3\u003e1 Unidad\u003c\/h3\u003e\n            \u003cdiv class=\"sauvage-offer-units\"\u003eSauvage Dior 100 ml\u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"sauvage-offer-right\"\u003e\n            \u003cdiv class=\"sauvage-offer-price\"\u003eRD$2,050\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-offer-btn\"\u003eELEGIR PACK\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"sauvage-offer featured sauvage-cod-trigger\" data-sauvage-quantity=\"2\"\u003e\n          \u003cdiv class=\"sauvage-offer-label\"\u003e⭐ MÁS VENDIDO\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003ch3\u003ePack Dúo\u003c\/h3\u003e\n            \u003cdiv class=\"sauvage-offer-units\"\u003e2 Unidades de Sauvage\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-offer-reference\"\u003eRD$4,100\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-offer-saving\"\u003eAhorras RD$1,100\u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"sauvage-offer-right\"\u003e\n            \u003cdiv class=\"sauvage-offer-price\"\u003eRD$3,000\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-offer-btn\"\u003eELEGIR PACK\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"sauvage-offer sauvage-cod-trigger\" data-sauvage-quantity=\"3\"\u003e\n          \u003cdiv class=\"sauvage-offer-label\" style=\"background:var(--midnight);\"\u003e👑 MAYOR AHORRO\u003c\/div\u003e\n          \u003cdiv\u003e\n            \u003ch3\u003ePack Ahorro\u003c\/h3\u003e\n            \u003cdiv class=\"sauvage-offer-units\"\u003e3 Unidades de Sauvage\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-offer-reference\"\u003eRD$6,150\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-offer-saving\"\u003eAhorras RD$2,200\u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cdiv class=\"sauvage-offer-right\"\u003e\n            \u003cdiv class=\"sauvage-offer-price\"\u003eRD$3,950\u003c\/div\u003e\n            \u003cdiv class=\"sauvage-offer-btn\"\u003eELEGIR PACK\u003c\/div\u003e\n          \u003c\/div\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n\n      \u003c!-- CROSS-SELL COMBO --\u003e\n      \u003cdiv class=\"sauvage-combo\"\u003e\n        \u003ch4\u003e💡 ¿Quieres armar un combo especial con otra fragancia?\u003c\/h4\u003e\n        \u003cp\u003e\n          Puedes combinar tu Sauvage Dior con otro perfume premium como \u003cstrong\u003eSantal 33\u003c\/strong\u003e u otra marca de tu preferencia con un descuento exclusivo.\n        \u003c\/p\u003e\n        \u003ca href=\"https:\/\/wa.me\/8299667230?text=Hola,%20quiero%20armar%20un%20combo%20especial%20de%20Sauvage%20Dior%20con%20otro%20perfume.\" target=\"_blank\" rel=\"noopener\" class=\"sauvage-ws-btn\"\u003e\n          💬 Armar Combo por WhatsApp (829-966-7230)\n        \u003c\/a\u003e\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- FAQ --\u003e\n  \u003csection class=\"sauvage-section\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cdiv class=\"sauvage-center\"\u003e\n        \u003cspan class=\"sauvage-eyebrow\"\u003ePREGUNTAS FRECUENTES\u003c\/span\u003e\n        \u003ch2 class=\"sauvage-heading light\"\u003eResolvemos tus dudas\u003c\/h2\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"sauvage-faq\"\u003e\n        \u003cdetails\u003e\n          \u003csummary\u003e¿Qué tamaño tiene el frasco?\u003c\/summary\u003e\n          \u003cdiv class=\"sauvage-faq-answer\"\u003eEs la presentación estándar grande de 100 ml (3.4 fl oz).\u003c\/div\u003e\n        \u003c\/details\u003e\n\n        \u003cdetails\u003e\n          \u003csummary\u003e¿Para qué ocasiones sirve?\u003c\/summary\u003e\n          \u003cdiv class=\"sauvage-faq-answer\"\u003eEs una fragancia extremadamente versátil. Funciona tanto para el uso diario en el trabajo como para eventos formales, citas y salidas de noche.\u003c\/div\u003e\n        \u003c\/details\u003e\n\n        \u003cdetails\u003e\n          \u003csummary\u003e¿Realizan envíos a todo el país?\u003c\/summary\u003e\n          \u003cdiv class=\"sauvage-faq-answer\"\u003eSí, entregamos totalmente GRATIS en todas las provincias de República Dominicana.\u003c\/div\u003e\n        \u003c\/details\u003e\n\n        \u003cdetails\u003e\n          \u003csummary\u003e¿Cómo funciona el pago al recibir?\u003c\/summary\u003e\n          \u003cdiv class=\"sauvage-faq-answer\"\u003ePones tu orden mediante el formulario y le pagas directamente al repartidor en efectivo en el momento de la entrega. Sin depósitos ni adelantos.\u003c\/div\u003e\n        \u003c\/details\u003e\n\n        \u003cdetails\u003e\n          \u003csummary\u003e¿Puedo combinarlo con otro perfume en mi compra?\u003c\/summary\u003e\n          \u003cdiv class=\"sauvage-faq-answer\"\u003e¡Sí! Puedes solicitar un combo personalizado (por ejemplo, Sauvage + Santal 33) escribiéndonos directamente al WhatsApp 829-966-7230.\u003c\/div\u003e\n        \u003c\/details\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- CTA FINAL DE IMPACTO --\u003e\n  \u003csection class=\"sauvage-final\"\u003e\n    \u003cdiv class=\"sauvage-container\"\u003e\n      \u003cspan class=\"sauvage-eyebrow\"\u003e⚡ MARCA TU PRESENCIA\u003c\/span\u003e\n      \u003ch2 class=\"sauvage-heading\"\u003eHaz que recordar tu aroma sea \u003cspan\u003einevitable.\u003c\/span\u003e\n\u003c\/h2\u003e\n      \u003cp class=\"sauvage-final-text\"\u003e\n        Sauvage Dior 100 ml Eau de Parfum • Envío gratis • Pago contra entrega en toda RD.\n      \u003c\/p\u003e\n      \u003cdiv class=\"sauvage-final-price\"\u003eDesde RD$2,050\u003c\/div\u003e\n      \u003cbutton type=\"button\" class=\"sauvage-main-btn sauvage-cod-trigger\"\u003e\n        ORDENAR SAUVAGE DIOR — RD$2,050\n      \u003c\/button\u003e\n      \u003cdiv class=\"sauvage-final-note\"\u003e🚚 Envío GRATIS • 💵 Pago contra entrega\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\n\u003cscript\u003e\n(function(){\n  \"use strict\";\n\n  \/* REALISIT COD FORM TRIGGER - APERTURA DIRECTA DEL FORMULARIO *\/\n  const REALISIT_SELECTORS = [\n    \".rsi-buy-now-button-product\",\n    \".rsi-buy-now-button.rsi-buy-now-button-product\",\n    \"span.rsi-buy-now-button-product\",\n    \"[class*='rsi-buy-now-button-product']\"\n  ];\n\n  function findRealisitButton(){\n    for(let i=0; i\u003cREALISIT_SELECTORS.length; i++){\n      const button = document.querySelector(REALISIT_SELECTORS[i]);\n      if(button){ return button; }\n    }\n    return null;\n  }\n\n  function openRealisit(){\n    const button = findRealisitButton();\n    if(button){\n      button.click();\n      return;\n    }\n\n    setTimeout(function(){\n      const retryButton = findRealisitButton();\n      if(retryButton){\n        retryButton.click();\n      }\n    },500);\n  }\n\n  document.addEventListener(\"click\", function(event){\n    const trigger = event.target.closest(\".sauvage-cod-trigger\");\n    if(!trigger){ return; }\n\n    event.preventDefault();\n\n    openRealisit();\n  }, false);\n\n  \/* GALERÍA PRINCIPAL *\/\n  const track = document.getElementById(\"sauvageGalleryTrack\");\n  const main = document.getElementById(\"sauvageGalleryMain\");\n  const slides = track ? Array.from(track.querySelectorAll(\".sauvage-gallery-slide\")) : [];\n  const thumbs = Array.from(document.querySelectorAll(\".sauvage-gallery-thumb\"));\n  const dots = Array.from(document.querySelectorAll(\".sauvage-gallery-dot\"));\n  const prev = document.getElementById(\"sauvageGalleryPrev\");\n  const next = document.getElementById(\"sauvageGalleryNext\");\n  let galleryIndex = 0;\n\n  function syncGalleryVideos(){\n    slides.forEach(function(slide, index){\n      const video = slide.querySelector(\"video\");\n      if(!video){ return; }\n      video.muted = true;\n      video.playsInline = true;\n      if(index === galleryIndex){\n        const playPromise = video.play().catch(function(){});\n        if(playPromise \u0026\u0026 typeof playPromise.catch === \"function\"){\n          playPromise.catch(function(){});\n        }\n      }else{\n        video.pause();\n      }\n    });\n  }\n\n  function updateGallery(index){\n    if(!track || !slides.length){ return; }\n    if(index \u003c 0){ index = slides.length - 1; }\n    if(index \u003e= slides.length){ index = 0; }\n    galleryIndex = index;\n    track.style.transform = \"translateX(-\" + (galleryIndex * 100) + \"%)\";\n\n    thumbs.forEach(function(thumb, i){\n      thumb.classList.toggle(\"active\", i === galleryIndex);\n      if(i === galleryIndex){\n        thumb.scrollIntoView({behavior:\"smooth\", block:\"nearest\", inline:\"nearest\"});\n      }\n    });\n\n    dots.forEach(function(dot, i){\n      dot.classList.toggle(\"active\", i === galleryIndex);\n    });\n\n    syncGalleryVideos();\n  }\n\n  thumbs.forEach(function(thumb){\n    thumb.addEventListener(\"click\", function(){\n      const index = parseInt(thumb.getAttribute(\"data-sauvage-index\"), 10);\n      if(!Number.isNaN(index)){ updateGallery(index); }\n    });\n  });\n\n  dots.forEach(function(dot){\n    dot.addEventListener(\"click\", function(){\n      const index = parseInt(dot.getAttribute(\"data-sauvage-dot\"), 10);\n      if(!Number.isNaN(index)){ updateGallery(index); }\n    });\n  });\n\n  if(prev){ prev.addEventListener(\"click\", function(){ updateGallery(galleryIndex - 1); }); }\n  if(next){ next.addEventListener(\"click\", function(){ updateGallery(galleryIndex + 1); }); }\n\n  slides.forEach(function(slide){\n    const video = slide.querySelector(\"video\");\n    if(!video){ return; }\n    video.muted = true;\n    video.addEventListener(\"click\", function(){\n      if(video.paused){\n        const playPromise = video.play().catch(function(){});\n        if(playPromise \u0026\u0026 typeof playPromise.catch === \"function\"){ playPromise.catch(function(){}); }\n      }else{\n        video.pause();\n      }\n    });\n  });\n\n  if(main){\n    let touchStartX = 0;\n    main.addEventListener(\"touchstart\", function(event){\n      touchStartX = event.changedTouches[0].screenX;\n    }, {passive:true});\n\n    main.addEventListener(\"touchend\", function(event){\n      const touchEndX = event.changedTouches[0].screenX;\n      const difference = touchStartX - touchEndX;\n      if(Math.abs(difference) \u003c 40){ return; }\n      if(difference \u003e 0){ updateGallery(galleryIndex + 1); } else { updateGallery(galleryIndex - 1); }\n    }, {passive:true});\n  }\n\n  updateGallery(0);\n\n  \/* CARRUSEL RESEÑAS *\/\n  function initReviewCarousel(){\n    const reviewTrack = document.getElementById(\"sauvageReviewTrack\");\n    if(!reviewTrack){ return; }\n    const carousel = reviewTrack.closest(\".sauvage-review-carousel\");\n    if(!carousel){ return; }\n\n    const reviews = Array.from(reviewTrack.querySelectorAll(\".sauvage-review\"));\n    const reviewDots = Array.from(carousel.querySelectorAll(\".sauvage-review-dot\"));\n    const reviewPrev = carousel.querySelector(\".sauvage-review-arrow.prev\");\n    const reviewNext = carousel.querySelector(\".sauvage-review-arrow.next\");\n    let currentIndex = 0;\n\n    function updateReviewDots(index){\n      reviewDots.forEach(function(dot, i){ dot.classList.toggle(\"active\", i === index); });\n    }\n\n    function goToReview(index){\n      if(index \u003c 0){ index = reviews.length - 1; }\n      if(index \u003e= reviews.length){ index = 0; }\n      currentIndex = index;\n      const review = reviews[index];\n      if(!review){ return; }\n      const trackRect = reviewTrack.getBoundingClientRect();\n      const reviewRect = review.getBoundingClientRect();\n      const target = reviewRect.left - trackRect.left + reviewTrack.scrollLeft;\n      reviewTrack.scrollTo({left:target, behavior:\"smooth\"});\n      updateReviewDots(index);\n    }\n\n    if(reviewPrev){ reviewPrev.addEventListener(\"click\", function(){ goToReview(currentIndex - 1); }); }\n    if(reviewNext){ reviewNext.addEventListener(\"click\", function(){ goToReview(currentIndex + 1); }); }\n\n    reviewDots.forEach(function(dot){\n      dot.addEventListener(\"click\", function(){\n        const index = parseInt(dot.getAttribute(\"data-review-index\"), 10);\n        if(!Number.isNaN(index)){ goToReview(index); }\n      });\n    });\n\n    let scrollTimeout;\n    reviewTrack.addEventListener(\"scroll\", function(){\n      clearTimeout(scrollTimeout);\n      scrollTimeout = setTimeout(function(){\n        const trackRect = reviewTrack.getBoundingClientRect();\n        let closest = 0;\n        let distance = Infinity;\n        reviews.forEach(function(review, index){\n          const rect = review.getBoundingClientRect();\n          const currentDistance = Math.abs(rect.left - trackRect.left);\n          if(currentDistance \u003c distance){ distance = currentDistance; closest = index; }\n        });\n        currentIndex = closest;\n        updateReviewDots(closest);\n      }, 100);\n    }, {passive:true});\n\n    updateReviewDots(0);\n  }\n\n  if(document.readyState === \"loading\"){\n    document.addEventListener(\"DOMContentLoaded\", initReviewCarousel);\n  }else{\n    initReviewCarousel();\n  }\n})();\n\u003c\/script\u003e","brand":"Gangazo RD","offers":[{"title":"Default Title","offer_id":43746331656269,"sku":null,"price":2050.0,"currency_code":"DOP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0714\/7421\/7037\/files\/ChatGPTImage10sept2026_02_55_41p.m..png?v=1789066556","url":"https:\/\/gangazord.com\/products\/sauvage","provider":"Gangazo RD","version":"1.0","type":"link"}