Mostrando 21 - 40 de 108 Resultados
Filter
{"id":4807396753513,"title":"V-Neck Black Sand - Mujer","handle":"v-neck-black-sand-mujer","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\u003cstrong\u003eFeris mide 1.76m y está usando la talla S .\u003c\/strong\u003e\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:47:22-05:00","created_at":"2020-10-09T13:04:03-05:00","vendor":"Green Hug","type":"playera","tags":["mujer"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32858977271913,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Black Sand - Mujer - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858977304681,"title":"S","option1":"S","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Black Sand - Mujer - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858977337449,"title":"M","option1":"M","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Black Sand - Mujer - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858977370217,"title":"L","option1":"L","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Black Sand - Mujer - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858977402985,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Black Sand - Mujer - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vnecknegramujerlado.jpg?v=1602266775","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/negravneckmujerfrente.jpg?v=1602266775","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/negramujerdet.png?v=1602266777"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vnecknegramujerlado.jpg?v=1602266775","options":["Size"],"media":[{"alt":null,"id":8028097478761,"position":1,"preview_image":{"aspect_ratio":0.667,"height":1395,"width":930,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vnecknegramujerlado.jpg?v=1602266775"},"aspect_ratio":0.667,"height":1395,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vnecknegramujerlado.jpg?v=1602266775","width":930},{"alt":null,"id":8028097511529,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1400,"width":934,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/negravneckmujerfrente.jpg?v=1602266775"},"aspect_ratio":0.667,"height":1400,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/negravneckmujerfrente.jpg?v=1602266775","width":934},{"alt":null,"id":8028097577065,"position":3,"preview_image":{"aspect_ratio":1.202,"height":628,"width":755,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/negramujerdet.png?v=1602266777"},"aspect_ratio":1.202,"height":628,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/negramujerdet.png?v=1602266777","width":755}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\u003cstrong\u003eFeris mide 1.76m y está usando la talla S .\u003c\/strong\u003e\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4807416938601,"title":"Classic Green Moss - Hombre","handle":"classic-green-moss-hombre","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Hombre_Cuello_redondo_480x480.jpg?v=1646928018\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eDavid mide 1.83m y está usando la talla M \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-03.png?v=1602390630\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:43:14-05:00","created_at":"2020-10-09T13:43:03-05:00","vendor":"Green Hug","type":"playera","tags":["hombre"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32859037597801,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Classic Green Moss - Hombre - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859037630569,"title":"S","option1":"S","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Classic Green Moss - Hombre - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859037663337,"title":"M","option1":"M","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Classic Green Moss - Hombre - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859037696105,"title":"L","option1":"L","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Classic Green Moss - Hombre - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859037728873,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Classic Green Moss - Hombre - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrecl2.jpg?v=1602269026","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrecl1.jpg?v=1602269026","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombredetalle_4b7ae4ad-20a4-4e08-acc1-e335cfc1ba5f.png?v=1602269029"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrecl2.jpg?v=1602269026","options":["Size"],"media":[{"alt":null,"id":8028228288617,"position":1,"preview_image":{"aspect_ratio":0.666,"height":1496,"width":997,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrecl2.jpg?v=1602269026"},"aspect_ratio":0.666,"height":1496,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrecl2.jpg?v=1602269026","width":997},{"alt":null,"id":8028228321385,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1470,"width":980,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrecl1.jpg?v=1602269026"},"aspect_ratio":0.667,"height":1470,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrecl1.jpg?v=1602269026","width":980},{"alt":null,"id":8028228354153,"position":3,"preview_image":{"aspect_ratio":0.934,"height":623,"width":582,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombredetalle_4b7ae4ad-20a4-4e08-acc1-e335cfc1ba5f.png?v=1602269029"},"aspect_ratio":0.934,"height":623,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombredetalle_4b7ae4ad-20a4-4e08-acc1-e335cfc1ba5f.png?v=1602269029","width":582}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Hombre_Cuello_redondo_480x480.jpg?v=1646928018\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eDavid mide 1.83m y está usando la talla M \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-03.png?v=1602390630\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":6374111051945,"title":"Pasta de Dientes - Carbón Activado","handle":"pasta-de-dientes-carbon-activado","description":"\u003ch3 style=\"text-align: center;\"\u003e¡La pasta dental perfecta para unx ambientalista imperfectx!\u003c\/h3\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/PASTA_INFO-14.png?v=1610386306\"\u003e","published_at":"2021-01-15T12:11:32-06:00","created_at":"2021-01-11T11:36:55-06:00","vendor":"Green Hug","type":"EcoCare","tags":["ecocare"],"price":12000,"price_min":12000,"price_max":12000,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":38361105137833,"title":"Default Title","option1":"Default Title","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Pasta de Dientes - Carbón Activado","public_title":null,"options":["Default Title"],"price":12000,"weight":1134,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/CARBON2_Mesadetrabajo1.jpg?v=1629917259","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4853.jpg?v=1629917259","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4889.jpg?v=1629917259"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/CARBON2_Mesadetrabajo1.jpg?v=1629917259","options":["Title"],"media":[{"alt":null,"id":25998484078761,"position":1,"preview_image":{"aspect_ratio":0.774,"height":1215,"width":940,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/CARBON2_Mesadetrabajo1.jpg?v=1629917259"},"aspect_ratio":0.774,"height":1215,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/CARBON2_Mesadetrabajo1.jpg?v=1629917259","width":940},{"alt":null,"id":17877737898153,"position":2,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4853.jpg?v=1629917259"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4853.jpg?v=1629917259","width":5184},{"alt":null,"id":18058004496553,"position":3,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4889.jpg?v=1629917259"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4889.jpg?v=1629917259","width":5184}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch3 style=\"text-align: center;\"\u003e¡La pasta dental perfecta para unx ambientalista imperfectx!\u003c\/h3\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/PASTA_INFO-14.png?v=1610386306\"\u003e"}
{"id":6374114459817,"title":"Desodorante Unisex - Carbón","handle":"desodorante-carbon","description":"\u003ch3 style=\"text-align: center;\"\u003e¡El desodorante perfecto para un ambientalista imperfectx!\u003c\/h3\u003e\n\u003cdiv style=\"text-align: left;\" data-mce-fragment=\"1\" data-mce-style=\"text-align: left;\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/DESODORANTE_INFO-14.png?v=1610386294\" alt=\"\" style=\"float: none;\" data-mce-fragment=\"1\" data-mce-style=\"float: none;\" data-mce-src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/DESODORANTE_INFO-14.png?v=1610386294\"\u003e\u003c\/div\u003e","published_at":"2021-01-15T12:09:18-06:00","created_at":"2021-01-11T11:39:18-06:00","vendor":"Green Hug","type":"EcoCare","tags":["ecocare"],"price":9900,"price_min":9900,"price_max":9900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":38361114116265,"title":"Default Title","option1":"Default Title","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Desodorante Unisex - Carbón","public_title":null,"options":["Default Title"],"price":9900,"weight":60,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Sintitulo-1_Mesadetrabajo1.jpg?v=1629917237","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4908.jpg?v=1629917237","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4910.jpg?v=1629917237"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Sintitulo-1_Mesadetrabajo1.jpg?v=1629917237","options":["Title"],"media":[{"alt":null,"id":25998481260713,"position":1,"preview_image":{"aspect_ratio":0.774,"height":1215,"width":940,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Sintitulo-1_Mesadetrabajo1.jpg?v=1629917237"},"aspect_ratio":0.774,"height":1215,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Sintitulo-1_Mesadetrabajo1.jpg?v=1629917237","width":940},{"alt":null,"id":17877487157417,"position":2,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4908.jpg?v=1629917237"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4908.jpg?v=1629917237","width":5184},{"alt":null,"id":18057955705001,"position":3,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4910.jpg?v=1629917237"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4910.jpg?v=1629917237","width":5184}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch3 style=\"text-align: center;\"\u003e¡El desodorante perfecto para un ambientalista imperfectx!\u003c\/h3\u003e\n\u003cdiv style=\"text-align: left;\" data-mce-fragment=\"1\" data-mce-style=\"text-align: left;\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/DESODORANTE_INFO-14.png?v=1610386294\" alt=\"\" style=\"float: none;\" data-mce-fragment=\"1\" data-mce-style=\"float: none;\" data-mce-src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/DESODORANTE_INFO-14.png?v=1610386294\"\u003e\u003c\/div\u003e"}
{"id":4649299443817,"title":"Playera Better Days White Snow - Mujer","handle":"betterdays-blanca-mujer","description":"\u003cdiv style=\"text-align: left;\"\u003e\n\u003ch5 data-mce-style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_redondo_480x480.jpg?v=1646927481\"\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ch5\u003eBetter Days Will Come.\u003c\/h5\u003e\n\u003cdiv style=\"text-align: left;\"\u003e¡Ya saldrá el sol para todos y vamos a encontrarnos con un mundo mejor y más sano!\u003cbr\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cstrong\u003eBetter Days Will Come\u003c\/strong\u003e está pensada para traerte lo más cómodo y con los materiales más sustentables, para que te quedes en tu casa.\u003c\/p\u003e\n\u003cbr\u003e\u003cbr\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/info_Green_Hug-07.png?v=1592419558\" width=\"867\" height=\"1549\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Tallaje_Mujer_Green_Hug.png?v=1592581725\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-05-05T10:57:34-05:00","created_at":"2020-05-05T10:57:34-05:00","vendor":"Green Hug","type":"playera","tags":["playeras"],"price":28000,"price_min":28000,"price_max":28000,"available":true,"price_varies":false,"compare_at_price":35000,"compare_at_price_min":35000,"compare_at_price_max":35000,"compare_at_price_varies":false,"variants":[{"id":32331413749865,"title":"Blanco \/ M","option1":"Blanco","option2":"M","option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Playera Better Days White Snow - Mujer - Blanco \/ M","public_title":"Blanco \/ M","options":["Blanco","M"],"price":28000,"weight":0,"compare_at_price":35000,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32331413782633,"title":"Blanco \/ L","option1":"Blanco","option2":"L","option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Playera Better Days White Snow - Mujer - Blanco \/ L","public_title":"Blanco \/ L","options":["Blanco","L"],"price":28000,"weight":0,"compare_at_price":35000,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/5_9c714582-a800-4bcd-986d-71c3371d6fce.jpg?v=1588694284","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysmujerblanco_db1d5e5d-ca4b-4c64-a982-2d3cfc73e371.jpg?v=1588694284","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysdetalleblanca_b82885b3-a930-4fbd-b0a8-17e6e6291d9d.jpg?v=1588694284","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysmujerbackblanco_f3ea58f0-6c64-4bba-8c2c-7da64e0e5644.jpg?v=1588694284"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/5_9c714582-a800-4bcd-986d-71c3371d6fce.jpg?v=1588694284","options":["Color","Size"],"media":[{"alt":null,"id":7186283429993,"position":1,"preview_image":{"aspect_ratio":0.75,"height":1280,"width":960,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/5_9c714582-a800-4bcd-986d-71c3371d6fce.jpg?v=1588694284"},"aspect_ratio":0.75,"height":1280,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/5_9c714582-a800-4bcd-986d-71c3371d6fce.jpg?v=1588694284","width":960},{"alt":null,"id":7186283561065,"position":2,"preview_image":{"aspect_ratio":0.834,"height":2337,"width":1948,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysmujerblanco_db1d5e5d-ca4b-4c64-a982-2d3cfc73e371.jpg?v=1588694284"},"aspect_ratio":0.834,"height":2337,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysmujerblanco_db1d5e5d-ca4b-4c64-a982-2d3cfc73e371.jpg?v=1588694284","width":1948},{"alt":null,"id":7186283593833,"position":3,"preview_image":{"aspect_ratio":0.834,"height":2337,"width":1948,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysdetalleblanca_b82885b3-a930-4fbd-b0a8-17e6e6291d9d.jpg?v=1588694284"},"aspect_ratio":0.834,"height":2337,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysdetalleblanca_b82885b3-a930-4fbd-b0a8-17e6e6291d9d.jpg?v=1588694284","width":1948},{"alt":null,"id":7186283626601,"position":4,"preview_image":{"aspect_ratio":0.834,"height":2337,"width":1948,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysmujerbackblanco_f3ea58f0-6c64-4bba-8c2c-7da64e0e5644.jpg?v=1588694284"},"aspect_ratio":0.834,"height":2337,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/betterdaysmujerbackblanco_f3ea58f0-6c64-4bba-8c2c-7da64e0e5644.jpg?v=1588694284","width":1948}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cdiv style=\"text-align: left;\"\u003e\n\u003ch5 data-mce-style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_redondo_480x480.jpg?v=1646927481\"\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ch5\u003eBetter Days Will Come.\u003c\/h5\u003e\n\u003cdiv style=\"text-align: left;\"\u003e¡Ya saldrá el sol para todos y vamos a encontrarnos con un mundo mejor y más sano!\u003cbr\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cstrong\u003eBetter Days Will Come\u003c\/strong\u003e está pensada para traerte lo más cómodo y con los materiales más sustentables, para que te quedes en tu casa.\u003c\/p\u003e\n\u003cbr\u003e\u003cbr\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/info_Green_Hug-07.png?v=1592419558\" width=\"867\" height=\"1549\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Tallaje_Mujer_Green_Hug.png?v=1592581725\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":2459151335482,"title":"Playera \"Esperanza En El Incendio\" - Hombre","handle":"esperanza-en-el-incendio","description":"\u003ch5\u003eRevisa la guía de medidas\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_web_Mesa_de_trabajo_1_01eb029e-df1a-4ff7-bd4f-bad27074614f_480x480.jpg?v=1646926419\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5\u003eLoic mide 1.70 y está usando la talla S.\u003c\/h5\u003e\n\u003cbr\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/info_ROPA_Green_Hug.png?v=1592417502\" width=\"598\" height=\"1068\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Incendio.png?779\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2019-06-19T11:06:53-05:00","created_at":"2019-06-19T11:06:53-05:00","vendor":"Green Hug","type":"","tags":[],"price":31000,"price_min":31000,"price_max":31000,"available":true,"price_varies":false,"compare_at_price":39000,"compare_at_price_min":39000,"compare_at_price_max":39000,"compare_at_price_varies":false,"variants":[{"id":23368981184570,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Playera \"Esperanza En El Incendio\" - Hombre - XL","public_title":"XL","options":["XL"],"price":31000,"weight":150,"compare_at_price":39000,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0005.jpg?v=1560980056","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0006.jpg?v=1560980058","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0007.jpg?v=1560980061","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0008.jpg?v=1560980063"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0005.jpg?v=1560980056","options":["Talla"],"media":[{"alt":null,"id":2104334712890,"position":1,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0005.jpg?v=1560980056"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0005.jpg?v=1560980056","width":1500},{"alt":null,"id":2104334811194,"position":2,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0006.jpg?v=1560980058"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0006.jpg?v=1560980058","width":1500},{"alt":null,"id":2104334843962,"position":3,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0007.jpg?v=1560980061"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0007.jpg?v=1560980061","width":1500},{"alt":null,"id":2104334876730,"position":4,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0008.jpg?v=1560980063"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0008.jpg?v=1560980063","width":1500}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5\u003eRevisa la guía de medidas\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_web_Mesa_de_trabajo_1_01eb029e-df1a-4ff7-bd4f-bad27074614f_480x480.jpg?v=1646926419\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5\u003eLoic mide 1.70 y está usando la talla S.\u003c\/h5\u003e\n\u003cbr\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/info_ROPA_Green_Hug.png?v=1592417502\" width=\"598\" height=\"1068\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Incendio.png?779\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4807393247337,"title":"V-Neck Green Moss - Mujer","handle":"v-neck-green-moss-mujer","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:49:09-05:00","created_at":"2020-10-09T12:56:51-05:00","vendor":"Green Hug","type":"Hoodie","tags":["mujer"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32858969473129,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Green Moss - Mujer - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858969505897,"title":"S","option1":"S","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Green Moss - Mujer - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858969538665,"title":"M","option1":"M","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Green Moss - Mujer - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858969571433,"title":"L","option1":"L","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Green Moss - Mujer - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858969604201,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Green Moss - Mujer - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckverdemujerlado.jpg?v=1602266420","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckverdemujerfrente.jpg?v=1602266420","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdemujerdet.png?v=1602266432"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckverdemujerlado.jpg?v=1602266420","options":["Size"],"media":[{"alt":null,"id":8028069396585,"position":1,"preview_image":{"aspect_ratio":0.667,"height":1380,"width":920,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckverdemujerlado.jpg?v=1602266420"},"aspect_ratio":0.667,"height":1380,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckverdemujerlado.jpg?v=1602266420","width":920},{"alt":null,"id":8028069429353,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1445,"width":964,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckverdemujerfrente.jpg?v=1602266420"},"aspect_ratio":0.667,"height":1445,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckverdemujerfrente.jpg?v=1602266420","width":964},{"alt":null,"id":8028070215785,"position":3,"preview_image":{"aspect_ratio":1.059,"height":625,"width":662,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdemujerdet.png?v=1602266432"},"aspect_ratio":1.059,"height":625,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdemujerdet.png?v=1602266432","width":662}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4807394689129,"title":"V-Neck Blue Ocean - Mujer","handle":"v-neck-blue-ocean-mujer","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e. \u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:48:14-05:00","created_at":"2020-10-09T13:01:00-05:00","vendor":"Green Hug","type":"Hoodie","tags":["mujer"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32858973995113,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Blue Ocean - Mujer - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858974027881,"title":"S","option1":"S","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Blue Ocean - Mujer - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858974060649,"title":"M","option1":"M","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Blue Ocean - Mujer - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858974093417,"title":"L","option1":"L","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Blue Ocean - Mujer - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858974126185,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Blue Ocean - Mujer - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulvneckmujerfrente.jpg?v=1602266603","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulvneckmujerlado.jpg?v=1602266603","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulmujerdet.png?v=1602266540"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulvneckmujerfrente.jpg?v=1602266603","options":["Size"],"media":[{"alt":null,"id":8028079030377,"position":1,"preview_image":{"aspect_ratio":0.667,"height":1413,"width":942,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulvneckmujerfrente.jpg?v=1602266603"},"aspect_ratio":0.667,"height":1413,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulvneckmujerfrente.jpg?v=1602266603","width":942},{"alt":null,"id":8028078997609,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1435,"width":957,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulvneckmujerlado.jpg?v=1602266603"},"aspect_ratio":0.667,"height":1435,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulvneckmujerlado.jpg?v=1602266603","width":957},{"alt":null,"id":8028079095913,"position":3,"preview_image":{"aspect_ratio":1.06,"height":633,"width":671,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulmujerdet.png?v=1602266540"},"aspect_ratio":1.06,"height":633,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulmujerdet.png?v=1602266540","width":671}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e. \u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":6374106497193,"title":"Moonstone - Shampoo en Barra","handle":"moonstone-shampoo-en-barra","description":"\u003ch3 style=\"text-align: center;\"\u003e¡El shampoo perfecto para un ambientalista imperfectx!\u003c\/h3\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/MOONSTONE_INFO-14.png?v=1610386306\"\u003e","published_at":"2021-01-15T12:10:54-06:00","created_at":"2021-01-11T11:33:02-06:00","vendor":"Green Hug","type":"EcoCare","tags":["ecocare"],"price":11000,"price_min":11000,"price_max":11000,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":38361086394537,"title":"Default Title","option1":"Default Title","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Moonstone - Shampoo en Barra","public_title":null,"options":["Default Title"],"price":11000,"weight":40,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/ShampooMS_Mesadetrabajo1.jpg?v=1629917289","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4936.jpg?v=1629917289","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4922.jpg?v=1629917289","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4933.jpg?v=1629917289"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/ShampooMS_Mesadetrabajo1.jpg?v=1629917289","options":["Title"],"media":[{"alt":null,"id":25998487716009,"position":1,"preview_image":{"aspect_ratio":0.774,"height":1215,"width":940,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/ShampooMS_Mesadetrabajo1.jpg?v=1629917289"},"aspect_ratio":0.774,"height":1215,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/ShampooMS_Mesadetrabajo1.jpg?v=1629917289","width":940},{"alt":null,"id":17877665349801,"position":2,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4936.jpg?v=1629917289"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4936.jpg?v=1629917289","width":5184},{"alt":null,"id":18057979232425,"position":3,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4922.jpg?v=1629917289"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4922.jpg?v=1629917289","width":5184},{"alt":null,"id":18057982574761,"position":4,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4933.jpg?v=1629917289"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4933.jpg?v=1629917289","width":5184}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch3 style=\"text-align: center;\"\u003e¡El shampoo perfecto para un ambientalista imperfectx!\u003c\/h3\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/MOONSTONE_INFO-14.png?v=1610386306\"\u003e"}
{"id":2459343913018,"title":"Be HumanKIND Kids","handle":"be-humankind-nino","description":"\u003ch5\u003ePlantamos un árbol por cada producto\u003c\/h5\u003e\n\u003cimg height=\"984\" width=\"551\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/info_ROPA_Green_Hug.png?v=1592417502\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/nino.png?767\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2019-06-19T16:49:30-05:00","created_at":"2019-06-19T16:49:30-05:00","vendor":"Green Hug","type":"","tags":["car del valle","kids","niño"],"price":17500,"price_min":17500,"price_max":17500,"available":true,"price_varies":false,"compare_at_price":35000,"compare_at_price_min":35000,"compare_at_price_max":35000,"compare_at_price_varies":false,"variants":[{"id":23369972449338,"title":"5-6","option1":"5-6","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Be HumanKIND Kids - 5-6","public_title":"5-6","options":["5-6"],"price":17500,"weight":150,"compare_at_price":35000,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":23369972514874,"title":"9-10","option1":"9-10","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Be HumanKIND Kids - 9-10","public_title":"9-10","options":["9-10"],"price":17500,"weight":150,"compare_at_price":35000,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":23369972547642,"title":"11-12","option1":"11-12","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Be HumanKIND Kids - 11-12","public_title":"11-12","options":["11-12"],"price":17500,"weight":150,"compare_at_price":35000,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":23369972580410,"title":"13-14","option1":"13-14","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Be HumanKIND Kids - 13-14","public_title":"13-14","options":["13-14"],"price":17500,"weight":150,"compare_at_price":35000,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0054.jpg?v=1560981475","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0055.jpg?v=1560981475","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0028.jpg?v=1560981475","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0029.jpg?v=1560981475","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0030.jpg?v=1560981475"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0054.jpg?v=1560981475","options":["Talla"],"media":[{"alt":null,"id":2104345493562,"position":1,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0054.jpg?v=1560981475"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0054.jpg?v=1560981475","width":1500},{"alt":null,"id":2104347033658,"position":2,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0055.jpg?v=1560981475"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0055.jpg?v=1560981475","width":1500},{"alt":null,"id":2104345559098,"position":3,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0028.jpg?v=1560981475"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0028.jpg?v=1560981475","width":1500},{"alt":null,"id":2104345624634,"position":4,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0029.jpg?v=1560981475"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0029.jpg?v=1560981475","width":1500},{"alt":null,"id":2104345657402,"position":5,"preview_image":{"aspect_ratio":0.667,"height":2250,"width":1500,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0030.jpg?v=1560981475"},"aspect_ratio":0.667,"height":2250,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Junio2019-0030.jpg?v=1560981475","width":1500}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5\u003ePlantamos un árbol por cada producto\u003c\/h5\u003e\n\u003cimg height=\"984\" width=\"551\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/info_ROPA_Green_Hug.png?v=1592417502\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/nino.png?767\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4778231169129,"title":"Hoodie Blue Ocean \"Green Hug\" - Hombre","handle":"hoodie-azul-hombre","description":"\u003ch5 style=\"text-align: center;\"\u003eTallas Unisex. Revisa la Guía de Medidas.\u003cbr\u003e\n\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_hoodie-05_480x480.jpg?v=1646942200\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eJosé mide 1.80 m de altura y está usando la talla L.\u003c\/strong\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Info_hoodies_green_hug-10.png?v=1598117508\"\u003e\n\u003c\/h5\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Tallaje_hoodies_green_hug_2020.png?v=1598116739\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-08-22T12:49:23-05:00","created_at":"2020-08-22T12:49:21-05:00","vendor":"Green Hug","type":"Hoodie","tags":["hombre"],"price":89000,"price_min":89000,"price_max":89000,"available":false,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32744470380649,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Hoodie Blue Ocean \"Green Hug\" - Hombre - XS","public_title":"XS","options":["XS"],"price":89000,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0016.jpg?v=1602462076","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0020.jpg?v=1602462076","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0015.jpg?v=1602462076","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0021.jpg?v=1602462076","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0022.jpg?v=1602462076"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0016.jpg?v=1602462076","options":["Size"],"media":[{"alt":null,"id":8040473854057,"position":1,"preview_image":{"aspect_ratio":0.75,"height":1620,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0016.jpg?v=1602462076"},"aspect_ratio":0.75,"height":1620,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0016.jpg?v=1602462076","width":1215},{"alt":null,"id":8040473886825,"position":2,"preview_image":{"aspect_ratio":0.75,"height":1620,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0020.jpg?v=1602462076"},"aspect_ratio":0.75,"height":1620,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0020.jpg?v=1602462076","width":1215},{"alt":null,"id":8040473821289,"position":3,"preview_image":{"aspect_ratio":0.75,"height":1620,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0015.jpg?v=1602462076"},"aspect_ratio":0.75,"height":1620,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0015.jpg?v=1602462076","width":1215},{"alt":null,"id":7824150691945,"position":4,"preview_image":{"aspect_ratio":1.333,"height":1215,"width":1620,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0021.jpg?v=1602462076"},"aspect_ratio":1.333,"height":1215,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0021.jpg?v=1602462076","width":1620},{"alt":null,"id":7824151052393,"position":5,"preview_image":{"aspect_ratio":1.333,"height":1215,"width":1620,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0022.jpg?v=1602462076"},"aspect_ratio":1.333,"height":1215,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0022.jpg?v=1602462076","width":1620}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eTallas Unisex. Revisa la Guía de Medidas.\u003cbr\u003e\n\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_hoodie-05_480x480.jpg?v=1646942200\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eJosé mide 1.80 m de altura y está usando la talla L.\u003c\/strong\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Info_hoodies_green_hug-10.png?v=1598117508\"\u003e\n\u003c\/h5\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Tallaje_hoodies_green_hug_2020.png?v=1598116739\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4778232741993,"title":"Hoodie Grey Rock Lisa - Hombre","handle":"hoodie-gris-lisa-hombre","description":"\u003cblockquote\u003e\n\u003ch5 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003eTallas Unisex. Revisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_hoodie-05_480x480.jpg?v=1646942200\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e\n\u003cstrong\u003eJosé mide 1.80 m de altura y está usando la talla L\u003c\/strong\u003e.\u003c\/h5\u003e\n\u003c\/blockquote\u003e\n\u003cbr\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Info_hoodies_green_hug-10.png?v=1598117508\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Tallaje_hoodies_green_hug_2020.png?v=1598116739\" style=\"height: 400px;\" data-mce-style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-08-23T10:45:50-05:00","created_at":"2020-08-22T12:55:17-05:00","vendor":"Green Hug","type":"Hoodie","tags":["hombre"],"price":89900,"price_min":89900,"price_max":89900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32744478113897,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Hoodie Grey Rock Lisa - Hombre - XS","public_title":"XS","options":["XS"],"price":89900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32744478146665,"title":"S","option1":"S","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Hoodie Grey Rock Lisa - Hombre - S","public_title":"S","options":["S"],"price":89900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32744478179433,"title":"M","option1":"M","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Hoodie Grey Rock Lisa - Hombre - M","public_title":"M","options":["M"],"price":89900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32744478212201,"title":"L","option1":"L","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Hoodie Grey Rock Lisa - Hombre - L","public_title":"L","options":["L"],"price":89900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32744478244969,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Hoodie Grey Rock Lisa - Hombre - XL","public_title":"XL","options":["XL"],"price":89900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0029.jpg?v=1619021664","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0024.jpg?v=1619021664","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0025.jpg?v=1619021664","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0026.jpg?v=1619021664","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0028.jpg?v=1619021664"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0029.jpg?v=1619021664","options":["Size"],"media":[{"alt":null,"id":23650890547369,"position":1,"preview_image":{"aspect_ratio":0.75,"height":1620,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0029.jpg?v=1619021664"},"aspect_ratio":0.75,"height":1620,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0029.jpg?v=1619021664","width":1215},{"alt":null,"id":23650890383529,"position":2,"preview_image":{"aspect_ratio":1.333,"height":1215,"width":1620,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0024.jpg?v=1619021664"},"aspect_ratio":1.333,"height":1215,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0024.jpg?v=1619021664","width":1620},{"alt":null,"id":23650890416297,"position":3,"preview_image":{"aspect_ratio":0.75,"height":1620,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0025.jpg?v=1619021664"},"aspect_ratio":0.75,"height":1620,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0025.jpg?v=1619021664","width":1215},{"alt":null,"id":23650890449065,"position":4,"preview_image":{"aspect_ratio":0.75,"height":1620,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0026.jpg?v=1619021664"},"aspect_ratio":0.75,"height":1620,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0026.jpg?v=1619021664","width":1215},{"alt":null,"id":23650890514601,"position":5,"preview_image":{"aspect_ratio":0.75,"height":1620,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0028.jpg?v=1619021664"},"aspect_ratio":0.75,"height":1620,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/GreenHug-Agosto2020-0028.jpg?v=1619021664","width":1215}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cblockquote\u003e\n\u003ch5 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003eTallas Unisex. Revisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_hoodie-05_480x480.jpg?v=1646942200\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\" data-mce-style=\"text-align: center;\"\u003e\n\u003cstrong\u003eJosé mide 1.80 m de altura y está usando la talla L\u003c\/strong\u003e.\u003c\/h5\u003e\n\u003c\/blockquote\u003e\n\u003cbr\u003e \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Info_hoodies_green_hug-10.png?v=1598117508\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Tallaje_hoodies_green_hug_2020.png?v=1598116739\" style=\"height: 400px;\" data-mce-style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4807415431273,"title":"V-Neck Green Moss - Hombre","handle":"v-neck-green-moss-hombre","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_web_Mesa_de_trabajo_1_480x480.jpg?v=1646926316\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eDavid mide 1.83m y está usando la talla M \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-02.png?v=1602390619\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:48:39-05:00","created_at":"2020-10-09T13:41:28-05:00","vendor":"Green Hug","type":"playera","tags":["hombre"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32859032289385,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Green Moss - Hombre - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859032322153,"title":"S","option1":"S","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Green Moss - Hombre - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859032354921,"title":"M","option1":"M","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Green Moss - Hombre - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859032387689,"title":"L","option1":"L","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Green Moss - Hombre - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859032420457,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Green Moss - Hombre - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrevneck1.jpg?v=1602268959","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrevneck2.jpg?v=1602268959","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombredetalle.png?v=1602268946"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrevneck1.jpg?v=1602268959","options":["Size"],"media":[{"alt":null,"id":8028220751977,"position":1,"preview_image":{"aspect_ratio":0.666,"height":1508,"width":1005,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrevneck1.jpg?v=1602268959"},"aspect_ratio":0.666,"height":1508,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrevneck1.jpg?v=1602268959","width":1005},{"alt":null,"id":8028220719209,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1501,"width":1001,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrevneck2.jpg?v=1602268959"},"aspect_ratio":0.667,"height":1501,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombrevneck2.jpg?v=1602268959","width":1001},{"alt":null,"id":8028221046889,"position":3,"preview_image":{"aspect_ratio":0.934,"height":623,"width":582,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombredetalle.png?v=1602268946"},"aspect_ratio":0.934,"height":623,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/verdehombredetalle.png?v=1602268946","width":582}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_web_Mesa_de_trabajo_1_480x480.jpg?v=1646926316\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eDavid mide 1.83m y está usando la talla M \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-02.png?v=1602390619\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":6374116393129,"title":"Cepillo de Dientes - 100% Bambú","handle":"cepillo-bambu","description":"\u003ch3 style=\"text-align: center;\"\u003e¡El cepillo perfecto para un ambientalista imperfectx!\u003c\/h3\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/CEPILLO_INFO-14.png?v=1610386293\"\u003e","published_at":"2021-01-15T12:10:02-06:00","created_at":"2021-01-11T11:40:51-06:00","vendor":"Green Hug","type":"EcoCare","tags":["ecocare"],"price":9900,"price_min":9900,"price_max":9900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":38361117917353,"title":"Default Title","option1":"Default Title","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Cepillo de Dientes - 100% Bambú","public_title":null,"options":["Default Title"],"price":9900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/cepillo1.png?v=1611081936","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/cepillo2.png?v=1611081936","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4971.jpg?v=1611081968"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/cepillo1.png?v=1611081936","options":["Title"],"media":[{"alt":null,"id":18057863102633,"position":1,"preview_image":{"aspect_ratio":1.429,"height":850,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/cepillo1.png?v=1611081936"},"aspect_ratio":1.429,"height":850,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/cepillo1.png?v=1611081936","width":1215},{"alt":null,"id":18057915531433,"position":2,"preview_image":{"aspect_ratio":1.429,"height":850,"width":1215,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/cepillo2.png?v=1611081936"},"aspect_ratio":1.429,"height":850,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/cepillo2.png?v=1611081936","width":1215},{"alt":null,"id":18057944957097,"position":3,"preview_image":{"aspect_ratio":1.5,"height":3456,"width":5184,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4971.jpg?v=1611081968"},"aspect_ratio":1.5,"height":3456,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/MG_4971.jpg?v=1611081968","width":5184}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch3 style=\"text-align: center;\"\u003e¡El cepillo perfecto para un ambientalista imperfectx!\u003c\/h3\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/CEPILLO_INFO-14.png?v=1610386293\"\u003e"}
{"id":4807382990953,"title":"V-Neck Grey Rock - Mujer","handle":"v-neck-grey-rock-mujer","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:49:59-05:00","created_at":"2020-10-09T12:40:46-05:00","vendor":"Green Hug","type":"playera","tags":["mujer"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32858912161897,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Grey Rock - Mujer - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858912194665,"title":"S","option1":"S","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Grey Rock - Mujer - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858912227433,"title":"M","option1":"M","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Grey Rock - Mujer - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858912260201,"title":"L","option1":"L","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Grey Rock - Mujer - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858912292969,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Grey Rock - Mujer - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerlado.jpg?v=1602265572","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerfrente.jpg?v=1602265572","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerdetalle.png?v=1602265690"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerlado.jpg?v=1602265572","options":["Size"],"media":[{"alt":null,"id":8027982856297,"position":1,"preview_image":{"aspect_ratio":0.667,"height":1422,"width":948,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerlado.jpg?v=1602265572"},"aspect_ratio":0.667,"height":1422,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerlado.jpg?v=1602265572","width":948},{"alt":null,"id":8027982889065,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1447,"width":965,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerfrente.jpg?v=1602265572"},"aspect_ratio":0.667,"height":1447,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerfrente.jpg?v=1602265572","width":965},{"alt":null,"id":8028005171305,"position":3,"preview_image":{"aspect_ratio":1.088,"height":633,"width":689,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerdetalle.png?v=1602265690"},"aspect_ratio":1.088,"height":633,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckgrismujerdetalle.png?v=1602265690","width":689}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4807392133225,"title":"V-Neck White Snow - Mujer","handle":"v-neck-white-snow-mujer","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:50:54-05:00","created_at":"2020-10-09T12:54:39-05:00","vendor":"Green Hug","type":"Hoodie","tags":["mujer"],"price":39900,"price_min":39900,"price_max":39900,"available":false,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32858965114985,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck White Snow - Mujer - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858965147753,"title":"S","option1":"S","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck White Snow - Mujer - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858965213289,"title":"M","option1":"M","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck White Snow - Mujer - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858965246057,"title":"L","option1":"L","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck White Snow - Mujer - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858965311593,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck White Snow - Mujer - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerfrente.jpg?v=1602266123","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerlado.jpg?v=1602266123","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerdetalle.png?v=1602266146"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerfrente.jpg?v=1602266123","options":["Size"],"media":[{"alt":null,"id":8028043772009,"position":1,"preview_image":{"aspect_ratio":0.667,"height":1424,"width":950,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerfrente.jpg?v=1602266123"},"aspect_ratio":0.667,"height":1424,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerfrente.jpg?v=1602266123","width":950},{"alt":null,"id":8028043739241,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1458,"width":972,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerlado.jpg?v=1602266123"},"aspect_ratio":0.667,"height":1458,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerlado.jpg?v=1602266123","width":972},{"alt":null,"id":8028047048809,"position":3,"preview_image":{"aspect_ratio":1.086,"height":636,"width":691,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerdetalle.png?v=1602266146"},"aspect_ratio":1.086,"height":636,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/vneckblancamujerdetalle.png?v=1602266146","width":691}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_V_480x480.jpg?v=1647015201\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv id=\"modal\" class=\"modal modal__bg\" role=\"dialog\" aria-hidden=\"true\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg style=\"height: 400px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" alt=\"\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg class=\"\" viewbox=\"0 0 24 24\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath d=\"M0 0h24v24h-24z\" fill=\"none\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":4807403765865,"title":"Classic Blue Ocean - Mujer","handle":"classic-blue-ocean-mujer","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_redondo_480x480.jpg?v=1646927481\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla M \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-04.png?v=1602390645\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:42:34-05:00","created_at":"2020-10-09T13:17:04-05:00","vendor":"Green Hug","type":"playera","tags":["mujer"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32858991558761,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Classic Blue Ocean - Mujer - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858991591529,"title":"S","option1":"S","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Classic Blue Ocean - Mujer - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858991624297,"title":"M","option1":"M","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Classic Blue Ocean - Mujer - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858991657065,"title":"L","option1":"L","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Classic Blue Ocean - Mujer - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32858991689833,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Classic Blue Ocean - Mujer - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulclassicmujerlado.jpg?v=1602267573","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulclassicmujerfrente.jpg?v=1602267573","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulmujerdet_a0d88c72-3061-4401-beab-ae7da7ca3acf.png?v=1602267573"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulclassicmujerlado.jpg?v=1602267573","options":["Size"],"media":[{"alt":null,"id":8028140830825,"position":1,"preview_image":{"aspect_ratio":0.667,"height":1467,"width":978,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulclassicmujerlado.jpg?v=1602267573"},"aspect_ratio":0.667,"height":1467,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulclassicmujerlado.jpg?v=1602267573","width":978},{"alt":null,"id":8028140798057,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1422,"width":948,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulclassicmujerfrente.jpg?v=1602267573"},"aspect_ratio":0.667,"height":1422,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulclassicmujerfrente.jpg?v=1602267573","width":948},{"alt":null,"id":8028137029737,"position":3,"preview_image":{"aspect_ratio":1.06,"height":633,"width":671,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulmujerdet_a0d88c72-3061-4401-beab-ae7da7ca3acf.png?v=1602267573"},"aspect_ratio":1.06,"height":633,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/azulmujerdet_a0d88c72-3061-4401-beab-ae7da7ca3acf.png?v=1602267573","width":671}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_redondo_480x480.jpg?v=1646927481\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla M \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-04.png?v=1602390645\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":6565047271593,"title":"Playera \"Coexistir\" - Mujer","handle":"coexistir-mujer","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_redondo_480x480.jpg?v=1646927481\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eMilly mide 1.60m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-04.png?v=1602390645\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2021-03-01T14:01:17-06:00","created_at":"2021-03-01T11:50:35-06:00","vendor":"Green Hug","type":"playera","tags":["mujer"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":39332573773993,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Playera \"Coexistir\" - Mujer - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39332573806761,"title":"S","option1":"S","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Playera \"Coexistir\" - Mujer - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39332573839529,"title":"M","option1":"M","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Playera \"Coexistir\" - Mujer - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39332573872297,"title":"L","option1":"L","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Playera \"Coexistir\" - Mujer - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39332573905065,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"Playera \"Coexistir\" - Mujer - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0006.jpg?v=1619020494","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0007.jpg?v=1619020509","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0008.jpg?v=1619020519","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0009.jpg?v=1619020530","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/coexistirsignificado_de6ec663-4313-47c9-9fb0-5f284680fcd6.png?v=1619020551"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0006.jpg?v=1619020494","options":["Size"],"media":[{"alt":"Modelo usando la playera de frente, se ve la playera gris de manga corta, cuello redondo, y el diseño \"coexistir\" a color en el centro.","id":20676138401961,"position":1,"preview_image":{"aspect_ratio":0.667,"height":1326,"width":884,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0006.jpg?v=1619020494"},"aspect_ratio":0.667,"height":1326,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0006.jpg?v=1619020494","width":884},{"alt":"Modelo usando la playera en un ángulo 45º","id":20676138434729,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1542,"width":1028,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0007.jpg?v=1619020509"},"aspect_ratio":0.667,"height":1542,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0007.jpg?v=1619020509","width":1028},{"alt":"la espalda de la playera: lisa, gris.","id":20676138467497,"position":3,"preview_image":{"aspect_ratio":0.667,"height":1357,"width":905,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0008.jpg?v=1619020519"},"aspect_ratio":0.667,"height":1357,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0008.jpg?v=1619020519","width":905},{"alt":"Se muestra el diseño \"coexistir\": una ilustración a color donde se aprecia un árbol de sauce, varios animales como el jaguar, la vaca, un perro y aves, y un hombre con barba al centro","id":20676138500265,"position":4,"preview_image":{"aspect_ratio":1.499,"height":942,"width":1412,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0009.jpg?v=1619020530"},"aspect_ratio":1.499,"height":942,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/Greenhug-Febrero-2021-0009.jpg?v=1619020530","width":1412},{"alt":"\"¿Por qué la tierra sería más de nosotros que de cualquier otra especie? ¿Por qué nuestra vida valdría más que la de cualquier otro animal, insecto o árbol? Si, al final, todos dependemos de todos y las diferentes especies de la tierra, menos de nosotros que nosotros de ellos. Arrasar o coexistir será la gran diferencia de si la tierra lidiará con nosotros como un virus, o nos mantendrá como parte de ella.\" - Roy González, autor de Coexistir","id":20759744970921,"position":5,"preview_image":{"aspect_ratio":0.999,"height":1494,"width":1493,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/coexistirsignificado_de6ec663-4313-47c9-9fb0-5f284680fcd6.png?v=1619020551"},"aspect_ratio":0.999,"height":1494,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/coexistirsignificado_de6ec663-4313-47c9-9fb0-5f284680fcd6.png?v=1619020551","width":1493}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Guia_tallas_Mujer_cuello_redondo_480x480.jpg?v=1646927481\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eMilly mide 1.60m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-04.png?v=1602390645\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}
{"id":7708005073065,"title":"Creció un jardín en mi - black - Regular fit","handle":"crecio-un-jardin-en-mi-black-regular-fit","description":"\u003ch5\u003e8M\u003c\/h5\u003e\n\u003cp\u003eEste #8M queremos acompañarte en tu lucha. Es por eso que nos unimos una vez más con Regina Blandón y Eréndira Derbez, para apoyarte a ti y a organizaciones que luchan por la igualdad.\u003c\/p\u003e\n\u003cp\u003eCon tu compra apoyamos a Refugio Casa Frida.\u003c\/p\u003e\n\u003cp\u003eAdemás por cada prenda plantamos un árbol.\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Recurso9_480x480.png?v=1677089633\" alt=\"\"\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003ch5 data-mce-style=\"text-align: center;\"\u003eRevisa la Guía de Medidas\u003c\/h5\u003e\n\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eKarla mide 1,64 m y está usando talla M\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guiastallesycosturasweb-02_480x480.png?v=1677098014\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\u003c\/h5\u003e","published_at":"2023-02-23T22:35:26-06:00","created_at":"2023-02-22T14:44:30-06:00","vendor":"Green Hug","type":"playera","tags":["mujer","Nuevas Colecciones"],"price":49900,"price_min":49900,"price_max":49900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":42930282660009,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Creció un jardín en mi - black - Regular fit - XS","public_title":"XS","options":["XS"],"price":49900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":42930282692777,"title":"S","option1":"S","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Creció un jardín en mi - black - Regular fit - S","public_title":"S","options":["S"],"price":49900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":42930282725545,"title":"M","option1":"M","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Creció un jardín en mi - black - Regular fit - M","public_title":"M","options":["M"],"price":49900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":42930282758313,"title":"L","option1":"L","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Creció un jardín en mi - black - Regular fit - L","public_title":"L","options":["L"],"price":49900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":42930282791081,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Creció un jardín en mi - black - Regular fit - XL","public_title":"XL","options":["XL"],"price":49900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/gh2023-08905.jpg?v=1677273975","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/gh2023-08919.jpg?v=1677273974"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/gh2023-08905.jpg?v=1677273975","options":["Size"],"media":[{"alt":null,"id":30033640128681,"position":1,"preview_image":{"aspect_ratio":0.666,"height":4919,"width":3278,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/gh2023-08905.jpg?v=1677273975"},"aspect_ratio":0.666,"height":4919,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/gh2023-08905.jpg?v=1677273975","width":3278},{"alt":null,"id":30033640161449,"position":2,"preview_image":{"aspect_ratio":0.666,"height":4919,"width":3278,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/gh2023-08919.jpg?v=1677273974"},"aspect_ratio":0.666,"height":4919,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/gh2023-08919.jpg?v=1677273974","width":3278}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5\u003e8M\u003c\/h5\u003e\n\u003cp\u003eEste #8M queremos acompañarte en tu lucha. Es por eso que nos unimos una vez más con Regina Blandón y Eréndira Derbez, para apoyarte a ti y a organizaciones que luchan por la igualdad.\u003c\/p\u003e\n\u003cp\u003eCon tu compra apoyamos a Refugio Casa Frida.\u003c\/p\u003e\n\u003cp\u003eAdemás por cada prenda plantamos un árbol.\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/Recurso9_480x480.png?v=1677089633\" alt=\"\"\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003ch5 data-mce-style=\"text-align: center;\"\u003eRevisa la Guía de Medidas\u003c\/h5\u003e\n\u003cp\u003e\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eKarla mide 1,64 m y está usando talla M\u003c\/span\u003e\u003c\/p\u003e\n\u003cp\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guiastallesycosturasweb-02_480x480.png?v=1677098014\" alt=\"\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\u003c\/h5\u003e"}
{"id":4807418806377,"title":"V-Neck Grey Rock - Hombre","handle":"v-neck-grey-rock-hombre","description":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_web_Mesa_de_trabajo_1_480x480.jpg?v=1646926316\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e","published_at":"2020-10-11T08:49:34-05:00","created_at":"2020-10-09T13:45:36-05:00","vendor":"Green Hug","type":"playera","tags":["hombre"],"price":39900,"price_min":39900,"price_max":39900,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":32859062796393,"title":"XS","option1":"XS","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Grey Rock - Hombre - XS","public_title":"XS","options":["XS"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859062829161,"title":"S","option1":"S","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Grey Rock - Hombre - S","public_title":"S","options":["S"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859062861929,"title":"M","option1":"M","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":false,"name":"V-Neck Grey Rock - Hombre - M","public_title":"M","options":["M"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859062894697,"title":"L","option1":"L","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Grey Rock - Hombre - L","public_title":"L","options":["L"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":32859062927465,"title":"XL","option1":"XL","option2":null,"option3":null,"sku":"","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"V-Neck Grey Rock - Hombre - XL","public_title":"XL","options":["XL"],"price":39900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombrevneck1.jpg?v=1602269183","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombrevneck2.jpg?v=1602269183","\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombredetalle_dc351ffa-f4b8-4fb4-b4cf-00b3c2e22c64.png?v=1602269180"],"featured_image":"\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombrevneck1.jpg?v=1602269183","options":["Size"],"media":[{"alt":null,"id":8028240052329,"position":1,"preview_image":{"aspect_ratio":0.666,"height":1454,"width":969,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombrevneck1.jpg?v=1602269183"},"aspect_ratio":0.666,"height":1454,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombrevneck1.jpg?v=1602269183","width":969},{"alt":null,"id":8028240019561,"position":2,"preview_image":{"aspect_ratio":0.667,"height":1440,"width":960,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombrevneck2.jpg?v=1602269183"},"aspect_ratio":0.667,"height":1440,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombrevneck2.jpg?v=1602269183","width":960},{"alt":null,"id":8028240543849,"position":3,"preview_image":{"aspect_ratio":0.963,"height":622,"width":599,"src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombredetalle_dc351ffa-f4b8-4fb4-b4cf-00b3c2e22c64.png?v=1602269180"},"aspect_ratio":0.963,"height":622,"media_type":"image","src":"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/products\/grishombredetalle_dc351ffa-f4b8-4fb4-b4cf-00b3c2e22c64.png?v=1602269180","width":599}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003ch5 style=\"text-align: center;\"\u003eRevisa la Guía de Medidas.\u003c\/h5\u003e\n\u003cp\u003e\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/guias_talles_y_costuras_web_Mesa_de_trabajo_1_480x480.jpg?v=1646926316\"\u003e\u003c\/p\u003e\n\u003ch5 style=\"text-align: center;\"\u003e\n\u003cstrong\u003eFeris mide 1.76m y está usando la talla S \u003c\/strong\u003e.\u003c\/h5\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/files\/infoeveryday.png?v=1614361514\"\u003e\n\u003cdiv aria-hidden=\"true\" role=\"dialog\" class=\"modal modal__bg\" id=\"modal\"\u003e\n\u003cdiv class=\"modal__dialog\"\u003e\n\u003cdiv class=\"modal__content\"\u003e\n\u003cimg alt=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0012\/7287\/3018\/t\/4\/assets\/Everyday_Guia_de_Medidas-01.png?v=1602390606\" style=\"height: 400px;\"\u003e \u003ca class=\"modal__close demo-close\"\u003e \u003csvg viewbox=\"0 0 24 24\" class=\"\"\u003e \u003cpath d=\"M19 6.41l-1.41-1.41-5.59 5.59-5.59-5.59-1.41 1.41 5.59 5.59-5.59 5.59 1.41 1.41 5.59-5.59 5.59 5.59 1.41-1.41-5.59-5.59z\"\u003e\u003c\/path\u003e \u003cpath fill=\"none\" d=\"M0 0h24v24h-24z\"\u003e\u003c\/path\u003e \u003c\/svg\u003e \u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cstyle media=\"screen\"\u003e\u003c!--\n@media (max-width: 590px) {\n .modal__content img{\n height: 180px !important;\n}\n }\n\n.modal {\n will-change: visibility, opacity;\n display: flex;\n align-items: center;\n justify-content: center;\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n overflow-y: auto;\n overflow-x: hidden;\n z-index: 1000;\n visibility: hidden;\n opacity: 0;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal--active {\n visibility: visible;\n opacity: 1;\n}\n.modal--align-top {\n align-items: flex-start;\n}\n.modal__bg {\n background: transparent;\n}\n.modal__dialog {\n max-width: 800px;\n padding: 1.2rem;\n text-align: center !important;\n}\n.modal__content {\n will-change: transform, opacity;\n position: relative;\n padding: 2.4rem !important;\n background: white;\n background-clip: padding-box;\n box-shadow: 0 12px 15px 0 rgba(0,0,0,0.25);\n opacity: 0;\n transition: all 0.25s cubic-bezier(0.23, 1, 0.32, 1);\ntext-align: center !important;\n}\n.modal__content--active {\n opacity: 1;\n}\n.modal-text{\nborder: 1px solid red;\n}\n.modal__close {\n z-index: 1100;\n cursor: pointer;\n}\n.modal__trigger {\n position: relative;\n display: inline-block;\n margin: 1 auto;\n padding: 1.2rem 2.4rem;\n color: white;\n background-color: #a9bb18;\n line-height: 1;\n cursor: pointer;\n box-shadow: 0 2px 5px 0 rgba(0,0,0,0.26);\n -webkit-tap-highlight-color: rgba(0,0,0,0);\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n border-radius:25px;\n position: relative; left: 50% !important;\ntransform: translateX(-50%) !important;\n}\n.modal__trigger p{\npadding-top:20px;\n}\n\n.modal__trigger--active {\n z-index: 10;\n}\n\n#modal__temp {\n will-change: transform, opacity;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background: white;\n -webkit-transform: none;\n transform: none;\n opacity: 1;\n transition: opacity 0.1s ease-out, -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n transition: opacity 0.1s ease-out, transform 0.5s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n\n.demo-btns header {\n padding: 7vh 10vw;\n background: #ffebee;\n display: flex;\n align-items: center;\n}\n.demo-btns header h1 {\n margin: 0;\n color: rgba(0,0,0,0.54);\n font-weight: 300;\n}\n.demo-btns .info {\n background: #f44336;\n padding: 3vh 10vw;\n height: 70vh;\n display: flex;\n align-items: center;\n justify-content: center;\n flex-flow: column wrap;\n}\n@media (max-width: 700px) {\n .modal__content br{\n display: none !important;\n}\n\n}\n.demo-close {\n position: absolute;\n top: 0;\n right: 0;\n margin: 1.2rem;\n padding: 0.6rem;\n background: rgba(0,0,0,0.3);\n border-radius: 50%;\n transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);\n}\n.demo-close svg {\n width: 24px;\n fill: #fff;\n pointer-events: none;\n vertical-align: top;\n}\n.demo-close:hover {\n background: rgba(0,0,0,0.6);\n}\n--\u003e\u003c\/style\u003e\n\u003cscript type=\"text\/javascript\"\u003e\/\/ \u003c![CDATA[\nvar Modal = (function() {\n\n var trigger = $qsa('.modal__trigger'); \/\/ what you click to activate the modal\n var modals = $qsa('.modal'); \/\/ the entire modal (takes up entire window)\n var modalsbg = $qsa('.modal__bg'); \/\/ the entire modal (takes up entire window)\n var content = $qsa('.modal__content'); \/\/ the inner content of the modal\n var closers = $qsa('.modal__close'); \/\/ an element used to close the modal\n var w = window;\n var isOpen = false;\n var contentDelay = 400; \/\/ duration after you click the button and wait for the content to show\n var len = trigger.length;\n\n \/\/ make it easier for yourself by not having to type as much to select an element\n function $qsa(el) {\n return document.querySelectorAll(el);\n }\n\n var getId = function(event) {\n\n event.preventDefault();\n var self = this;\n \/\/ get the value of the data-modal attribute from the button\n var modalId = self.dataset.modal;\n var len = modalId.length;\n \/\/ remove the '#' from the string\n var modalIdTrimmed = modalId.substring(1, len);\n \/\/ select the modal we want to activate\n var modal = document.getElementById(modalIdTrimmed);\n \/\/ execute function that creates the temporary expanding div\n makeDiv(self, modal);\n };\n\n var makeDiv = function(self, modal) {\n\n var fakediv = document.getElementById('modal__temp');\n\n \/**\n * if there isn't a 'fakediv', create one and append it to the button that was\n * clicked. after that execute the function 'moveTrig' which handles the animations.\n *\/\n\n if (fakediv === null) {\n var div = document.createElement('div');\n div.id = 'modal__temp';\n self.appendChild(div);\n moveTrig(self, modal, div);\n }\n };\n\n var moveTrig = function(trig, modal, div) {\n var trigProps = trig.getBoundingClientRect();\n var m = modal;\n var mProps = m.querySelector('.modal__content').getBoundingClientRect();\n var transX, transY, scaleX, scaleY;\n var xc = w.innerWidth \/ 2;\n var yc = w.innerHeight \/ 2;\n\n \/\/ this class increases z-index value so the button goes overtop the other buttons\n trig.classList.add('modal__trigger--active');\n\n \/\/ these values are used for scale the temporary div to the same size as the modal\n scaleX = mProps.width \/ trigProps.width;\n scaleY = mProps.height \/ trigProps.height;\n\n scaleX = scaleX.toFixed(3); \/\/ round to 3 decimal places\n scaleY = scaleY.toFixed(3);\n\n\n \/\/ these values are used to move the button to the center of the window\n transX = Math.round(xc - trigProps.left - trigProps.width \/ 2);\n transY = Math.round(yc - trigProps.top - trigProps.height \/ 2);\n\n \/\/ if the modal is aligned to the top then move the button to the center-y of the modal instead of the window\n if (m.classList.contains('modal--align-top')) {\n transY = Math.round(mProps.height \/ 2 + mProps.top - trigProps.top - trigProps.height \/ 2);\n }\n\n\n \/\/ translate button to center of screen\n trig.style.transform = 'translate(' + transX + 'px, ' + transY + 'px)';\n trig.style.webkitTransform = 'translate(' + transX + 'px, ' + transY + 'px)';\n \/\/ expand temporary div to the same size as the modal\n div.style.transform = 'scale(' + scaleX + ',' + scaleY + ')';\n div.style.webkitTransform = 'scale(' + scaleX + ',' + scaleY + ')';\n\n\n window.setTimeout(function() {\n window.requestAnimationFrame(function() {\n open(m, div);\n });\n }, contentDelay);\n\n };\n\n var open = function(m, div) {\n\n if (!isOpen) {\n \/\/ select the content inside the modal\n var content = m.querySelector('.modal__content');\n \/\/ reveal the modal\n m.classList.add('modal--active');\n \/\/ reveal the modal content\n content.classList.add('modal__content--active');\n\n \/**\n * when the modal content is finished transitioning, fadeout the temporary\n * expanding div so when the window resizes it isn't visible ( it doesn't\n * move with the window).\n *\/\n\n content.addEventListener('transitionend', hideDiv, false);\n\n isOpen = true;\n }\n\n function hideDiv() {\n \/\/ fadeout div so that it can't be seen when the window is resized\n div.style.opacity = '0';\n content.removeEventListener('transitionend', hideDiv, false);\n }\n };\n\n var close = function(event) {\n\n event.preventDefault();\n event.stopImmediatePropagation();\n\n var target = event.target;\n var div = document.getElementById('modal__temp');\n\n \/**\n * make sure the modal__bg or modal__close was clicked, we don't want to be able to click\n * inside the modal and have it close.\n *\/\n\n if (isOpen \u0026\u0026 target.classList.contains('modal__bg') || target.classList.contains('modal__close')) {\n\n \/\/ make the hidden div visible again and remove the transforms so it scales back to its original size\n div.style.opacity = '1';\n div.removeAttribute('style');\n\n \/**\n * iterate through the modals and modal contents and triggers to remove their active classes.\n * remove the inline css from the trigger to move it back into its original position.\n *\/\n\n for (var i = 0; i \u003c len; i++) {\n modals[i].classList.remove('modal--active');\n content[i].classList.remove('modal__content--active');\n trigger[i].style.transform = 'none';\n trigger[i].style.webkitTransform = 'none';\n trigger[i].classList.remove('modal__trigger--active');\n }\n\n \/\/ when the temporary div is opacity:1 again, we want to remove it from the dom\n div.addEventListener('transitionend', removeDiv, false);\n\n isOpen = false;\n\n }\n\n function removeDiv() {\n setTimeout(function() {\n window.requestAnimationFrame(function() {\n \/\/ remove the temp div from the dom with a slight delay so the animation looks good\n div.remove();\n });\n }, contentDelay - 50);\n }\n\n };\n\n var bindActions = function() {\n for (var i = 0; i \u003c len; i++) {\n trigger[i].addEventListener('click', getId, false);\n closers[i].addEventListener('click', close, false);\n modalsbg[i].addEventListener('click', close, false);\n }\n };\n\n var init = function() {\n bindActions();\n };\n\n return {\n init: init\n };\n\n }());\n\n Modal.init();\n\/\/ ]]\u003e\u003c\/script\u003e\n\u003cstyle\u003e\u003c!--\n.desc {\n border: 1px solid #e8e5e2;\n border-radius: 10px;\n max-width: 400px;\n text-align:center;\n padding: 10px;\n display: block;\n margin: 0 auto;\n }\n .desc img{\n height:100px;\n }\n--\u003e\u003c\/style\u003e"}