{"product_id":"adios-arrugas-y-flacidez-en-30-dias","title":"Adiós arrugas y flacidez en 30 días","description":"\u003cbody\u003e\n\n\n  \u003cmeta charset=\"UTF-8\"\u003e\n  \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\n  \u003ctitle\u003eFloré — Multicolágeno · Piel firme en 30 días\u003c\/title\u003e\n  \u003c!--\n  ============================================================================\n   LANDING COLÁGENO (Floré) — modelo Evil Goods, tema ROSADO\n  ============================================================================\n   • Todo el CSS está scoped bajo .flore-landing (NO afecta otros productos).\n   • El pop-up (.flore-popup) y el botón sticky (.flore-sticky) usan clases\n     únicas top-level porque se mueven al \u003cbody\u003e (para que position:fixed\n     funcione dentro de Shopify).\n   • UN SOLO botón real (Releasit) que se MUEVE al hero. El sticky inferior es\n     un proxy: al tocarlo dispara el mismo formulario Releasit.\n   • Pop-up de compra: centrado abajo, con sonido (chime Web Audio).\n   • IMAGENES = placeholders rosados con etiqueta. Para poner una imagen real,\n     reemplaza el div con clase img-ph por una etiqueta img con su URL Shopify.\n   • CAMBIAR PRECIO: buscar 89.900 y 179.800 (hero, oferta y sticky).\n   • CAMBIAR MARCA: buscar Flore \/ FLORE.\n  ============================================================================\n  --\u003e\n  \u003cstyle\u003e\n    \/* ====================== RESET \/ BASE (scoped) ====================== *\/\n    .flore-landing * { margin: 0; padding: 0; box-sizing: border-box; }\n    .flore-landing {\n      font-family: -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;\n      background: #fff;\n      color: #2a2230;\n      line-height: 1.5;\n      -webkit-font-smoothing: antialiased;\n    }\n    .flore-landing img { max-width: 100%; display: block; }\n\n    .flore-landing {\n      --pink: #E0568C;        \/* acento principal (reemplaza al amarillo) *\/\n      --pink-deep: #BE3F70;   \/* rosa oscuro para degradados\/sombras *\/\n      --pink-bright: #FF85B3; \/* highlight sobre fondos oscuros *\/\n      --champagne: #FFE0A8;   \/* dorado suave para contraste rose-gold *\/\n      --blush: #FFF1F6;       \/* fondo rosa muy claro (reemplaza al crema) *\/\n      --blush-2: #FFE4EF;\n      --plum: #241526;        \/* oscuro profundo para secciones de contraste *\/\n      --gray-bg: #FAF7F8;\n      --gray-text: #6b6470;\n      --green: #2DAA4F;\n      --green-dark: #228d40;\n    }\n\n    .flore-landing h1, .flore-landing h2, .flore-landing h3 {\n      font-weight: 900; line-height: 1.15; letter-spacing: -0.02em; color: #241526;\n    }\n\n    .flore-landing .wrap { max-width: 540px; margin: 0 auto; padding: 0 20px; }\n    .flore-landing section { padding: 56px 20px; }\n\n    .flore-landing .label {\n      display: inline-block; font-size: 11px; font-weight: 900; letter-spacing: 2px;\n      text-transform: uppercase; color: var(--pink-deep);\n      background: rgba(224, 86, 140, 0.12); padding: 6px 14px; border-radius: 20px;\n      margin-bottom: 16px;\n    }\n    .flore-landing .title {\n      font-size: 28px; margin: 0 auto 16px; text-align: center; max-width: 540px; color: #241526;\n    }\n    .flore-landing .sub {\n      font-size: 15px; color: var(--gray-text); text-align: center;\n      max-width: 480px; margin: 0 auto; line-height: 1.6;\n    }\n\n    \/* ====================== PLACEHOLDER DE IMÁGENES ====================== *\/\n    .flore-landing .img-ph {\n      display: flex; flex-direction: column; align-items: center; justify-content: center;\n      text-align: center; background: linear-gradient(135deg, #FFE4EF, #FFF1F6);\n      border: 2px dashed var(--pink); color: var(--pink-deep);\n      font-size: 12.5px; font-weight: 800; line-height: 1.35; padding: 16px;\n      border-radius: 16px; width: 100%;\n    }\n    .flore-landing .img-ph small {\n      display: block; color: #C98BA8; font-weight: 600; margin-top: 5px; font-size: 10.5px;\n    }\n    .flore-landing .img-ph::before { content: \"📷\"; font-size: 22px; margin-bottom: 6px; }\n\n    \/* ====================== BOTÓN BASE ====================== *\/\n    .flore-landing .btn {\n      display: block; width: 100%; background: var(--green); color: #fff;\n      font-weight: 900; font-size: 18px; padding: 20px; border: none; border-radius: 12px;\n      cursor: pointer; text-transform: uppercase; letter-spacing: 0.5px;\n      box-shadow: 0 6px 20px rgba(45, 170, 79, 0.35); transition: transform .15s, background .15s;\n    }\n    .flore-landing .btn:hover { background: var(--green-dark); transform: translateY(-1px); }\n\n    .flore-landing .rsi-slot { max-width: 440px; margin: 0 auto; width: 100%; min-height: 20px; }\n    .flore-landing .rsi-slot \u003e * { max-width: 100% !important; width: 100% !important; }\n    .flore-landing .hero .rsi-slot { margin: 8px auto 0; }\n\n    \/* ====================== HERO (fondo ROSA) ====================== *\/\n    .flore-landing .hero {\n      background: linear-gradient(to bottom, #E0568C 0%, #D14A80 70%, #BE3F70 92%, #FFF1F6 100%);\n      padding: 14px 0 30px; text-align: center; color: #fff; position: relative;\n    }\n    .flore-landing .hero .hero-head { padding: 0 20px; max-width: 540px; margin: 0 auto 10px; }\n    .flore-landing .hero-pill {\n      display: inline-block; background: #fff; color: var(--pink-deep);\n      font-size: 11px; font-weight: 900; padding: 6px 14px; border-radius: 20px;\n      letter-spacing: 1px; text-transform: uppercase; margin-bottom: 14px;\n      box-shadow: 0 4px 14px rgba(0,0,0,0.12);\n    }\n    .flore-landing .hero-title {\n      font-size: 28px; line-height: 1.15; color: #fff; font-weight: 900; letter-spacing: -0.02em;\n    }\n    .flore-landing .hero-title em { color: var(--champagne); font-style: normal; }\n\n    \/* \"viendo ahora\" *\/\n    .flore-landing .hero-live {\n      position: absolute; top: 12px; right: 18px; display: inline-flex; align-items: center;\n      gap: 4px; font-size: 10px; color: #fff; font-weight: 600; z-index: 10; letter-spacing: 0.2px;\n      pointer-events: none; background: rgba(36,21,38,0.45); padding: 4px 9px 4px 8px;\n      border-radius: 100px; backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);\n    }\n    .flore-landing .hero-live-dot {\n      width: 6px; height: 6px; border-radius: 50%; background: #5DF08A; flex-shrink: 0;\n      animation: flore-live-pulse 1.4s ease-in-out infinite;\n    }\n    @keyframes flore-live-pulse { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:.55;transform:scale(1.25);} }\n    .flore-landing .hero-live-text { color: rgba(255,255,255,0.85); }\n    .flore-landing .hero-live-num {\n      font-variant-numeric: tabular-nums; font-weight: 800; color: #fff;\n      display: inline-block; min-width: 26px; text-align: right;\n    }\n\n    \/* Carousel hero *\/\n    .flore-landing .hero-carousel-wrap { width: 100%; max-width: 460px; margin: 0 auto 14px; padding: 0 16px; position: relative; }\n    .flore-landing .hero-carousel {\n      display: flex; gap: 10px; overflow-x: auto; scroll-snap-type: x mandatory;\n      -webkit-overflow-scrolling: touch; scrollbar-width: none; border-radius: 14px; padding-bottom: 6px;\n    }\n    .flore-landing .hero-carousel::-webkit-scrollbar { display: none; }\n    .flore-landing .hero-slide { flex: 0 0 100%; scroll-snap-align: center; }\n    .flore-landing .hero-slide img, .flore-landing .hero-slide .img-ph {\n      width: 100%; aspect-ratio: 1\/1; object-fit: cover; border-radius: 14px;\n    }\n    .flore-landing .hero-dots { display: flex; justify-content: center; gap: 6px; margin-top: 10px; }\n    .flore-landing .hero-dots .dot { width: 6px; height: 6px; border-radius: 50%; background: rgba(255,255,255,0.4); transition: all .3s; }\n    .flore-landing .hero-dots .dot.active { background: #fff; width: 18px; border-radius: 3px; }\n\n    .flore-landing .hero-body { padding: 0 20px; max-width: 480px; margin: 0 auto; }\n    .flore-landing .hero-price { display: flex; align-items: center; justify-content: center; gap: 12px; margin-bottom: 4px; flex-wrap: wrap; }\n    .flore-landing .price-old { font-size: 17px; color: rgba(255,255,255,0.6); text-decoration: line-through; font-weight: 600; }\n    .flore-landing .price-new { font-size: 36px; color: #fff; font-weight: 900; letter-spacing: -0.02em; }\n    .flore-landing .price-badge {\n      background: var(--champagne); color: var(--pink-deep); font-size: 12px; font-weight: 900;\n      padding: 5px 12px; border-radius: 6px; letter-spacing: 0.5px; text-transform: uppercase;\n    }\n    .flore-landing .hero-rating { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 6px 0 10px; flex-wrap: wrap; }\n    .flore-landing .hero-stars { color: var(--champagne); font-size: 13px; letter-spacing: 0.5px; }\n    .flore-landing .hero-rating-text { font-size: 11.5px; color: rgba(255,255,255,0.85); font-weight: 500; }\n\n    \/* Marquee de chulos *\/\n    .flore-landing .hero-checks-marquee {\n      width: 100%; overflow: hidden; margin: 16px 0 6px;\n      -webkit-mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);\n              mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);\n    }\n    .flore-landing .hero-checks-track { display: flex; width: max-content; animation: flore-marquee 24s linear infinite; }\n    .flore-landing .hero-checks { list-style: none; padding: 0 6px; margin: 0; display: flex; flex-shrink: 0; gap: 8px; }\n    .flore-landing .hero-checks li {\n      display: inline-flex; align-items: center; gap: 5px; padding: 5px 12px; font-size: 10.5px;\n      color: rgba(255,255,255,0.95); font-weight: 600; letter-spacing: 0.3px;\n      background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.22);\n      border-radius: 100px; backdrop-filter: blur(4px); white-space: nowrap;\n    }\n    .flore-landing .hero-checks li:before {\n      content: \"\"; width: 12px; height: 12px; border-radius: 50%; background: #fff; flex-shrink: 0;\n      background-image: url('data:image\/svg+xml;utf8,\u003csvg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 16 16\"\u003e\u003cpath fill=\"none\" stroke=\"%23E0568C\" stroke-width=\"3.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M3 8.5l3 3 7-7\"\/\u003e\u003c\/svg\u003e');\n      background-size: 8px 8px; background-position: center; background-repeat: no-repeat;\n    }\n    @keyframes flore-marquee { from { transform: translateX(-50%); } to { transform: translateX(0); } }\n    .flore-landing .hero-checks-marquee:hover .hero-checks-track { animation-play-state: paused; }\n\n    \/* ====================== PROBLEMA ====================== *\/\n    .flore-landing .problem {\n      background: linear-gradient(to bottom, #fff 0%, #fff 88%, #FFF1F6 100%);\n      text-align: center; padding: 24px 20px 40px;\n    }\n    .flore-landing .problem .title { color: #241526; font-size: 30px; margin: 0 auto 30px; max-width: 420px; }\n    .flore-landing .problem .title em { color: #d44; font-style: normal; position: relative; display: inline-block; }\n    .flore-landing .problem .title em:after {\n      content: \"\"; position: absolute; bottom: 2px; left: 0; right: 0; height: 8px;\n      background: rgba(212,68,68,0.18); z-index: -1; border-radius: 4px;\n    }\n    .flore-landing .prob-grid { display: grid; grid-template-columns: 1fr; gap: 18px; max-width: 420px; margin: 0 auto; }\n    .flore-landing .prob-card { background: #fafafa; border-radius: 16px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.04); }\n    .flore-landing .prob-img-wrap { position: relative; width: 100%; aspect-ratio: 1\/1; overflow: hidden; }\n    .flore-landing .prob-img-wrap img, .flore-landing .prob-img-wrap .img-ph { width: 100%; height: 100%; object-fit: cover; border-radius: 0; }\n    .flore-landing .prob-x {\n      position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; background: #d44;\n      color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center;\n      font-size: 18px; font-weight: 900; box-shadow: 0 2px 8px rgba(212,68,68,0.4); z-index: 2;\n    }\n    .flore-landing .prob-text { padding: 14px 16px 18px; font-size: 15px; font-weight: 700; color: #1a1a1a; line-height: 1.35; }\n    @media (min-width: 700px) {\n      .flore-landing .prob-grid { grid-template-columns: 1fr 1fr; max-width: 720px; gap: 20px; }\n      .flore-landing .problem .title { font-size: 36px; }\n    }\n\n    \/* ====================== SOLUCIÓN ====================== *\/\n    .flore-landing .solution {\n      background: linear-gradient(to bottom, #FFF1F6 0%, #FFF1F6 12%, #fff 40%, #fff 88%, #FFF1F6 100%);\n      text-align: center; padding: 40px 20px;\n    }\n    .flore-landing .solution-title { font-size: 30px; line-height: 1.15; margin: 0 auto 16px; max-width: 420px; color: #241526; }\n    .flore-landing .solution-title .marker { position: relative; display: inline-block; z-index: 1; padding: 0 4px; color: #fff; }\n    .flore-landing .solution-title .marker:after {\n      content: \"\"; position: absolute; left: 0; right: 0; bottom: 0; top: 0;\n      background: var(--pink); border-radius: 6px; z-index: -1; transform: rotate(-1.5deg);\n    }\n    .flore-landing .steps { display: flex; justify-content: center; align-items: flex-start; gap: 4px; margin: 24px auto 4px; max-width: 460px; flex-wrap: nowrap; }\n    .flore-landing .step { display: flex; flex-direction: column; align-items: center; gap: 8px; flex: 1; min-width: 80px; max-width: 130px; }\n    .flore-landing .step-arrow { display: flex; align-items: center; justify-content: center; height: 32px; width: 40px; flex-shrink: 0; align-self: flex-start; margin: 0 -2px; }\n    .flore-landing .step-arrow svg { width: 100%; height: 16px; animation: flore-arrow-pulse 2s ease-in-out infinite; }\n    @keyframes flore-arrow-pulse { 0%,100%{opacity:.55;transform:translateX(0);} 50%{opacity:1;transform:translateX(2px);} }\n    .flore-landing .step-num {\n      width: 32px; height: 32px; border-radius: 50%; background: var(--pink); color: #fff;\n      font-weight: 900; font-size: 15px; display: flex; align-items: center; justify-content: center;\n      box-shadow: 0 2px 8px rgba(224,86,140,0.35); flex-shrink: 0;\n    }\n    .flore-landing .step-text { font-size: 12px; font-weight: 700; color: #1a1a1a; text-align: center; line-height: 1.35; }\n    .flore-landing .solution-img { width: 100%; max-width: 460px; margin: 24px auto 0; border-radius: 16px; }\n\n    \/* ====================== INGREDIENTES ====================== *\/\n    .flore-landing .ingredients {\n      background: linear-gradient(to bottom, #fff 0%, #fff 88%, #E0568C 100%);\n      text-align: center; padding: 40px 20px;\n    }\n    .flore-landing .ing-title { font-size: 34px; line-height: 1.1; margin: 0 auto 4px; max-width: 380px; letter-spacing: -0.02em; }\n    .flore-landing .ing-title em { color: var(--pink-deep); font-style: normal; position: relative; display: inline-block; }\n    .flore-landing .ing-title em:after {\n      content: \"\"; position: absolute; bottom: 1px; left: 0; right: 0; height: 8px;\n      background: rgba(224,86,140,0.30); z-index: -1; border-radius: 4px;\n    }\n    .flore-landing .ingredients-info { width: 100%; max-width: 460px; margin: 16px auto 12px; border-radius: 16px; }\n    .flore-landing .ingredients-sub { text-align: center; font-size: 13px; color: var(--gray-text); font-weight: 600; letter-spacing: 0.3px; margin-top: 6px; }\n    .flore-landing .ingredients-sub-plus { color: var(--pink-deep); margin-top: 10px; margin-bottom: 2px; }\n\n    \/* ====================== BANNER STORYTELLING ====================== *\/\n    .flore-landing .banner-promo { background: var(--pink); padding: 0; margin: 0; display: block; line-height: 0; }\n    .flore-landing .banner-promo img, .flore-landing .banner-promo .img-ph {\n      width: 100%; max-width: 760px; margin: 0 auto; border-radius: 0;\n    }\n    .flore-landing .banner-promo .img-ph { aspect-ratio: 1\/1; border: none; border-radius: 0; }\n\n    \/* ====================== OFERTA (fondo ROSA) ====================== *\/\n    .flore-landing .offer {\n      background: linear-gradient(to bottom, #E0568C 0%, #E0568C 88%, #fff 100%);\n      text-align: center; padding: 26px 20px 40px;\n    }\n    .flore-landing .countdown-wrap {\n      display: inline-flex; align-items: center; gap: 10px; background: var(--plum);\n      padding: 10px 18px; border-radius: 100px; margin: 0 auto 22px; box-shadow: 0 4px 18px rgba(0,0,0,0.25);\n    }\n    .flore-landing .countdown-icon { font-size: 16px; }\n    .flore-landing .countdown-label { font-size: 12px; color: rgba(255,255,255,0.85); font-weight: 600; letter-spacing: 0.3px; }\n    .flore-landing .countdown { font-size: 18px; color: var(--champagne); font-weight: 900; font-variant-numeric: tabular-nums; letter-spacing: 1px; min-width: 50px; text-align: center; }\n    .flore-landing .offer .label { background: rgba(36,21,38,0.15); color: var(--plum); }\n    .flore-landing .offer .title { color: #fff; font-size: 26px; margin: 4px auto 18px; }\n    .flore-landing .price-box { background: rgba(255,255,255,0.18); border: 1px solid rgba(255,255,255,0.4); border-radius: 16px; padding: 18px 20px 16px; margin: 0 auto 18px; max-width: 340px; }\n    .flore-landing .offer-price-before { color: rgba(255,255,255,0.85); font-weight: 700; font-size: 15px; }\n    .flore-landing .offer-price-before s { text-decoration: line-through; }\n    .flore-landing .offer-price { color: #fff; font-size: 58px; line-height: 1; margin: 6px 0 10px; font-weight: 900; letter-spacing: -0.03em; }\n    .flore-landing .offer-save { display: inline-block; background: var(--plum); color: var(--champagne); font-size: 12px; font-weight: 900; padding: 5px 14px; border-radius: 20px; letter-spacing: 0.5px; text-transform: uppercase; }\n    .flore-landing .offer-perks-marquee {\n      width: 100%; overflow: hidden; margin: 4px 0 16px;\n      -webkit-mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);\n              mask-image: linear-gradient(to right, transparent 0, #000 8%, #000 92%, transparent 100%);\n    }\n    .flore-landing .offer-perks-track { display: flex; width: max-content; animation: flore-marquee 22s linear infinite; }\n    .flore-landing .offer-perks-list { list-style: none; padding: 0 6px; margin: 0; display: flex; flex-shrink: 0; gap: 8px; }\n    .flore-landing .offer-perks-list li {\n      display: inline-flex; align-items: center; gap: 5px; padding: 6px 14px; font-size: 12px;\n      color: #fff; font-weight: 700; letter-spacing: 0.3px; background: rgba(255,255,255,0.15);\n      border: 1px solid rgba(255,255,255,0.3); border-radius: 100px; white-space: nowrap;\n    }\n    .flore-landing .bump-mention {\n      margin: 18px auto 0; padding: 12px 16px; background: rgba(36,21,38,0.12); border-radius: 10px;\n      font-size: 13px; color: var(--plum); font-weight: 600; max-width: 440px; text-align: center; line-height: 1.4;\n    }\n\n    \/* ====================== TIEMPOS DE ENTREGA ====================== *\/\n    .flore-landing .shipping-times { background: #fff; padding: 40px 20px; text-align: center; }\n    .flore-landing .shipping-times .title { color: #241526; font-size: 26px; margin: 8px auto 24px; max-width: 380px; }\n    .flore-landing .shipping-cards { display: grid; grid-template-columns: 1fr; gap: 14px; max-width: 480px; margin: 0 auto 20px; }\n    .flore-landing .shipping-card { background: #fff; border-radius: 16px; padding: 22px 18px; border: 2px solid #f0e6eb; }\n    .flore-landing .shipping-card:first-child { background: var(--blush); border-color: var(--pink); }\n    .flore-landing .shipping-icon { font-size: 38px; margin-bottom: 8px; line-height: 1; }\n    .flore-landing .shipping-days { font-size: 32px; font-weight: 900; color: #241526; line-height: 1; letter-spacing: -0.02em; }\n    .flore-landing .shipping-label { font-size: 13px; color: #888; font-weight: 600; margin-bottom: 10px; }\n    .flore-landing .shipping-desc { font-size: 15px; font-weight: 800; color: #241526; margin-bottom: 4px; }\n    .flore-landing .shipping-cities { font-size: 12px; color: #666; line-height: 1.4; font-weight: 500; }\n    .flore-landing .shipping-footer { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; margin-top: 16px; font-size: 12px; color: #555; font-weight: 600; }\n    @media (min-width: 600px) { .flore-landing .shipping-cards { grid-template-columns: 1fr 1fr; max-width: 680px; } }\n\n    \/* ====================== GARANTÍA ====================== *\/\n    .flore-landing .guarantee { background: linear-gradient(to bottom, #fff 0%, #fff 88%, #FAF7F8 100%); text-align: center; padding: 40px 20px; }\n    .flore-landing .guarantee-icon { font-size: 64px; margin-bottom: 14px; }\n    .flore-landing .guarantee .title { font-size: 26px; }\n    .flore-landing .guarantee-text { font-size: 15px; color: var(--gray-text); max-width: 440px; margin: 0 auto; line-height: 1.6; }\n\n    \/* ====================== RESEÑAS ====================== *\/\n    .flore-landing .reviews { background: linear-gradient(to bottom, #FAF7F8 0%, #FAF7F8 88%, #241526 100%); padding: 40px 20px; }\n    .flore-landing .reviews-head { text-align: center; margin-bottom: 24px; }\n    .flore-landing .reviews-head .title { margin-bottom: 10px; color: #241526; }\n    .flore-landing .reviews-rating { display: inline-flex; align-items: baseline; gap: 8px; flex-wrap: wrap; justify-content: center; }\n    .flore-landing .reviews-stars { color: var(--pink); font-size: 20px; letter-spacing: 2px; }\n    .flore-landing .reviews-score { font-size: 17px; font-weight: 900; color: #241526; }\n    .flore-landing .reviews-count { font-size: 13px; color: #777; font-weight: 500; }\n    .flore-landing .reviews-grid { display: grid; grid-template-columns: 1fr; gap: 14px; max-width: 480px; margin: 0 auto; }\n    .flore-landing .review-card { background: #fff; border-radius: 16px; padding: 18px; box-shadow: 0 2px 10px rgba(0,0,0,0.04); border: 1px solid #f0e6eb; }\n    .flore-landing .rev-top { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 14px; }\n    .flore-landing .rev-avatar, .flore-landing .rev-top .img-ph {\n      width: 80px; height: 80px; border-radius: 12px; object-fit: cover; flex-shrink: 0;\n      border: 2px solid var(--blush); box-shadow: 0 2px 8px rgba(0,0,0,0.08); font-size: 9px; padding: 4px;\n    }\n    .flore-landing .rev-meta { flex: 1; min-width: 0; }\n    .flore-landing .rev-name { font-size: 14px; font-weight: 800; color: #241526; margin-bottom: 2px; line-height: 1.2; }\n    .flore-landing .rev-city { font-size: 11.5px; color: #888; font-weight: 500; margin-bottom: 4px; }\n    .flore-landing .rev-stars { color: var(--pink); font-size: 13px; letter-spacing: 1px; }\n    .flore-landing .rev-text { font-size: 14px; color: #2a2a2a; line-height: 1.55; margin: 0 0 12px; }\n    .flore-landing .rev-verified { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: var(--green); font-weight: 700; background: rgba(45,170,79,0.08); padding: 4px 10px; border-radius: 20px; }\n    @media (min-width: 768px) { .flore-landing .reviews-grid { grid-template-columns: 1fr 1fr; max-width: 900px; gap: 18px; } }\n    @media (min-width: 1024px) { .flore-landing .reviews-grid { grid-template-columns: repeat(3, 1fr); max-width: 1100px; } }\n\n    \/* ====================== FINAL CTA ====================== *\/\n    .flore-landing .final { background: var(--plum); color: #fff; text-align: center; padding: 60px 20px; }\n    .flore-landing .final .title { color: #fff; }\n    .flore-landing .final .title em { color: var(--pink-bright); font-style: normal; }\n    .flore-landing .final-sub { font-size: 15px; color: rgba(255,255,255,0.7); margin: 16px 0 4px; }\n\n    \/* ====================== RESPONSIVE ====================== *\/\n    @media (min-width: 768px) {\n      .flore-landing .wrap { max-width: 720px; }\n      .flore-landing section { padding: 72px 24px; }\n      .flore-landing .title { font-size: 38px; }\n      .flore-landing .sub { font-size: 17px; }\n      .flore-landing .offer-price { font-size: 76px; }\n    }\n\n    \/* ============================================================\n       POP-UP NOTIFICACIÓN (clase única top-level — se mueve al body)\n       Centrado abajo, encima del sticky.\n    ============================================================ *\/\n    .flore-popup {\n      position: fixed; bottom: 96px; left: 50%; transform: translateX(-50%) translateY(20px);\n      opacity: 0; pointer-events: none; background: #fff; color: #241526;\n      border-radius: 16px; box-shadow: 0 14px 40px rgba(36,21,38,0.25);\n      padding: 12px 14px 12px 12px; display: flex; align-items: center; gap: 12px;\n      width: calc(100% - 32px); max-width: 330px; z-index: 99998;\n      transition: transform .55s cubic-bezier(.34,1.56,.64,1), opacity .4s ease;\n      border: 1px solid #f0e0e8; border-left: 4px solid #2DAA4F;\n      font-family: -apple-system, 'Segoe UI', Helvetica, Arial, sans-serif;\n    }\n    .flore-popup.show { transform: translateX(-50%) translateY(0); opacity: 1; pointer-events: auto; }\n    .flore-popup-icon {\n      width: 46px; height: 46px; background: #FFF1F6; border-radius: 10px; flex-shrink: 0;\n      display: flex; align-items: center; justify-content: center; overflow: hidden; box-shadow: 0 4px 10px rgba(0,0,0,0.08);\n    }\n    .flore-popup-icon img { width: 100%; height: 100%; object-fit: contain; }\n    .flore-popup-icon .img-ph { width: 100%; height: 100%; font-size: 7px; padding: 2px; border-radius: 0; }\n    .flore-popup-icon .img-ph::before { font-size: 14px; margin: 0; }\n    .flore-popup-content { flex: 1; min-width: 0; line-height: 1.3; }\n    .flore-popup-line1 { font-size: 13px; color: #241526; font-weight: 500; }\n    .flore-popup-name { font-weight: 800; color: #241526; }\n    .flore-popup-product { font-size: 11px; color: #888; font-weight: 600; margin: 2px 0 0; letter-spacing: 0.2px; }\n    .flore-popup-meta { font-size: 10.5px; color: #999; margin-top: 2px; display: flex; align-items: center; gap: 5px; }\n    .flore-popup-dot { width: 6px; height: 6px; border-radius: 50%; background: #2DAA4F; animation: flore-dot-pulse 1.5s ease-in-out infinite; flex-shrink: 0; }\n    @keyframes flore-dot-pulse { 0%,100%{opacity:.5;transform:scale(1);} 50%{opacity:1;transform:scale(1.3);} }\n    .flore-popup-close { background: none; border: none; color: #bbb; font-size: 18px; cursor: pointer; padding: 0 4px; line-height: 1; flex-shrink: 0; align-self: flex-start; font-weight: 300; }\n    .flore-popup-close:hover { color: #241526; }\n\n    \/* ============================================================\n       BOTÓN STICKY (clase única top-level — se mueve al body)\n    ============================================================ *\/\n    .flore-sticky {\n      position: fixed; bottom: 0; left: 0; right: 0; z-index: 99999;\n      background: rgba(255,255,255,0.92); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);\n      box-shadow: 0 -6px 24px rgba(36,21,38,0.16); padding: 10px 16px calc(10px + env(safe-area-inset-bottom));\n      transform: translateY(120%); transition: transform .4s cubic-bezier(.4,0,.2,1);\n    }\n    .flore-sticky.show { transform: translateY(0); }\n    .flore-sticky-btn {\n      display: flex; align-items: center; justify-content: center; gap: 12px; width: 100%; max-width: 440px;\n      margin: 0 auto; background: #2DAA4F; color: #fff; border: none; border-radius: 100px;\n      padding: 15px 22px; cursor: pointer; box-shadow: 0 6px 18px rgba(45,170,79,0.4);\n      animation: flore-sticky-pulse 2.2s ease-in-out infinite;\n    }\n    @keyframes flore-sticky-pulse { 0%,100%{transform:scale(1);} 50%{transform:scale(1.015);} }\n    .flore-sticky-cta { font-size: 16px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.5px; }\n    .flore-sticky-price { font-size: 14px; font-weight: 800; white-space: nowrap; }\n    .flore-sticky-price s { opacity: 0.7; font-weight: 600; margin-right: 5px; }\n\n    @media (prefers-reduced-motion: reduce) {\n      .flore-landing .hero-checks-track, .flore-landing .offer-perks-track,\n      .flore-landing .step-arrow svg, .flore-sticky-btn { animation: none; }\n    }\n  \u003c\/style\u003e\n\n\n\n\u003cdiv class=\"flore-landing\"\u003e\n\n  \u003c!-- ====================== HERO ====================== --\u003e\n  \u003csection class=\"hero\"\u003e\n    \u003cdiv class=\"hero-head\"\u003e\n      \u003cspan class=\"hero-pill\"\u003e🇨🇴 Envío gratis a toda Colombia\u003c\/span\u003e\n      \u003ch1 class=\"hero-title\"\u003eMenos arrugas y piel más firme \u003cem\u003een 30 días\u003c\/em\u003e\n\u003c\/h1\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"hero-carousel-wrap\"\u003e\n      \u003cdiv class=\"hero-live\" aria-live=\"polite\"\u003e\n        \u003cspan class=\"hero-live-dot\"\u003e\u003c\/span\u003e\n        \u003cspan class=\"hero-live-text\"\u003e\u003cspan class=\"hero-live-num\"\u003e137\u003c\/span\u003e viendo ahora\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"hero-carousel\"\u003e\n        \u003c!-- IMG: Slide 1 = banner storytelling (3 frascos rosados + titular). 1:1 --\u003e\n        \u003cdiv class=\"hero-slide\"\u003e\u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eBanner storytelling\u003csmall\u003e3 frascos rosados + titular · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n        \u003c!-- IMG: Slides 2-7 = selfies UGC mujer 35-55 sosteniendo el frasco. 1:1 --\u003e\n        \u003cdiv class=\"hero-slide\"\u003e\u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eSelfie UGC #1\u003csmall\u003emujer con frasco · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n        \u003cdiv class=\"hero-slide\"\u003e\u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eSelfie UGC #2\u003csmall\u003emujer con frasco · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n        \u003cdiv class=\"hero-slide\"\u003e\u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eSelfie UGC #3\u003csmall\u003emujer con frasco · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n        \u003cdiv class=\"hero-slide\"\u003e\u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eSelfie UGC #4\u003csmall\u003emujer con frasco · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n        \u003cdiv class=\"hero-slide\"\u003e\u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eSelfie UGC #5\u003csmall\u003emujer con frasco · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n        \u003cdiv class=\"hero-slide\"\u003e\u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eSelfie UGC #6\u003csmall\u003emujer con frasco · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"hero-dots\"\u003e\n        \u003cspan class=\"dot active\"\u003e\u003c\/span\u003e\u003cspan class=\"dot\"\u003e\u003c\/span\u003e\u003cspan class=\"dot\"\u003e\u003c\/span\u003e\n        \u003cspan class=\"dot\"\u003e\u003c\/span\u003e\u003cspan class=\"dot\"\u003e\u003c\/span\u003e\u003cspan class=\"dot\"\u003e\u003c\/span\u003e\u003cspan class=\"dot\"\u003e\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"hero-body\"\u003e\n      \u003cdiv class=\"hero-price\"\u003e\n        \u003cspan class=\"price-old\"\u003e$179.800\u003c\/span\u003e\n        \u003cspan class=\"price-new\"\u003e$89.900\u003c\/span\u003e\n        \u003cspan class=\"price-badge\"\u003eSale\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"hero-rating\"\u003e\n        \u003cspan class=\"hero-stars\"\u003e★★★★★\u003c\/span\u003e\n        \u003cspan class=\"hero-rating-text\"\u003e4.9 · Más de 1.240 colombianas felices\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003c!-- AQUÍ se mueve el botón Releasit (único botón real) --\u003e\n      \u003cdiv class=\"rsi-slot hero-cta-slot\"\u003e\u003c\/div\u003e\n      \u003cdiv class=\"hero-checks-marquee\"\u003e\n        \u003cdiv class=\"hero-checks-track\"\u003e\n          \u003cul class=\"hero-checks\"\u003e\n            \u003cli\u003eEnvío gratis\u003c\/li\u003e\n\u003cli\u003ePago al recibir\u003c\/li\u003e\n\u003cli\u003eGarantía 30 días\u003c\/li\u003e\n            \u003cli\u003e10g por porción\u003c\/li\u003e\n\u003cli\u003eTipos I, II y III\u003c\/li\u003e\n\u003cli\u003eSin azúcar\u003c\/li\u003e\n            \u003cli\u003eRegistro INVIMA\u003c\/li\u003e\n\u003cli\u003eSin sabor\u003c\/li\u003e\n\u003cli\u003eLlega en 1-3 días\u003c\/li\u003e\n          \u003c\/ul\u003e\n          \u003cul class=\"hero-checks\" aria-hidden=\"true\"\u003e\n            \u003cli\u003eEnvío gratis\u003c\/li\u003e\n\u003cli\u003ePago al recibir\u003c\/li\u003e\n\u003cli\u003eGarantía 30 días\u003c\/li\u003e\n            \u003cli\u003e10g por porción\u003c\/li\u003e\n\u003cli\u003eRegistro INVIMA\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== PROBLEMA ====================== --\u003e\n  \u003csection class=\"problem\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003ch2 class=\"title\"\u003e¿Notas \u003cem\u003eestos signos?\u003c\/em\u003e\n\u003c\/h2\u003e\n      \u003cdiv class=\"prob-grid\"\u003e\n        \u003cdiv class=\"prob-card\"\u003e\n          \u003cdiv class=\"prob-img-wrap\"\u003e\n            \u003c!-- IMG: close-up arrugas\/líneas de expresión --\u003e\n            \u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eArrugas \/ líneas\u003csmall\u003eclose-up rostro · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cspan class=\"prob-x\"\u003e✗\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"prob-text\"\u003eArrugas y líneas de expresión más marcadas cada año\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"prob-card\"\u003e\n          \u003cdiv class=\"prob-img-wrap\"\u003e\n            \u003c!-- IMG: piel flácida \/ sin firmeza (cuello, contorno) --\u003e\n            \u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003ePiel flácida\u003csmall\u003epérdida de firmeza · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cspan class=\"prob-x\"\u003e✗\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"prob-text\"\u003ePiel flácida que perdió su firmeza y rebote\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"prob-card\"\u003e\n          \u003cdiv class=\"prob-img-wrap\"\u003e\n            \u003c!-- IMG: cabello que se cae \/ uñas quebradizas --\u003e\n            \u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eCabello y uñas\u003csmall\u003ecabello débil \/ uñas · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cspan class=\"prob-x\"\u003e✗\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"prob-text\"\u003eCabello que se cae y uñas quebradizas\u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"prob-card\"\u003e\n          \u003cdiv class=\"prob-img-wrap\"\u003e\n            \u003c!-- IMG: mujer frustrada con cremas\/serums sobre el lavabo --\u003e\n            \u003cdiv class=\"img-ph\" style=\"aspect-ratio:1\/1\"\u003eCremas que no llegan\u003csmall\u003esolo actúan por fuera · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cspan class=\"prob-x\"\u003e✗\u003c\/span\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"prob-text\"\u003eCremas que solo actúan por fuera y no llegan al fondo\u003c\/p\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== SOLUCIÓN ====================== --\u003e\n  \u003csection class=\"solution\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003ch2 class=\"title solution-title\"\u003eLa \u003cspan class=\"marker\"\u003esolución\u003c\/span\u003e que actúa desde adentro\u003c\/h2\u003e\n      \u003cdiv class=\"steps\"\u003e\n        \u003cdiv class=\"step\"\u003e\n\u003cspan class=\"step-num\"\u003e1\u003c\/span\u003e\u003cspan class=\"step-text\"\u003eSirve una\u003cbr\u003emedida (10g)\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cspan class=\"step-arrow\" aria-hidden=\"true\"\u003e\n          \u003csvg viewbox=\"0 0 40 16\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\n            \u003cpath d=\"M2 8 C 10 2, 22 14, 36 8\" stroke=\"#E0568C\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-dasharray=\"3 3\"\u003e\u003c\/path\u003e\n            \u003cpath d=\"M30 4 L36 8 L30 12\" stroke=\"#E0568C\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" fill=\"none\"\u003e\u003c\/path\u003e\n          \u003c\/svg\u003e\n        \u003c\/span\u003e\n        \u003cdiv class=\"step\"\u003e\n\u003cspan class=\"step-num\"\u003e2\u003c\/span\u003e\u003cspan class=\"step-text\"\u003eMézclala en\u003cbr\u003eagua o café\u003c\/span\u003e\n\u003c\/div\u003e\n        \u003cspan class=\"step-arrow\" aria-hidden=\"true\"\u003e\n          \u003csvg viewbox=\"0 0 40 16\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"\u003e\n            \u003cpath d=\"M2 8 C 10 2, 22 14, 36 8\" stroke=\"#E0568C\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-dasharray=\"3 3\"\u003e\u003c\/path\u003e\n            \u003cpath d=\"M30 4 L36 8 L30 12\" stroke=\"#E0568C\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" fill=\"none\"\u003e\u003c\/path\u003e\n          \u003c\/svg\u003e\n        \u003c\/span\u003e\n        \u003cdiv class=\"step\"\u003e\n\u003cspan class=\"step-num\"\u003e3\u003c\/span\u003e\u003cspan class=\"step-text\"\u003eTómalo\u003cbr\u003e1 vez al día\u003c\/span\u003e\n\u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003c!-- IMG: antes\/después (piel más firme y luminosa, ~4 semanas) --\u003e\n      \u003cdiv class=\"solution-img img-ph\" style=\"aspect-ratio:16\/10\"\u003eAntes \/ Después\u003csmall\u003epiel más firme y luminosa · 1080×675\u003c\/small\u003e\n\u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== INGREDIENTES ====================== --\u003e\n  \u003csection class=\"ingredients\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003ch2 class=\"title ing-title\"\u003e¿Qué te vas a \u003cem\u003etomar?\u003c\/em\u003e\n\u003c\/h2\u003e\n      \u003c!-- IMG: infografía del frasco + ingredientes con líneas --\u003e\n      \u003cdiv class=\"ingredients-info img-ph\" style=\"aspect-ratio:1\/1\"\u003eInfografía de ingredientes\u003csmall\u003eFrasco + Colágeno I·II·III · Vitamina C · Ác. hialurónico · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\n      \u003cp class=\"ingredients-sub ingredients-sub-plus\"\u003e✨ 10g de colágeno por porción · Tipos I, II y III · Marino + Bovino\u003c\/p\u003e\n      \u003cp class=\"ingredients-sub\"\u003eSin azúcar añadida · Registro INVIMA · Sin sabor\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== BANNER STORYTELLING ====================== --\u003e\n  \u003csection class=\"banner-promo\"\u003e\n    \u003c!-- IMG: banner full-width \"El secreto de las mujeres que no aparentan su edad\" --\u003e\n    \u003cdiv class=\"img-ph\"\u003eBanner storytelling\u003csmall\u003e\"El secreto de las mujeres que no aparentan su edad\" · 1080×1080\u003c\/small\u003e\n\u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== OFERTA ====================== --\u003e\n  \u003csection class=\"offer\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cdiv class=\"countdown-wrap\"\u003e\n        \u003cspan class=\"countdown-icon\"\u003e⏱️\u003c\/span\u003e\n        \u003cspan class=\"countdown-label\"\u003eLa oferta termina en\u003c\/span\u003e\n        \u003cspan class=\"countdown\"\u003e17:00\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cspan class=\"label\"\u003ePrecio de lanzamiento\u003c\/span\u003e\n      \u003ch2 class=\"title\"\u003eEmpieza tu transformación hoy\u003c\/h2\u003e\n      \u003cdiv class=\"price-box\"\u003e\n        \u003cdiv class=\"offer-price-before\"\u003eAntes \u003cs\u003e$179.800\u003c\/s\u003e\n\u003c\/div\u003e\n        \u003cdiv class=\"offer-price\"\u003e$89.900\u003c\/div\u003e\n        \u003cspan class=\"offer-save\"\u003eAhorras $89.900\u003c\/span\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"offer-perks-marquee\"\u003e\n        \u003cdiv class=\"offer-perks-track\"\u003e\n          \u003cul class=\"offer-perks-list\"\u003e\n            \u003cli\u003e🚚 Envío gratis\u003c\/li\u003e\n\u003cli\u003e💰 Pago al recibir\u003c\/li\u003e\n\u003cli\u003e📦 Llega en 1-3 días\u003c\/li\u003e\n            \u003cli\u003e🔒 Compra segura\u003c\/li\u003e\n\u003cli\u003e✅ Garantía 30 días\u003c\/li\u003e\n\u003cli\u003e🇨🇴 Toda Colombia\u003c\/li\u003e\n          \u003c\/ul\u003e\n          \u003cul class=\"offer-perks-list\" aria-hidden=\"true\"\u003e\n            \u003cli\u003e🚚 Envío gratis\u003c\/li\u003e\n\u003cli\u003e💰 Pago al recibir\u003c\/li\u003e\n\u003cli\u003e🔒 Compra segura\u003c\/li\u003e\n            \u003cli\u003e✅ Garantía 30 días\u003c\/li\u003e\n\u003cli\u003e🇨🇴 Toda Colombia\u003c\/li\u003e\n          \u003c\/ul\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cp class=\"bump-mention\"\u003e🎁 Al confirmar tu pedido recibes gratis la guía digital \"Belleza desde Adentro\"\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== TIEMPOS DE ENTREGA ====================== --\u003e\n  \u003csection class=\"shipping-times\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cspan class=\"label\"\u003e📦 ¿Cuándo lo recibes?\u003c\/span\u003e\n      \u003ch2 class=\"title\"\u003eDespacho en menos de 24 horas\u003c\/h2\u003e\n      \u003cdiv class=\"shipping-cards\"\u003e\n        \u003carticle class=\"shipping-card\"\u003e\n          \u003cdiv class=\"shipping-icon\"\u003e🏙️\u003c\/div\u003e\n          \u003cdiv class=\"shipping-days\"\u003e1-3 días\u003c\/div\u003e\n          \u003cdiv class=\"shipping-label\"\u003ehábiles\u003c\/div\u003e\n          \u003cdiv class=\"shipping-desc\"\u003eCiudades principales\u003c\/div\u003e\n          \u003cdiv class=\"shipping-cities\"\u003eBogotá · Medellín · Cali · Barranquilla · Cartagena · Bucaramanga\u003c\/div\u003e\n        \u003c\/article\u003e\n        \u003carticle class=\"shipping-card\"\u003e\n          \u003cdiv class=\"shipping-icon\"\u003e🇨🇴\u003c\/div\u003e\n          \u003cdiv class=\"shipping-days\"\u003e3-5 días\u003c\/div\u003e\n          \u003cdiv class=\"shipping-label\"\u003ehábiles\u003c\/div\u003e\n          \u003cdiv class=\"shipping-desc\"\u003eResto de Colombia\u003c\/div\u003e\n          \u003cdiv class=\"shipping-cities\"\u003ePereira · Manizales · Ibagué · Pasto · Cúcuta · Santa Marta y todo el país\u003c\/div\u003e\n        \u003c\/article\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"shipping-footer\"\u003e\n        \u003cspan\u003e🚚 Envío gratis\u003c\/span\u003e\n        \u003cspan\u003e💰 Pagas al recibir\u003c\/span\u003e\n        \u003cspan\u003e📱 Número de guía por WhatsApp\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== GARANTÍA ====================== --\u003e\n  \u003csection class=\"guarantee\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cdiv class=\"guarantee-icon\"\u003e🛡️\u003c\/div\u003e\n      \u003ch2 class=\"title\"\u003eGarantía 30 días\u003c\/h2\u003e\n      \u003cp class=\"guarantee-text\"\u003eSi en 30 días no ves tu piel más firme y luminosa, te devolvemos tu dinero. Sin preguntas, sin trámites.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== RESEÑAS ====================== --\u003e\n  \u003csection class=\"reviews\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003cdiv class=\"reviews-head\"\u003e\n        \u003ch2 class=\"title\"\u003eLo que dicen nuestras clientas\u003c\/h2\u003e\n        \u003cdiv class=\"reviews-rating\"\u003e\n          \u003cspan class=\"reviews-stars\"\u003e★★★★★\u003c\/span\u003e\n          \u003cspan class=\"reviews-score\"\u003e4.9\u003c\/span\u003e\n          \u003cspan class=\"reviews-count\"\u003e· basado en 1.240 compras verificadas\u003c\/span\u003e\n        \u003c\/div\u003e\n      \u003c\/div\u003e\n      \u003cdiv class=\"reviews-grid\"\u003e\n\n        \u003carticle class=\"review-card\"\u003e\n          \u003cdiv class=\"rev-top\"\u003e\n            \u003c!-- IMG: mano sosteniendo el frasco (fondo real) --\u003e\n            \u003cdiv class=\"img-ph\"\u003efoto\u003csmall\u003emano+frasco\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"rev-meta\"\u003e\n              \u003cdiv class=\"rev-name\"\u003eMaría del Pilar R. 🇨🇴\u003c\/div\u003e\n              \u003cdiv class=\"rev-city\"\u003eArmenia, Quindío · hace 1 mes\u003c\/div\u003e\n              \u003cdiv class=\"rev-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"rev-text\"\u003e\"Tengo 48 años y la piel del cuello la sentía floja. Llevo mes y medio tomándolo en el café de la mañana y la noto más firme. Hasta las uñas me crecen más fuertes.\"\u003c\/p\u003e\n          \u003cdiv class=\"rev-verified\"\u003e✓ Compra verificada\u003c\/div\u003e\n        \u003c\/article\u003e\n\n        \u003carticle class=\"review-card\"\u003e\n          \u003cdiv class=\"rev-top\"\u003e\n            \u003cdiv class=\"img-ph\"\u003efoto\u003csmall\u003emano+frasco\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"rev-meta\"\u003e\n              \u003cdiv class=\"rev-name\"\u003eCamila Andrea R. 🇨🇴\u003c\/div\u003e\n              \u003cdiv class=\"rev-city\"\u003eBogotá · hace 2 semanas\u003c\/div\u003e\n              \u003cdiv class=\"rev-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"rev-text\"\u003e\"Lo empecé por la piel, pero lo que más noté fue el cabello: se me caía un montón y ya casi no. Sin sabor, se disuelve facilísimo en el jugo 😍\"\u003c\/p\u003e\n          \u003cdiv class=\"rev-verified\"\u003e✓ Compra verificada\u003c\/div\u003e\n        \u003c\/article\u003e\n\n        \u003carticle class=\"review-card\"\u003e\n          \u003cdiv class=\"rev-top\"\u003e\n            \u003cdiv class=\"img-ph\"\u003efoto\u003csmall\u003emano+frasco\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"rev-meta\"\u003e\n              \u003cdiv class=\"rev-name\"\u003eDiana Marcela G. 🇨🇴\u003c\/div\u003e\n              \u003cdiv class=\"rev-city\"\u003eMedellín · hace 3 semanas\u003c\/div\u003e\n              \u003cdiv class=\"rev-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"rev-text\"\u003e\"A los 50 las rodillas me molestaban al subir escaleras. Con el colágeno me siento mejor y de paso la piel más bonita. Ya pedí 2 más para mi mamá y mi hermana.\"\u003c\/p\u003e\n          \u003cdiv class=\"rev-verified\"\u003e✓ Compra verificada\u003c\/div\u003e\n        \u003c\/article\u003e\n\n        \u003carticle class=\"review-card\"\u003e\n          \u003cdiv class=\"rev-top\"\u003e\n            \u003cdiv class=\"img-ph\"\u003efoto\u003csmall\u003emano+frasco\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"rev-meta\"\u003e\n              \u003cdiv class=\"rev-name\"\u003eSandra Liliana P. 🇨🇴\u003c\/div\u003e\n              \u003cdiv class=\"rev-city\"\u003eCali · hace 1 mes\u003c\/div\u003e\n              \u003cdiv class=\"rev-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"rev-text\"\u003e\"Soy malísima para tomar cosas con sabor raro, pero este no sabe a nada. Lo mezclo en agua y listo. En 3 semanas la piel se ve más luminosa y rellenita.\"\u003c\/p\u003e\n          \u003cdiv class=\"rev-verified\"\u003e✓ Compra verificada\u003c\/div\u003e\n        \u003c\/article\u003e\n\n        \u003carticle class=\"review-card\"\u003e\n          \u003cdiv class=\"rev-top\"\u003e\n            \u003cdiv class=\"img-ph\"\u003efoto\u003csmall\u003emano+frasco\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"rev-meta\"\u003e\n              \u003cdiv class=\"rev-name\"\u003eValentina Q. 🇨🇴\u003c\/div\u003e\n              \u003cdiv class=\"rev-city\"\u003eBarranquilla · hace 2 semanas\u003c\/div\u003e\n              \u003cdiv class=\"rev-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"rev-text\"\u003e\"Me llegó rapidísimo y pagué cuando llegó. Lo que me convenció fue que tiene registro INVIMA. La piel la siento más hidratada y firme 💕\"\u003c\/p\u003e\n          \u003cdiv class=\"rev-verified\"\u003e✓ Compra verificada\u003c\/div\u003e\n        \u003c\/article\u003e\n\n        \u003carticle class=\"review-card\"\u003e\n          \u003cdiv class=\"rev-top\"\u003e\n            \u003cdiv class=\"img-ph\"\u003efoto\u003csmall\u003emano+frasco\u003c\/small\u003e\n\u003c\/div\u003e\n            \u003cdiv class=\"rev-meta\"\u003e\n              \u003cdiv class=\"rev-name\"\u003eAndrea V. 🇨🇴\u003c\/div\u003e\n              \u003cdiv class=\"rev-city\"\u003ePereira · hace 1 mes\u003c\/div\u003e\n              \u003cdiv class=\"rev-stars\"\u003e★★★★★\u003c\/div\u003e\n            \u003c\/div\u003e\n          \u003c\/div\u003e\n          \u003cp class=\"rev-text\"\u003e\"Después de los embarazos sentía la piel sin elasticidad. Llevo un mes y se ve más firme, sobre todo en la cara. Lo recomiendo de verdad.\"\u003c\/p\u003e\n          \u003cdiv class=\"rev-verified\"\u003e✓ Compra verificada\u003c\/div\u003e\n        \u003c\/article\u003e\n\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n  \u003c!-- ====================== FINAL CTA ====================== --\u003e\n  \u003csection class=\"final\"\u003e\n    \u003cdiv class=\"wrap\"\u003e\n      \u003ch2 class=\"title\"\u003e¿Lista para \u003cem\u003erecuperar tu colágeno?\u003c\/em\u003e\n\u003c\/h2\u003e\n      \u003cp class=\"final-sub\"\u003ePago contra entrega · Envío gratis · Garantía 30 días\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/section\u003e\n\n\u003c\/div\u003e\n\u003c!-- \/.flore-landing --\u003e\n\n\u003c!-- ====================== POP-UP NOTIFICACIÓN (fuera del wrapper) ====================== --\u003e\n\u003cdiv class=\"flore-popup\" id=\"flore-popup\" role=\"status\" aria-live=\"polite\"\u003e\n  \u003cdiv class=\"flore-popup-icon\"\u003e\n    \u003c!-- IMG: frasco sin fondo (transparent PNG) --\u003e\n    \u003cdiv class=\"img-ph\"\u003efrasco\u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"flore-popup-content\"\u003e\n    \u003cdiv class=\"flore-popup-line1\"\u003e\n\u003cspan class=\"flore-popup-name\"\u003eMaría C.\u003c\/span\u003e acaba de comprar\u003c\/div\u003e\n    \u003cdiv class=\"flore-popup-product\"\u003eFLORÉ · Multicolágeno\u003c\/div\u003e\n    \u003cdiv class=\"flore-popup-meta\"\u003e\n      \u003cspan class=\"flore-popup-dot\"\u003e\u003c\/span\u003e\n      \u003cspan class=\"flore-popup-city\"\u003eBogotá\u003c\/span\u003e\n      \u003cspan\u003e·\u003c\/span\u003e\n      \u003cspan class=\"flore-popup-time\"\u003ehace 5 min\u003c\/span\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cbutton class=\"flore-popup-close\" aria-label=\"Cerrar\"\u003e×\u003c\/button\u003e\n\u003c\/div\u003e\n\n\u003c!-- ====================== BOTÓN STICKY (fuera del wrapper) ====================== --\u003e\n\u003cdiv class=\"flore-sticky\" id=\"flore-sticky\" aria-hidden=\"true\"\u003e\n  \u003cbutton class=\"flore-sticky-btn\" type=\"button\"\u003e\n    \u003cspan class=\"flore-sticky-price\"\u003e\u003cs\u003e$179.800\u003c\/s\u003e$89.900\u003c\/span\u003e\n    \u003cspan class=\"flore-sticky-cta\"\u003e🛒 Pedir contra entrega\u003c\/span\u003e\n  \u003c\/button\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n\/* ====== Audio: chime suave para el pop-up (Web Audio, se desbloquea al 1er toque) ====== *\/\nvar floreAudioCtx = null;\nfunction floreUnlockAudio(){\n  try {\n    if (!floreAudioCtx) floreAudioCtx = new (window.AudioContext || window.webkitAudioContext)();\n    if (floreAudioCtx.state === 'suspended') floreAudioCtx.resume();\n  } catch(e){}\n}\n['touchstart','click','scroll','keydown'].forEach(function(ev){\n  window.addEventListener(ev, floreUnlockAudio, { once:true, passive:true });\n});\nfunction florePlayDing(){\n  if (!floreAudioCtx) return;\n  try {\n    var t = floreAudioCtx.currentTime;\n    [{f:880,d:0},{f:1318.5,d:0.12}].forEach(function(n){\n      var o = floreAudioCtx.createOscillator(), g = floreAudioCtx.createGain();\n      o.type = 'sine'; o.frequency.value = n.f;\n      o.connect(g); g.connect(floreAudioCtx.destination);\n      var s = t + n.d;\n      g.gain.setValueAtTime(0, s);\n      g.gain.linearRampToValueAtTime(0.16, s + 0.02);\n      g.gain.exponentialRampToValueAtTime(0.0001, s + 0.34);\n      o.start(s); o.stop(s + 0.4);\n    });\n  } catch(e){}\n}\n\u003c\/script\u003e\n\n\u003cscript\u003e\n\/* ====== \"Viendo ahora\" — fluctúa entre 78 y 165 ====== *\/\n(function(){\n  var el = document.querySelector('.flore-landing .hero-live-num');\n  if (!el) return;\n  var current = 100 + Math.floor(Math.random()*40);\n  el.textContent = current;\n  setInterval(function(){\n    var ch = Math.floor(Math.random()*4)+1; if (Math.random()\u003c0.5) ch=-ch;\n    current += ch;\n    if (current \u003c 78) current = 78 + Math.floor(Math.random()*6);\n    if (current \u003e 165) current = 158 + Math.floor(Math.random()*6);\n    el.textContent = current;\n  }, 3200);\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\n\/* ====== Pop-up de notificaciones de compra (con sonido) ====== *\/\n(function(){\n  var popup = document.getElementById('flore-popup');\n  if (!popup) return;\n  if (popup.parentNode !== document.body) document.body.appendChild(popup);\n\n  var clientes = [\n    {name:'María Camila',city:'Bogotá'},{name:'Valentina G.',city:'Medellín'},{name:'Sofía R.',city:'Cali'},\n    {name:'Isabella M.',city:'Barranquilla'},{name:'Camila P.',city:'Cartagena'},{name:'Daniela L.',city:'Bucaramanga'},\n    {name:'Andrea V.',city:'Pereira'},{name:'Mariana T.',city:'Manizales'},{name:'Laura C.',city:'Ibagué'},\n    {name:'Paula R.',city:'Santa Marta'},{name:'Natalia F.',city:'Villavicencio'},{name:'Catalina B.',city:'Armenia'},\n    {name:'Juliana H.',city:'Neiva'},{name:'Ana María',city:'Popayán'},{name:'Sara P.',city:'Pasto'},\n    {name:'Lucía D.',city:'Tunja'},{name:'Karen V.',city:'Cúcuta'},{name:'Carolina M.',city:'Montería'},\n    {name:'Manuela G.',city:'Sincelejo'},{name:'Tatiana R.',city:'Valledupar'},{name:'Verónica S.',city:'Riohacha'},\n    {name:'Liliana P.',city:'Quibdó'},{name:'Diana M.',city:'Yopal'},{name:'Estefanía L.',city:'Envigado'},\n    {name:'Adriana C.',city:'Soacha'},{name:'Yuliana S.',city:'Bello'},{name:'Mónica F.',city:'Itagüí'},\n    {name:'Andrea P.',city:'Floridablanca'},{name:'Juliana M.',city:'Chía'},{name:'Daniela R.',city:'Cajicá'}\n  ];\n  var nameEl=popup.querySelector('.flore-popup-name'), cityEl=popup.querySelector('.flore-popup-city'),\n      timeEl=popup.querySelector('.flore-popup-time'), closeBtn=popup.querySelector('.flore-popup-close');\n  var lastUsed=[], maxNotifications=25, shownCount=0, dismissed=false;\n  function randInt(a,b){ return Math.floor(Math.random()*(b-a+1))+a; }\n  function nextClient(){\n    var av = clientes.filter(function(c){ return lastUsed.indexOf(c.name)===-1; });\n    if (av.length\u003c5){ lastUsed=[]; av=clientes; }\n    var p = av[Math.floor(Math.random()*av.length)];\n    lastUsed.push(p.name); return p;\n  }\n  function show(){\n    if (dismissed || shownCount\u003e=maxNotifications) return;\n    var c=nextClient();\n    nameEl.textContent=c.name; cityEl.textContent=c.city; timeEl.textContent='hace '+randInt(2,48)+' min';\n    popup.classList.add('show'); florePlayDing(); shownCount++;\n    setTimeout(function(){ popup.classList.remove('show'); }, 5500);\n  }\n  function scheduleNext(){ setTimeout(function(){ show(); scheduleNext(); }, randInt(10000,30000)); }\n  closeBtn.addEventListener('click', function(){ popup.classList.remove('show'); dismissed=true; });\n  setTimeout(function(){ show(); scheduleNext(); }, 5000);\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\n\/* ====== Countdown 17 min (localStorage) ====== *\/\n(function(){\n  function init(){\n    var el = document.querySelector('.flore-landing .countdown'); if (!el) return;\n    var KEY='flore_offer_end', DURATION=17*60*1000;\n    var end = parseInt(localStorage.getItem(KEY),10);\n    if (!end || end-Date.now()\u003c=0){ end=Date.now()+DURATION; try{localStorage.setItem(KEY,end);}catch(e){} }\n    function tick(){\n      var ms=end-Date.now();\n      if (ms\u003c=0){ end=Date.now()+DURATION; try{localStorage.setItem(KEY,end);}catch(e){} ms=DURATION; }\n      var tot=Math.floor(ms\/1000);\n      el.textContent = String(Math.floor(tot\/60)).padStart(2,'0')+':'+String(tot%60).padStart(2,'0');\n    }\n    tick(); setInterval(tick,1000);\n  }\n  if (document.readyState!=='loading') init(); else document.addEventListener('DOMContentLoaded', init);\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\n\/* ====== Carousel hero — auto-advance ====== *\/\n(function(){\n  function init(){\n    var car=document.querySelector('.flore-landing .hero-carousel');\n    var dots=document.querySelectorAll('.flore-landing .hero-dots .dot');\n    if (!car || !dots.length) return;\n    var slides=car.querySelectorAll('.hero-slide'); if (!slides.length) return;\n    var gap=10, firstDelay=4000, nextDelay=1000, resumeDelay=6000, timer=null, resumeTimer=null, interacted=false;\n    function w(){ return slides[0].offsetWidth + gap; }\n    function idx(){ return Math.round(car.scrollLeft \/ w()); }\n    function updateDots(){ var i=Math.max(0,Math.min(dots.length-1, idx())); dots.forEach(function(d,k){ d.classList.toggle('active', k===i); }); }\n    function go(i){ car.scrollTo({ left:i*w(), behavior:'smooth' }); }\n    function next(){ go((idx()+1)%slides.length); }\n    function start(){ stop(); (function sch(){ var d=idx()===0?firstDelay:nextDelay; timer=setTimeout(function(){ next(); sch(); }, d); })(); }\n    function stop(){ if (timer){ clearTimeout(timer); timer=null; } }\n    function pause(){ interacted=true; stop(); if (resumeTimer) clearTimeout(resumeTimer); resumeTimer=setTimeout(function(){ interacted=false; start(); }, resumeDelay); }\n    car.addEventListener('scroll', updateDots, { passive:true });\n    ['touchstart','mousedown','wheel'].forEach(function(e){ car.addEventListener(e, pause, { passive:true }); });\n    dots.forEach(function(d,i){ d.style.cursor='pointer'; d.addEventListener('click', function(){ pause(); go(i); }); });\n    setTimeout(start, 1500);\n    if ('IntersectionObserver' in window){\n      new IntersectionObserver(function(es){ es.forEach(function(e){ if (e.isIntersecting){ if(!interacted) start(); } else stop(); }); }, { threshold:0.3 }).observe(car);\n    }\n  }\n  if (document.readyState!=='loading') init(); else document.addEventListener('DOMContentLoaded', init);\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\n\/* ====== Mover el botón Releasit al hero (único botón real) ====== *\/\n(function(){\n  function findRsi(){\n    var sels=['[id^=\"shopify-block-\"][id*=\"releasit\"]','[id*=\"releasit-cod\"]','[class*=\"releasit-cod\"]',\n      '[id^=\"_rsi_cod_form_sf\"]','[class*=\"_rsi_cod_form\"]','[id*=\"rsi-cod\"]','[class*=\"rsi-cod\"]'];\n    for (var i=0;i\u003csels.length;i++){ var el=document.querySelector(sels[i]); if (el) return el; }\n    var blocks=document.querySelectorAll('[id^=\"shopify-block-\"]');\n    for (var j=0;j\u003cblocks.length;j++){ if (\/PEDIR|CONTRA ENTREGA|CASH ON DELIVERY|COD\/i.test(blocks[j].textContent||'')) return blocks[j]; }\n    return null;\n  }\n  function move(){\n    var src=findRsi(), slot=document.querySelector('.flore-landing .hero-cta-slot');\n    if (!src || !slot) return false;\n    if (slot.dataset.filled==='1') return true;\n    slot.appendChild(src);\n    src.style.display='block'; src.style.maxWidth='440px'; src.style.margin='0 auto'; src.style.width='100%';\n    slot.dataset.filled='1'; return true;\n  }\n  function init(){ if (move()) return; var n=0, iv=setInterval(function(){ n++; if (move()||n\u003e40) clearInterval(iv); }, 400); }\n  if (document.readyState!=='loading') init(); else document.addEventListener('DOMContentLoaded', init);\n})();\n\u003c\/script\u003e\n\n\u003cscript\u003e\n\/* ====== Botón sticky — aparece al hacer scroll, dispara el formulario Releasit ====== *\/\n(function(){\n  var sticky=document.getElementById('flore-sticky'); if (!sticky) return;\n  if (sticky.parentNode!==document.body) document.body.appendChild(sticky);\n  function openReleasit(){\n    floreUnlockAudio();\n    if (typeof window.lumeRsiOpen==='function'){ window.lumeRsiOpen(); return; }\n    var real=document.querySelector('.flore-landing .hero-cta-slot button, .flore-landing .hero-cta-slot a, .flore-landing .hero-cta-slot [role=\"button\"]');\n    if (real){ real.click(); return; }\n    var slot=document.querySelector('.flore-landing .hero-cta-slot');\n    if (slot) slot.scrollIntoView({ behavior:'smooth', block:'center' });\n  }\n  sticky.querySelector('.flore-sticky-btn').addEventListener('click', openReleasit);\n  function bind(){\n    var heroSlot=document.querySelector('.flore-landing .hero-cta-slot');\n    if (heroSlot \u0026\u0026 'IntersectionObserver' in window){\n      new IntersectionObserver(function(es){ es.forEach(function(e){\n        if (e.isIntersecting) sticky.classList.remove('show'); else sticky.classList.add('show');\n      }); }, { threshold:0 }).observe(heroSlot);\n    } else {\n      window.addEventListener('scroll', function(){\n        if (window.scrollY\u003e600) sticky.classList.add('show'); else sticky.classList.remove('show');\n      }, { passive:true });\n    }\n  }\n  if (document.readyState!=='loading') bind(); else document.addEventListener('DOMContentLoaded', bind);\n})();\n\u003c\/script\u003e\n\n\n\n\u003c\/body\u003e","brand":"Vizona","offers":[{"title":"Default Title","offer_id":50756268818678,"sku":"36262","price":89900.0,"currency_code":"COP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0805\/3630\/5910\/files\/Diseno_sin_titulo_36_05dfe98e-b2fe-4d65-9ac9-3ece1cf15c75.webp?v=1780857746","url":"https:\/\/vizonashop.com\/products\/adios-arrugas-y-flacidez-en-30-dias","provider":"Vizona","version":"1.0","type":"link"}