PageSourceSearch

https://shop.wunschgutschein.at/products/motiv-wunscherfueller

html wunschgutschein.at collected 2026-09-28 06:51:04 UTC 464,006 bytes, 5,301 lines download raw bytes

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16<!doctype html>
17<html class="no-js" lang="de">
18  <head>
19<script src="https://consent.cookiefirst.com/sites/shop.wunschgutschein.at-544a96cb-9f71-4984-a381-212b5c9b94c4/consent.js"></script>
19
20  <!-- CookieFirst Shopify privacy API -->
21<script src="https://consent.cookiefirst.com/sh-customer-privacy.js" defer></script>
21    
22<!-- TDUID → UTM + Cart Attribut -->
23<script>
24(function() {
25  var params = new URLSearchParams(window.location.search);
26  var tduid = params.get('tduid');
27  if (tduid) {
28    sessionStorage.setItem('tduid', tduid);
29  }
30  
31  var storedTduid = sessionStorage.getItem('tduid');
32  
33  if (storedTduid && !params.get('utm_source')) {
34    params.set('utm_source', 'tradedoubler');
35    params.set('utm_medium', 'affiliate');
36    window.history.replaceState({}, '', window.location.pathname + '?' + params.toString());
37  }
38  
39  if (storedTduid) {
40    fetch('/cart/update.js', {
41      method: 'POST',
42      headers: { 'Content-Type': 'application/json' },
43      body: JSON.stringify({
44        attributes: { 'tduid': storedTduid }
45      })
46    });
47  } else {
48    // Kein tduid in dieser Session → Cart Attribut aktiv leeren
49    fetch('/cart/update.js', {
50      method: 'POST',
51      headers: { 'Content-Type': 'application/json' },
52      body: JSON.stringify({
53        attributes: { 'tduid': '' }
54      })
55    });
56  }
57})();
58</script>
58    
59<!-- Start of Shoplift scripts -->
60<!-- 2026-05-07T22:16:47.7871234Z -->
61<style>.shoplift-hide { opacity: 0 !important; }</style>
62<style id="sl-preview-bar-hide">#preview-bar-iframe, #PBarNextFrameWrapper { display: none !important; }</style>
63<script type="text/javascript">(function(rootPath, template, themeRole, themeId, isThemePreview){ /* Generated on 2026-09-28T06:15:01.4342043Z */(function(){"use strict";var te=document.createElement("style");te.textContent=`#shoplift-preview-control{position:fixed;max-width:332px;height:56px;background-color:#141414;z-index:9999;bottom:20px;display:flex;border-radius:8px;box-shadow:13px 22px 7px #0000,9px 14px 7px #00000003,5px 8px 6px #0000000d,2px 4px 4px #00000017,1px 1px 2px #0000001a,0 0 #0000001a;align-items:center;margin:0 auto;left:16px;right:16px;opacity:0;transform:translateY(20px);visibility:hidden;transition:opacity .4s ease-in-out,transform .4s ease-in-out,visibility 0s .4s}#shoplift-preview-control.visible{opacity:1;transform:translateY(0);visibility:visible;transition:opacity .4s ease-in-out,transform .4s ease-in-out,visibility 0s 0s}#shoplift-preview-control *{font-family:Inter,sans-serif;color:#fff;box-sizing:border-box;font-size:16px}#shoplift-preview-variant-title{font-weight:400;line-height:140%;font-size:16px;text-align:start;letter-spacing:-.16px;flex-grow:1;text-wrap:nowrap;overflow:hidden;text-overflow:ellipsis}#shoplift-preview-variant-selector{position:relative;display:block;padding:6px 0;height:100%;min-width:0;flex:1 1 auto}#shoplift-preview-variant-menu-trigger{border:none;cursor:pointer;width:100%;background-color:transparent;padding:0 16px;border-left:1px solid #333;border-right:1px solid #333;height:100%;display:flex;align-items:center;justify-content:start;gap:8px}#shoplift-preview-variant-selector .menu-variant-label{width:24px;height:24px;border-radius:50%;padding:6px;display:flex;justify-content:center;align-items:center;font-size:12px;font-style:normal;font-weight:600;line-height:100%;letter-spacing:-.12px;flex-shrink:0}#shoplift-preview-variant-selector .preview-variant-menu{position:absolute;bottom:110%;transform:translate3d(0,20px,0);visibility:hidden;pointer-events:none;opacity:0;cursor:pointer;background-color:#141414;border:1px solid #141414;border-radius:6px;width:100%;max-height:156px;overflow-y:auto;box-shadow:0 8px 16px #0003;z-index:1;transition:opacity .3s ease-in-out,transform .3s ease-in-out,visibility 0s .3s}#shoplift-preview-variant-selector .preview-variant-menu.preview-variant-menu__visible{visibility:visible;pointer-events:auto;opacity:100;transform:translateZ(0);transition:opacity .3s ease-in-out,transform .3s ease-in-out,visibility 0s 0s}@media screen and (max-width:400px){#shoplift-preview-variant-selector .preview-variant-menu{position:fixed;left:0;right:0;width:auto;bottom:110%}}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item{padding:12px 16px;display:flex;overflow:hidden}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item .menu-variant-label{margin-right:6px}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item span{overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;white-space:nowrap;color:#f6f6f6;font-size:14px;font-style:normal;font-weight:500}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:hover{background-color:#545454}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:last-of-type{border-bottom-left-radius:6px;border-bottom-right-radius:6px}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:first-of-type{border-top-left-radius:6px;border-top-right-radius:6px}#shoplift-preview-control div:has(#shoplift-exit-preview-button){padding:0 16px}#shoplift-exit-preview-button{padding:6px 8px;font-weight:500;line-height:75%;border-radius:4px;background-color:transparent;border:none;text-decoration:none}#shoplift-exit-preview-button:hover{cursor:pointer;background-color:#333}#shoplift-preview-subscription-warning{position:relative;display:flex;align-items:center;gap:6px;padding:6px 10px;margin:0 4px;border-left:1px solid #333;cursor:help;outline:none}#shoplift-preview-subscription-warning__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background-color:#f59e0b;color:#141414!important;font-weight:700;font-size:12px!important;line-height:1;flex-shrink:0}#shoplift-preview-subscription-warning__label{font-size:13px!important;font-weight:500;color:#fbbf24!important;text-wrap:nowrap;white-space:nowrap}#shoplift-preview-subscription-warning__tooltip{position:absolute;bottom:calc(100% + 8px);right:0;max-width:320px;width:max-content;padding:10px 12px;border-radius:6px;background-color:#1f1f1f;color:#fff!important;font-size:12px!important;line-height:1.4!important;box-shadow:0 8px 16px #0000004d;z-index:10000;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility 0s .2s;pointer-events:none}#shoplift-preview-subscription-warning__tooltip.shoplift-preview-subscription-warning__tooltip--visible{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility 0s 0s}#shoplift-preview-subscription-warning:focus-visible{box-shadow:inset 0 0 0 2px #f59e0b;border-radius:4px}#shoplift-preview-control:has(#shoplift-preview-subscription-warning){max-width:480px}/*$vite$:1*/`,document.head.appendChild(te);var fe=" daum[ /]| deusu/|(?:^|[^g])news(?!sapphire)|(?<! channel/|google/)google(?!(?:wv|app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!cam)scan|(?<!lib)http|24x
637|;\\s\\w+;$|@[a-z][\\w-]+\\.|\\(\\)|\\.com\\b|\\b\\w+/1\\.0;|\\bbw/|\\bdlc\\b|\\bort/|\\bperl\\b|\\btime/|\\||^[<\\(;]|^[\\w \\.\\-\\(?:\\):%]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[\\w\\-]+/[\\w]+$|^[^ ]{50,}$|^\\d+\\b|^\\w*search\\b|^\\w+/[\\w\\(\\)]*$|^\\w+/\\d\\.\\d\\s\\([\\w@]+\\)$|^active|^ad muncher|^amaya|^apache/|^avsdevicesdk/|^azure|^biglotron|^blackbox exporter|^bot|^clamav[ /]|^claude-code/|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\d|^downcast/|^duckduckgo|^email|^exodusmovement|^facebook|^getright/|^gozilla/|^hobbit|^hotzonu|^hwcdn/|^igetter/|^jeode/|^jetty/|^jigsaw|^microsoft bits|^movabletype|^mozilla/\\d\\.\\d\\s[\\w\\.-]+$|^mozilla/\\d\\.\\d\\s\\((?:compatible;)?(?:\\s?[\\w\\d-.]+\\/\\d+\\.\\d+)?\\)$|^navermailapp|^netsurf|^offline|^openai/|^owler|^php|^postman|^ps_daily/|^python|^rank|^read|^reed|^remove\\.bg/|^rest|^rss|^snapchat|^sora |^space bison|^stape/|^svn|^swcd |^taringa|^thumbor/|^track|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\d|^zoom marketplace/|abuse|advisor|agent\\b|analyzer|archive|ask jeeves/teoma|attracta|audit|bluecoat drtr|browsex|burpcollaborator|capture|catch|check\\b|checker|chrome-lighthouse|chromeframe|classifier|cloudflare|collapsify\\b|convertify|cookiehubverify/|crawl|cursor/|cypress/|dareboost|datanyze|dejaclick|detect|discovery|dmbrowser|download|exaleadcloudview|feed|firephp|foregenix|functionize|grab|hardenize\\b|headless|hotjar|httrack|hubspot marketing grader|ibisbrowser|infrawatch|insight|inspect|iplabel|java(?!;)|library|linkcheck|linktiger|mail\\.ru/|manager|manus-user/|marketgoo/|measure|monitor\\b|neustar wpm|node\\b|nutch|offbyone|openvas|optimize|pageburst|pagespeed|parser|phantomjs|pingdom|playwright|powermarks|preview|productfinder|prospectingstudio|proxy|ptst[ /]\\d|radar|readable/|retriever|rexx;|rigor|rss\\b|scrape|securityheaders|selenium|server|silktide|sindup/|sogou|sparkler/|speedcurve|spider|splash|statuscake|supercleaner|synapse|synthetic|testlocally|tools|torrent|transcoder|url|validator|virtuoso|wappalyzer|watchtowr|webglance|webkit2png|whatcms/|xtate/",ge=/bot|crawl|http|lighthouse|scan|search|spider/i,z;function me(){if(z instanceof RegExp)return z;try{z=new RegExp(fe,"i")}catch{z=ge}return z}var ye=a=>typeof a=="string"&&a!=="";function ve(a){return ye(a)&&me().test(a)}var we=ve;class X{timestamp;constructor(){this.timestamp=new Date}}class be extends X{type;testId;hypothesisId;constructor(e,t,i){super(),this.type=3,this.testId=e,this.hypothesisId=t,this.timestamp=i}}class Se extends X{type;path;constructor(e){super(),this.type=4,this.path=e}}class Ce extends X{type;cart;constructor(e){super(),this.type=5,this.cart=e}}class ie extends Error{isBot;constructor(){super(),this.isBot=!0}}function Te(a,e,t){for(const i of e.selectors){const s=a.querySelectorAll(i.cssSelector);for(let r=0;r<s.length;r++)t(e.testId,e.hypothesisId)}re(a,e,(i,s,r,o,n)=>n(s,r),t)}function U(a,e,t){for(const i of e.selectors)ne(a,e.testId,e.hypothesisId,i,t??(()=>{}));re(a,e,ne,t??(()=>{}))}function se(a){return a.urlPatterns.reduce((e,t)=>{switch(t.operator){case"contains":return e+`.*${t}.*`;case"endsWith":return e+`.*${t}`;case"startsWith":return e+`${t}.*`}},"")}function re(a,e,t,i){new MutationObserver(()=>{for(const r of e.selectors)t(a,e.testId,e.hypothesisId,r,i)}).observe(a.documentElement,{childList:!0,subtree:!0})}function ne(a,e,t,i,s){const r=a.querySelectorAll(i.cssSelector);for(let o=0;o<r.length;o++){let n=r.item(o);if(n instanceof HTMLElement&&n.dataset.shoplift!==""){n.dataset.shoplift="";for(const l of i.actions.sort(Re))n=Ie(a,i.cssSelector,n,l)}}return r.length>0&&s?(s(e,t),!0):!1}function Ie(a,e,t,i){switch(i.type){case"innerHtml":t.innerHTML=i.value;break;case"attribute":Pe(t,i.scope,i.value);break;case"css":Ae(a,e,i.value);break;case"js":ke(a,t,i);break;case"copy":return Ee(t);case"remove":xe(t);break;case"move":_e(t,parseInt(i.value));break}return t}function Pe(a,e,t){a.setAttribute(e,t)}function Ae(a,e,t){const i=a.createElement("style");i.innerHTML=`${e} { ${t} }`,a.getElementsByTagName("head")[0]?.appendChild(i)}function ke(a,e,t){Function("document","element",`"use strict"; ${t.value}`)(a,e)}function Ee(a){const e=a.cloneNode(!0);if(!a.parentNode)throw"Can't copy node outside of DOM";return a.parentNode.insertBefore(e,a.nextSibling),e}function xe(a){a.remove()}function _e(a,e){if(e===0)return;const t=Array.prototype.slice.call(a.parentElement.children).indexOf(a),i=Math.min(Math.max(t+e,0),a.parentElement.children.length-1);a.parentElement.children.item(i).insertAdjacentElement(e>0?"afterend":"beforebegin",a)}function Re(a,e){return oe(a)-oe(e)}function oe(a){return a.type==="copy"||a.type==="remove"?0:1}
63const M={Template:0,UrlRedirect:2,Script:3,Price:5},De="data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.96001%207.90004C9.86501%207.90004%209.77001%207.86504%209.69501%207.79004L6.43501%204.53004C6.19501%204.29004%205.80501%204.29004%205.56501%204.53004L2.30501%207.79004C2.16001%207.93504%201.92001%207.93504%201.77501%207.79004C1.63001%207.64504%201.63001%207.40504%201.77501%207.26004L5.03501%204.00004C5.56501%203.47004%206.43001%203.47004%206.96501%204.00004L10.225%207.26004C10.37%207.40504%2010.37%207.64504%2010.225%207.79004C10.15%207.86004%2010.055%207.90004%209.96001%207.90004Z'%20fill='white'/%3e%3c/svg%3e",Ve="data:image/svg+xml,%3csvg%20width='14'%20height='24'%20viewBox='0%200%2014%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12.3976%2014.5255C12.2833%2013.8788%2012.0498%2013.3024%2011.6952%2012.7961C11.3416%2012.2898%2010.9209%2011.8353%2010.4353%2011.4317C9.94868%2011.0291%209.43546%2010.6488%208.89565%2010.292C8.48487%2010.049%208.09577%209.78565%207.72637%209.50402C7.35697%209.2224%207.08016%208.89503%206.89694%208.51987C6.71273%208.14471%206.67826%207.69533%206.79055%207.1697C6.86345%206.83216%206.97476%206.54647%207.12351%206.31162C7.27324%206.07778%207.47124%205.89986%207.7175%205.77684C7.96377%205.65483%208.21989%205.59383%208.48389%205.59383C8.88087%205.59383%209.17639%205.7016%209.3734%205.91714C9.56943%206.13268%209.68271%206.42345%209.71424%206.78946C9.74576%207.15547%209.72015%207.55401%209.63839%207.98509C9.55663%208.41617%209.43645%208.84724%209.27687%209.27934L13.5127%208.80149C13.9638%207.52656%2014.1017%206.42447%2013.9264%205.49725C13.751%204.56901%2013.2664%203.85122%2012.4724%203.34491C12.239%203.19648%2011.9779%203.07041%2011.6893%202.96569L12.0026%201.50979L9.86397%200L7.3875%201.50979L7.11169%202.78878C6.65166%202.8874%206.21724%203.01957%205.8114%203.19038C4.85292%203.594%204.06684%204.15115%203.45117%204.86385C2.83452%205.57655%202.42571%206.40108%202.22378%207.33847C2.06616%208.06947%202.04942%208.70796%202.17551%209.25087C2.30061%209.7948%202.52028%2010.2828%202.8355%2010.7139C3.14974%2011.145%203.51816%2011.5344%203.93977%2011.881C4.36039%2012.2288%204.782%2012.5521%205.20164%2012.851C5.68334%2013.1702%206.13844%2013.5169%206.56497%2013.8921C6.99052%2014.2672%207.31954%2014.7125%207.55004%2015.228C7.78055%2015.7445%207.81502%2016.3769%207.65347%2017.1262C7.56482%2017.5389%207.43676%2017.8765%207.27028%2018.1388C7.10381%2018.4011%206.89596%2018.5983%206.64772%2018.7295C6.3985%2018.8606%206.12071%2018.9267%205.8114%2018.9267C5.21641%2018.9267%204.79776%2018.6034%204.62833%2018.1632C4.4589%2017.7229%204.47367%2017.2583%204.60075%2016.5639C4.72782%2015.8705%205.05092%2015.1395%205.37107%2014.3699H1.17665C1.17665%2014.3699%200.207341%2016.1115%200.0310135%2017.6762C-0.0655232%2018.5302%200.0635208%2019.2653%200.41519%2019.8844C0.76686%2020.5036%201.33032%2020.9814%202.10655%2021.319C2.39222%2021.443%202.7104%2021.5447%203.05813%2021.623L2.54589%2024H7.17473L7.7047%2021.5386C8.08493%2021.442%208.43857%2021.3231%208.76562%2021.1787C9.73985%2020.7476%2010.52%2020.1427%2011.1071%2019.3649C11.6932%2018.5871%2012.0873%2017.7291%2012.2892%2016.7917C12.4744%2015.9295%2012.5099%2015.1741%2012.3966%2014.5275L12.3976%2014.5255Z'%20fill='white'/%3e%3c/svg%3e";async function Oe(a){let e=a.replace(/-/g,"+").replace(/_/g,"/");for(;e.length%4;)e+="=";const t=atob(e),i=Uint8Array.from(t,o=>
63o.charCodeAt(0)),s=new Blob([i]).stream().pipeThrough(new DecompressionStream("gzip")),r=await new Response(s).text();return JSON.parse(r)}function F(a,e){return typeof e=="string"&&/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d+(?:Z|[+-]\d+)/.test(e)?new Date(e):e}function ee(a,e){return e}function q(a,e=!1,t=!1,i=","){const s=a/100;if(t){const o=Math.round(s).toLocaleString("en-US");return i!==","?o.replace(/,/g,i):o}else{const r=e?",":".",o=s.toFixed(2).split("."),n=parseInt(o[0],10),l=o[1]??"00",c=n.toLocaleString("en-US");return i!==","?`${c.replace(/,/g,i)}${r}${l}`:e?`${c.replace(/,/g,".")}${r}${l}`:`${c}${r}${l}`}}function H(a,e,t,i){const s=e.replace("{{amount}}",q(a,!1,!1)).replace("{{amount_no_decimals}}",q(a,!1,!0)).replace("{{amount_with_comma_separator}}",q(a,!0,!1)).replace("{{amount_no_decimals_with_comma_separator}}",q(a,!0,!0)).replace("{{amount_with_space_separator}}",q(a,!1,!1," ")).replace("{{amount_no_decimals_with_space_separator}}",q(a,!1,!0," ")).replace("{{amount_with_apostrophe_separator}}",q(a,!1,!1,"'")).replace("{{amount_no_decimals_with_apostrophe_separator}}",q(a,!1,!0,"'")).replace("{{amount_with_period_and_space_separator}}",q(a,!1,!1,". ")).replace("{{amount_no_decimals_with_period_and_space_separator}}",q(a,!1,!0,". "));return i?`${s} ${t}`:s}function ae(a){return a.replace(/[^\d.,\s-]/g,"").trim()}function j(a){const e=new Map;for(const[t,i,s]of a.variants)e.set(t,{priceInCents:i,compareAtPriceInCents:s});return e}function Le(a,e,t,i){const{priceInCents:s,compareAtPriceInCents:r}=t,{moneyFormat:o,currency:n,currencyCodeEnabled:l}=i;if(a.getAttribute("data-sl-attribute-p")===e)a.innerHTML=H(s,o,n,l);else if(a.getAttribute("data-sl-attribute-cap")===e)r<=0||r<=s?a.remove():a.innerHTML=H(r,o,n,l);else if(a.getAttribute("data-sl-attribute-discount")===e&&!(r<=0||r<=s)){const d=Math.round((r-s)/r*100),u=ae(H(r-s,o,n,!1)),h=a.getAttribute("data-sl-format")||"percent";h==="percent"?a.textContent=`-${d}%`:h==="amount"?a.textContent=`-${u}`:h==="both"&&(a.textContent=`-${d}% (-${u})`)}}function $e(a){const e=[],t={id:"url-pattern",operator:"contains",value:"/"};for(const[i,s,r]of a.variants){e.push({id:`p-${i}`,cssSelector:`[data-sl-attribute-p="${i}"]`,urlPatterns:[t],actions:[{id:`p-action-${i}`,type:"innerHtml",scope:"price",value:H(s,a.moneyFormat,a.currency,a.currencyCodeEnabled)}]});const o=r<=0||r<=s;if(e.push({id:`cap-${i}`,cssSelector:`[data-sl-attribute-cap="${i}"]`,urlPatterns:[t],actions:[{id:`cap-action-${i}`,type:o?"remove":"innerHtml",scope:"compare-at-price",value:o?"":H(r,a.moneyFormat,a.currency,a.currencyCodeEnabled)}]}),!o&&r>s){const n=Math.round((r-s)/r*100),l=ae(H(r-s,a.moneyFormat,a.currency,!1));e.push({id:`d-${i}`,cssSelector:`[data-sl-attribute-discount="${i}"]`,urlPatterns:[t],actions:[{id:`d-action-${i}`,type:"js",scope:null,value:`var format = element.getAttribute('data-sl-format') || 'percent';                    if (format === 'percent') {                      element.textContent = '-${n}%';                    } else if (format === 'amount') {                      element.textContent = '-${l}';                    } else if (format === 'both') {                      element.textContent = '-${n}% (-${l})';                    }`}]})}}return e}const Me=a=>{let e=5381;for(let t=0;t<a.length;t++)e=(e*33^a.charCodeAt(t))>>>0;return e.toString(36)},qe=()=>Math.random().toString(36).slice(2,10)+Date.now().toString(36).slice(-4),He=a=>btoa(JSON.stringify(a)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""),K=a=>a.replace(/#slr-[a-z0-9]+$/,""),tt="modulepreload",it=function(a){return"/"+a},st={},Ne=function(e,t,i){let s=Promise.resolve();function r(o){const n=new Event("vite:preloadError",{cancelable:!0});if(n.payload=o,window.dispatchEvent(n),!n.defaultPrevented)throw o}return s.then(o=>{for(const n of o||[])n.status==="rejected"&&r(n.reason);return e().catch(r)})};function le(a,e,t){const i=t?a.plans.filter(c=>!c.variantId||c.variantId===t):a.plans,s=[],r=[];for(const c of i)c.direction==="decrease"?(s.push(c.existingShopifyPlanId),r.push(c.createdShopifyPlanId)):(s.push(c.createdShopifyPlanId),r.push(c.existingShopifyPlanId));const o=e?s:r,n=e?r:s;if(t)for(const c of a.plans)for(const d of[c.existingShopifyPlanId,c.createdShopifyPlanId])d&&!o.includes(d)&&!n.includes(d)&&n.push(d);const l={};for(let c=0;c<n.length;c++){const d=n[c],u=o[c];d&&u&&(l[d]=u)}return{showPlanIds:o,hidePlanIds:n,swapMap:l}}function ce(a,e,t){const i=e?a.plans.find(r=>r.variantId===e):void 0;if(i)return i.direction;if(t){const r=a.plans.find(o=>o.productId===t);if(r)return r.direction}return a.plans.find(r=>!r.variantId)?.direction??null}function J(a,e){const t=e?a.plans.filter(r=>!r.productId||r.productId===e):a.plans,i={};for(const r of t)i[r.existingShopifyPlanId]=r.existingDiscountAmount,i[r.createdShopifyPlanId]=r.existingDiscountAmount;
63const s=Math.max(...Object.values(i),0);return{discountMap:i,maxDiscount:s}}function W(a){const e=document.querySelector('form[action*="/cart/add"] input[name="product-id"]')?.value;if(e)return e;if(a){for(const r of Array.from(document.querySelectorAll("[data-sl-attribute-p]"))){const o=r.getAttribute("data-sl-attribute-p");if(!o)continue;const n=a.variants.find(l=>l[0]===o);if(n?.[3])return n[3]}const s=document.querySelector('form[action*="/cart/add"] input[name="id"]')?.value;if(s){const r=a.variants.find(o=>o[0]===s);if(r?.[3])return r[3]}}const t=window,i=t.ShopifyAnalytics?.meta?.product?.id??t.meta?.product?.id;return i!=null?String(i):null}function D(a,e){return a.widget.selectors[e]??[]}function N(a,e){return a.replace(/[\d.]+%/,`${e}%`)}function $(a,e){const t=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);let i=t.nextNode();for(;i;){if(i.nodeValue!==null){const s=e(i.nodeValue);if(s!==i.nodeValue){i.nodeValue=s;return}}i=t.nextNode()}}function de(a,e){return a===null?!1:a==="decrease"?!e:e}async function Ue(a){if(a.subscriptionSwapDone)return;const e=a.getActiveAssignment();if(!e)return;const t=a.getHypothesis(e.hypothesisId);if(!t?.subscriptionData)return;a.subscriptionSwapDone=!0;const i=t.subscriptionData,s=t.isControl,r=[...new Set(i.plans.map(d=>d.direction))].join(",");a.log(`[SUB-SWAP] ${s?"A":"B"} side, directions=${r}`);const o=i.plans.some(d=>d.variantId);let n=!1,l=!1;function c(){if(!l){l=!0;try{const d=o?document.querySelector("select[name='id'], input[name='id']")?.value:void 0,{showPlanIds:u,hidePlanIds:h,swapMap:p}=le(i,s,d);a.swapMap=p;const b=D(i,"widgetParent"),E=D(i,"subscriptionPlans"),S=D(i,"subscriptionInput");if(!b.length||!E.length||!S.length)return;const C=document.querySelector(b[0].selector);if(!C?.shadowRoot)return;const _=C.shadowRoot.querySelector(E[0].selector);if(!_?.shadowRoot)return;const T=S[0].selector;let m=null;if(i.widget.widgetType==="buttons"||i.widget.widgetType==="radio"){const y=Array.from(_.shadowRoot.querySelectorAll(T));if(!y.length)return;for(const v of y){const g=v.closest("label");g&&(u.includes(v.value)?g.style.display="":h.includes(v.value)&&(g.style.display="none"))}const w=y.some(v=>u.includes(v.value)&&v.checked),I=y.some(v=>h.includes(v.value)&&v.checked);if((w||I)&&(n=!1),!w&&!n){n=!0;for(const v of y)if(u.includes(v.value)){v.closest("label")?.click(),v.dispatchEvent(new Event("change",{bubbles:!0}));break}}const f=y.find(v=>v.checked);m=f&&u.includes(f.value)?f.value:u[0]??null}else if(i.widget.widgetType==="dropdown"){const y=_.shadowRoot.querySelector("select");if(!y)return;for(const w of Array.from(y.options))h.includes(w.value)&&(w.style.display="none",w.disabled=!0);if(h.includes(y.value)){const w=Array.from(y.options).find(I=>u.includes(I.value));w&&(y.value=w.value,y.dispatchEvent(new Event("change",{bubbles:!0})))}m=u.includes(y.value)?y.value:u[0]??null}if(m){const y=Array.from(document.querySelectorAll('input[name="selling_plan"]'));for(const w of y)w.value!==m&&(w.value=m)}}finally{l=!1}}}if(a.subscriptionHideWrongPlans=c,a.swapMap=le(i,s).swapMap,c(),o){const d=document.querySelector("select[name='id'], input[name='id']");d&&d.addEventListener("change",c)}}function B(a){const e=D(a,"widgetParent");return e.length?document.querySelector(e[0].selector)?.shadowRoot??null:null}function Y(a,e){const t=D(a,"subscriptionPlans");return t.length?e.querySelector(t[0].selector)?.shadowRoot??null:null}function Z(a,e){const t=new URLSearchParams(window.location.search).get("variant");if(t)return t;{const i=document.querySelector('form[action*="/cart/add"] input[name="id"]')?.value;if(i)return i}return a.size>0?[...a.keys()][0]:void 0}function G(a,e){return H(a,e.moneyFormat,e.currency,e.currencyCodeEnabled)}function Fe({originalFetch:a,swapMap:e,slptValue:t,getSelectedPlanId:i,log:s}){if(window.fetch.__shoplift_intercepted)return s("[SUB-INTERCEPT] already installed — skipping"),()=>{};function r(n){if(i){const l=i();if(l)return e[l]??l}return e[n]??n}const o=function(n,l){if((typeof n=="string"?n:n instanceof URL?n.href:n.url).includes("/cart/add")&&l?.body)try{if(l.body instanceof FormData){const d=l.body.get("selling_plan");d?l.body.set("selling_plan",r(String(d))):(!d||d==="")&&t&&l.body.set("properties[_slpt]",t)}
63else if(typeof l.body=="string"){const d=JSON.parse(l.body);if(d.items)for(const u of d.items){const h=String(u.selling_plan??"");h?u.selling_plan=r(h):!u.selling_plan&&t&&(u.properties||(u.properties={}),u.properties._slpt=t)}else if(d.id){const u=String(d.selling_plan??"");u?d.selling_plan=r(u):!d.selling_plan&&t&&(d.properties||(d.properties={}),d.properties._slpt=t)}l.body=JSON.stringify(d)}}catch(d){s("[SUB-INTERCEPT] body parse failed; cart-add proceeds with un-swapped plan",d)}return a.call(window,n,l)};return o.__shoplift_intercepted=!0,window.fetch=o,function(){window.fetch===o&&(window.fetch=a)}}function Be({log:a}){if(window.fetch.__shoplift_intercepted)return a("[SUB-PREVIEW-BLOCK] already installed — skipping"),()=>{};const e=window.fetch,t=function(i,s){const r=typeof i=="string"?i:i instanceof URL?i.href:i.url;return r.includes("/cart/add")?(a("[SUB-PREVIEW-BLOCK] cart-add blocked in preview mode",{url:r}),Promise.resolve(new Response(JSON.stringify({id:0,properties:{},quantity:0,variant_id:0,key:"preview",title:"Preview — cart-add blocked",price:0,original_price:0,line_price:0,original_line_price:0,total_discount:0,discounts:[],preview:!0}),{status:200,headers:{"Content-Type":"application/json"}}))):e.call(window,i,s)};return t.__shoplift_intercepted=!0,window.fetch=t,function(){window.fetch===t&&(window.fetch=e)}}function pe({data:a,runUpdates:e,debounceMs:t=150}){let i=null;function s(){i&&clearTimeout(i),e(),i=setTimeout(e,t)}let r=null;const o=[],n={childList:!0,subtree:!0,characterData:!0,attributes:!0};function l(h){for(const p of o)p.disconnect();o.length=0;for(const p of Array.from(h.querySelectorAll("*")))if(p.shadowRoot){const b=new MutationObserver(s);b.observe(p.shadowRoot,n),o.push(b)}}function c(){const h=B(a);return h?(r&&r.disconnect(),l(h),r=new MutationObserver(p=>{p.some(b=>b.type==="childList"&&b.addedNodes.length>0)&&l(h),s()}),r.observe(h,n),!0):!1}const d=document.body||document.documentElement,u=new MutationObserver(()=>{c()&&s()});return u.observe(d,{childList:!0,subtree:!0}),c()&&s(),e(),function(){i&&(clearTimeout(i),i=null),u.disconnect(),r&&(r.disconnect(),r=null);for(const p of o)p.disconnect();o.length=0}}async function ze(a){if(a.subscriptionPriceDone)return;const e=a.getActiveAssignment(),t=e?a.getHypothesis(e.hypothesisId):void 0,i=t?.subscriptionData?null:a.findActiveSubscriptionTestControl(),s=t?.subscriptionData?t:i?.hypothesis;if(!s?.subscriptionData)return;const r=t?.subscriptionData?e.testId:i.testId;a.subscriptionPriceDone=!0;const o=s.subscriptionData,n=s.isControl,l=s.priceData,c=o.widget.widgetType;let d=W(l),u=J(o,d),h=u.discountMap,p=u.maxDiscount;function b(){const g=W(l);g!==d&&(d=g,u=J(o,d),h=u.discountMap,p=u.maxDiscount,a.log(`[SUB-PRICE] scope refreshed side=${n?"A":"B"}, currentProductId=${d??"n/a"}, maxDiscount=${p}`))}a.log(`[SUB-PRICE] side=${n?"A":"B"}, currentProductId=${d??"n/a"}, maxDiscount=${p}`),a.updatePriceTestHiddenInputs(r,n?"control":"variant",!1);function E(){if(!l)return null;const g=j(l),P=Z(g),A=ce(o,P,d);if(!de(A,n))return null;const k=P?g.get(P):void 0;return k?{formattedVariantPrice:G(k.priceInCents,l),formattedDiscounted:G(k.priceInCents*(1-p/100),l)}:null}Fe({originalFetch:a.fetch,swapMap:a.swapMap??{},slptValue:a.slptValue??void 0,log:a.log,getSelectedPlanId:()=>{const g=B(o);if(!g)return null;const P=Y(o,g);if(!P)return null;const A=D(o,"subscriptionInput"),k=A.length?A[0].selector:'input[name="rc_plan"]';return P.querySelector(`${k}:checked`)?.value??null}});function S(g){const P=D(o,"subscriptionDiscount");for(const A of P)if(A.selector.includes("badge")||A.selector.includes("__badge")){const k=g.querySelector(A.selector);k?.textContent&&!k.textContent.includes(`${p}%`)&&$(k,x=>N(x,p))}}function C(g){const P=E();if(!P)return;const A=D(o,"subscriptionCompareAt");for(const k of A){const x=g.querySelector(k.selector)||g.querySelector(`[part~="${k.selector}"]`);x?.textContent&&!x.textContent.includes(P.formattedVariantPrice)&&$(x,R=>/\d/.test(R)?P.formattedVariantPrice:R)}}function _(g,P){const A=D(o,"subscriptionCompareAt"),k=P===0?"none":"";for(const x of A){const R=g.querySelector(x.selector)||g.querySelector(`[part~="${x.selector}"]`);R&&(k==="none"?R.style.display!=="none"&&(R.style.display="none"):R.style.display==="none"&&(R.style.display=""))}}function T(g){const P=D(o,"subscriptionInput"),A=P.length?P[0].selector:'input[name="rc_plan"]',k=D(o,"subscriptionPlanDiscount"),x=k.length?k[0].selector:".rc-plans-button__discount";for(const R of Array.from(g.querySelectorAll("label"))){const O=R.querySelector(A),V=R.querySelector(x);
63if(O&&V){const L=h[O.value];if(L!==void 0){if(L===0)V.style.display!=="none"&&(V.style.display="none");else if(V.style.display==="none"&&(V.style.display=""),V.textContent){const Q=V.textContent.match(/[\d.]+%/)?.[0];Q&&Q!==`${L}%`&&$(V,et=>N(et,L))}}}}}function m(g){const P=g.querySelector("select");if(P)for(const A of Array.from(P.options)){const k=h[A.value];if(k!==void 0&&A.textContent){const x=A.textContent.match(/[\d.]+%/)?.[0];x&&x!==`${k}%`&&(A.textContent=N(A.textContent,k))}}}function y(g,P){const k=D(o,"subscriptionDiscount").filter(x=>x.selector.includes("benefit")||x.selector==="rc-benefits");for(const x of k){const R=g.querySelector(x.selector);if(R?.shadowRoot){for(const O of Array.from(R.shadowRoot.querySelectorAll("li")))if(O.textContent?.includes("Save")){const V=O;if(P===0)V.style.display!=="none"&&(V.style.display="none");else{V.style.display==="none"&&(V.style.display="");const L=O.textContent.match(/[\d.]+%/)?.[0];L&&L!==`${P}%`&&$(O,Q=>N(Q,P))}}}}}let w=!1;function I(){if(!w){w=!0;try{if(b(),d!==null&&Object.keys(h).length===0)return;const g=B(o);if(!g)return;S(g),l&&C(g);const P=Y(o,g);let A=p;if(P){const k=D(o,"subscriptionInput"),x=k.length?k[0].selector:'input[name="rc_plan"]',R=P.querySelector(`${x}:checked`);if(R){const O=h[R.value];O!==void 0&&(A=O)}c==="buttons"||c==="radio"?T(P):m(P)}_(g,A),y(g,A)}finally{w=!1}}}function f(){const g=E();if(!g)return;const P=B(o);if(!P)return;const A=D(o,"onetimeToggle"),k=A.length?A[0].selector:'input[value="onetime"]';if(!P.querySelector(k)?.checked)return;const R=D(o,"subscriptionPrice");for(const O of R){const V=P.querySelector(O.selector)||P.querySelector(`[part~="${O.selector}"]`);V?.textContent&&!V.textContent.includes(g.formattedDiscounted)&&$(V,L=>/\d/.test(L)?g.formattedDiscounted:L)}}function v(){a.subscriptionHideWrongPlans&&a.subscriptionHideWrongPlans(),I(),a.subscriptionUpdateOneTime&&a.subscriptionUpdateOneTime(),f()}pe({data:o,runUpdates:v})}async function We(a){if(a.subscriptionOneTimeDone)return;const e=a.getActiveAssignment(),t=e?a.getHypothesis(e.hypothesisId):void 0,i=!!(t?.subscriptionData&&t.priceData),s=i?null:a.findActiveSubscriptionTestControl(),r=i?t:s?.hypothesis;if(!r?.subscriptionData||!r.priceData)return;const o=i?e.testId:s.testId;a.subscriptionOneTimeDone=!0;const n=r.subscriptionData,l=r.priceData,c=j(l),d=r.isControl,u=d?"control":"variant";a.slptValue=`${o}:${u}:f`,a.updatePriceTestHiddenInputs(o,u,!1);function h(){const p=B(n);if(!p)return;const b=Z(c);if(!b)return;const E=W(l),S=ce(n,b,E);if(!de(S,d))return;const C=c.get(b);if(!C)return;const _=H(C.priceInCents,l.moneyFormat,l.currency,l.currencyCodeEnabled),T=D(n,"onetimePrice");if(!T.length)return;const m=D(n,"onetimeContainer"),y=m.length?m[0].selector:'[part~="rc-purchase-option__onetime"]',I=p.querySelector(y)??p;for(const f of T){let v=null;try{v=I.querySelector(f.selector)}catch{v=null}v??=I.querySelector(`[part~="${f.selector}"]`),v&&v.textContent&&!v.textContent.includes(_)&&$(v,g=>/\d/.test(g)?_:g)}}a.subscriptionUpdateOneTime=h,h()}async function Ge(a,e){const{subscriptionPreviewRender:t}=await Ne(async()=>{const{subscriptionPreviewRender:i}=await Promise.resolve().then(()=>Xe);return{subscriptionPreviewRender:i}},void 0);return t(a.subscriptionData,a.priceData,a.isControl,e)}function je(a,e){const t=a.widget.selectors.widgetParent??[],i=a.widget.selectors.subscriptionPlans??[],s=a.widget.selectors.subscriptionInput??[];if(!t.length||!i.length||!s.length){e("[SUB-GLOBAL-HIDE] Missing required selectors — skipping");return}const r=t[0].selector,o=i[0].selector,n=s[0].selector;let l=!1,c=null,d=!1;function u(){if(!d){d=!0;try{h()}finally{d=!1}}}function h(){const C=document.querySelector(r);if(!C?.shadowRoot)return;const _=C.shadowRoot.querySelector(o);if(!_?.shadowRoot)return;_.shadowRoot!==c&&(c=_.shadowRoot,l=!1);let T=0;if(a.widget.widgetType==="buttons"||a.widget.widgetType==="radio"){const m=Array.from(_.shadowRoot.querySelectorAll(n));for(const f of m)if(a.planIds.includes(f.value)){f.disabled||(f.disabled=!0);const v=f.closest("label");v&&v.style.display!=="none"&&(v.style.display="none",T++)}const y=m.filter(f=>!a.planIds.includes(f.value));if(!y.some(f=>f.checked)&&!l&&y.length>0){l=!0;const f=y[0];f.closest("label")?.click(),f.dispatchEvent(new Event("change",{bubbles:!0})),e(`[SUB-GLOBAL-HIDE] Preselected first visible plan input=${f.value}`)}const I=y.find(f=>f.checked)??y[0];
63if(I){const f=Array.from(document.querySelectorAll('input[name="selling_plan"]'));for(const v of f)v.value!==I.value&&(v.value=I.value,e(`[SUB-GLOBAL-HIDE] Mirrored plan id ${I.value} to form selling_plan input`))}}else if(a.widget.widgetType==="dropdown"){const m=_.shadowRoot.querySelector("select");if(!m)return;for(const I of Array.from(m.options))a.planIds.includes(I.value)&&(I.style.display!=="none"&&(I.style.display="none"),I.disabled||(I.disabled=!0),T++);const y=Array.from(m.options).filter(I=>!a.planIds.includes(I.value)),w=y.some(I=>I.value===m.value);y.length>0&&!w&&!l&&(l=!0,m.value=y[0].value,m.dispatchEvent(new Event("change",{bubbles:!0})),e(`[SUB-GLOBAL-HIDE] Preselected first visible option=${y[0].value}`))}T>0&&e(`[SUB-GLOBAL-HIDE] Hidden ${T} B-side plan buttons`)}const p={childList:!0,subtree:!0,characterData:!0};let b=null;function E(C){b?.disconnect(),b=new MutationObserver(()=>u()),b.observe(C,p)}function S(){const C=document.querySelector(r);if(!C?.shadowRoot)return!1;u(),new MutationObserver(()=>{u();const m=C.shadowRoot.querySelector(o);m?.shadowRoot&&E(m.shadowRoot)}).observe(C.shadowRoot,p);const T=C.shadowRoot.querySelector(o);return T?.shadowRoot&&E(T.shadowRoot),!0}if(!S()){e("[SUB-GLOBAL-HIDE] Widget not in DOM yet — waiting via MutationObserver");const C=new MutationObserver(()=>{S()&&C.disconnect()});C.observe(document.body??document.documentElement,{childList:!0,subtree:!0})}}const ue="Limited preview",Ke="Add-to-cart and checkout prices won't reflect this test until it launches — test selling plans are not created in your subscription app until after a test is launched.",Je=5e3;function Ye(){const a=document.createElement("div");a.id="shoplift-preview-subscription-warning";const e=document.createElement("span");e.id="shoplift-preview-subscription-warning__icon",e.setAttribute("aria-hidden","true"),e.textContent="!";const t=document.createElement("span");t.id="shoplift-preview-subscription-warning__label",t.textContent=ue;const i=document.createElement("div");i.id="shoplift-preview-subscription-warning__tooltip",i.setAttribute("role","tooltip"),i.textContent=Ke,a.appendChild(e),a.appendChild(t),a.appendChild(i),a.setAttribute("tabindex","0"),a.setAttribute("aria-describedby",i.id),a.setAttribute("aria-label",ue);let s=null;function r(){s!==null&&(clearTimeout(s),s=null)}function o(){i.classList.add("shoplift-preview-subscription-warning__tooltip--visible")}function n(){i.classList.remove("shoplift-preview-subscription-warning__tooltip--visible")}function l(){o(),r(),s=setTimeout(()=>{n(),s=null},Je)}function c(){r(),o()}function d(){s===null&&n()}a.addEventListener("mouseenter",c),a.addEventListener("mouseleave",d),a.addEventListener("focus",c),a.addEventListener("blur",d);function u(p){try{const b=p.target;if(!(b instanceof Element))return;(b.closest('form[action*="/cart/add"] button[type="submit"], form[action*="/cart/add"] input[type="submit"]')!==null||b.closest('[name="add"], button[name="add"], [data-add-to-cart], button[data-add-to-cart]')!==null)&&l()}catch{}}document.addEventListener("click",u,!0);function h(){r(),document.removeEventListener("click",u,!0),a.removeEventListener("mouseenter",c),a.removeEventListener("mouseleave",d),a.removeEventListener("focus",c),a.removeEventListener("blur",d),a.remove()}return{root:a,tooltip:i,cleanup:h}}let he=!1;class Ze{DATA_SL_ATTRIBUTE_P="data-sl-attribute-p";DATA_SL_TEST_ID="data-sl-test-id";VIEWPORT_TRACK_THRESHOLD=.5;temporarySessionKey="Shoplift_Session";essentialSessionKey="Shoplift_Essential";analyticsSessionKey="Shoplift_Analytics";priceSelectorsSessionKey="Shoplift_PriceSelectors_v2";shop;host;eventHost;disableReferrerOverride;legacySessionKey;cssHideClass;testConfigs;inactiveTestConfigs;hiddenSubscriptionPlans;testsFilteredByAudience;sendPageView;shopliftDebug;gaConfig;telemetryEnabled;getCountryTimeout;geoViaShopify;resolvedRegion=null;state;subscriptionPreviewWarningCleanup=null;shopifyAnalyticsId;cookie=document.cookie;isSyncing=!1;isSyncingGA=!1;fetch;localStorageSet;localStorageGet;sessionStorageSet=window.sessionStorage.setItem.bind(window.sessionStorage);sessionStorageGet=window.sessionStorage.getItem.bind(window.sessionStorage);
63urlParams=new URLSearchParams(window.location.search);device;logHistory;activeViewportObservers=new Map;clientIdRetryCount=0;constructor(e,t,i,s,r,o,n,l,c,d,u,h,p,b=!1){this.shop=e,this.host=t,this.eventHost=i,this.disableReferrerOverride=l,this.logHistory=[],this.legacySessionKey=`SHOPLIFT_SESSION_${this.shop}`,this.cssHideClass=s?"shoplift-hide":"",this.testConfigs=u.map(S=>({...S,startAt:new Date(S.startAt),statusHistory:S.statusHistory.map(C=>({...C,createdAt:new Date(C.createdAt)}))})),this.inactiveTestConfigs=h,this.hiddenSubscriptionPlans=p,this.sendPageView=!!r,this.shopliftDebug=o===!0,this.telemetryEnabled=c===!0,this.geoViaShopify=b===!0,this.gaConfig=n!=={"sendEvents":false,"mode":"gtag"}?n:{sendEvents:!1},this.fetch=window.fetch.bind(window),this.localStorageSet=window.localStorage.setItem.bind(window.localStorage),this.localStorageGet=window.localStorage.getItem.bind(window.localStorage);const E=this.getDeviceType();this.device=E!=="tablet"?E:"mobile",this.state=this.loadState(),this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.testsFilteredByAudience=u.filter(S=>
63S.status=="active"),this.getCountryTimeout=d===1000?1e3:d,window.__slReadCookie=S=>{const C=this.getCookie(S);if(C===null)return null;try{return decodeURIComponent(C)}catch{return C}},this.log("State Loaded",JSON.stringify(this.state))}deriveCategoryFromExistingTests(){if(!this.state.temporary.testCategory&&this.state.essential.visitorTests.length>0){const e=this.state.essential.visitorTests.some(t=>{if(!t.hypothesisId)return!1;const i=this.getHypothesis(t.hypothesisId);return i&&["theme","basicScript","price"].includes(i.type)});this.state.temporary.testCategory=e?"global":"conditional",this.persistTemporaryState(),this.log("Derived test category from existing visitorTests: %s",this.state.temporary.testCategory)}}async init(){try{if(this.log("Shoplift script initializing"),window.Shopify&&window.Shopify.designMode){this.log("Skipping script for design mode");return}if(window.location.href.includes("slScreenshot=true")){this.log("Skipping script for screenshot");return}if(window.location.hostname.endsWith(".edgemesh.com")){this.log("Skipping script for preview");return}if(window.location.href.includes("isShopliftMerchant")){const o=this.urlParams.get("isShopliftMerchant")==="true";this.log("Setting merchant session to %s",o),this.state.temporary.isMerchant=o,this.persistTemporaryState()}if(this.state.temporary.isMerchant){this.log("Setting up preview for merchant"),typeof window.shoplift!="object"&&this.setShopliftStub(),this.state.temporary.previewConfig||this.hidePage(),await this.initPreview(),document.querySelector("#sl-preview-bar-hide")?.remove();return}if(this.state.temporary.previewConfig=void 0,we(navigator.userAgent))return;const e=Date.now(),t=!this.state.temporary.lastSeen||e-this.state.temporary.lastSeen>1800*1e3;(!this.state.temporary.entryPage||t)&&(this.state.temporary.entryPage=K(window.location.href)),this.state.temporary.lastSeen=e,this.persistTemporaryState(),window.__slEntryPage=this.state.temporary.entryPage??"";const i=this.state.essential.visitorTests.filter(o=>o.hypothesisId&&+o.createdAt>Date.now()-6e4);if(i.length===0)this.sendDiagnosticTelemetry("page-landed",null);else for(const o of i)this.sendDiagnosticTelemetry("page-landed",o.testId,{hypothesisId:o.hypothesisId,isControl:o.assignedTo==="control",testType:o.testType??"unknown"});if(navigator.userAgent.includes("Chrome/118")){this.log("Random: %o",[Math.random(),Math.random(),Math.random()]);const o=await this.makeRequest({url:`${this.eventHost}/api/v0/events/ip`,method:"get"}).then(n=>n?.json());this.log(`IP: ${o}`),this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify(this.debugState(),ee)}).catch()}if(this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.monitorConsentChange(),this.checkForThemePreview())return;if(!this.disableReferrerOverride&&this.state.temporary.originalReferrer!=null){this.log(`Overriding referrer from '${document.referrer}' to '${this.state.temporary.originalReferrer}'`);const o=this.state.temporary.originalReferrer;delete this.state.temporary.originalReferrer,this.persistTemporaryState(),Object.defineProperty(document,"referrer",{get:()=>o,enumerable:!0,configurable:!0})}if(await this.refreshVisitor(this.shopifyAnalyticsId),await this.handleVisitorTest()){this.log("Redirecting for visitor test");return}this.setShoplift(),this.showPage(),this.ensureCartAttributesForExistingPriceTests(!1);const r=this.state.essential.visitorTests.some(o=>(o.hypothesisId?this.getHypothesis(o.hypothesisId):void 0)?.subscriptionData!=null)||Object.values(this.state.temporary.testReservations??{}).some(o=>this.getHypothesis(o.hypothesisId)?.subscriptionData!=null);this.hiddenSubscriptionPlans&&!r&&(this.log(`[SUB-GLOBAL] Visitor not in subscription test — hiding ${this.hiddenSubscriptionPlans.planIds.length} B-side plans`),je(this.hiddenSubscriptionPlans,o=>this.log(o))),await this.subscriptionSwap(),await this.subscriptionOneTimePrice(),await this.subscriptionPriceChange(),await this.finalize(),console.log("SHOPLIFT SCRIPT INITIALIZED!")}catch(e){if(e instanceof ie)return;throw e}finally{typeof window.shoplift!="object"&&this.setShopliftStub()}}getVariantColor(e){switch(e){case"a":return{text:"#141414",bg:"#E2E2E2"};case"b":return{text:"rgba(255, 255, 255, 1)",bg:"rgba(37, 99, 235, 1)"}}}getDefaultVariantTitle(e){return e.title?e.title:e.type==="price"?e.isControl?"Original prices":"Variant prices":e.isControl?"Original":"Untitled variant "+e.label.toUpperCase()}
63async initPreview(){const e=this.urlParams.get("previewConfig");if(e){this.state.temporary.previewConfig=void 0,this.log("Setting up the preview"),this.log("Found preview config, writing to temporary state");const t=await Oe(e);if(this.state.temporary.previewConfig=t,this.state.temporary.previewConfig.testTypeCategory===M.Price){this.hidePage(!0);const s=this.state.temporary.previewConfig;let r=`${this.host}/api/dom-selectors/${s.storeId}/${s.testId}/${s.isDraft||!1}`;s.shopifyProductId&&(r+=`?productId=${s.shopifyProductId}`);const o=await this.makeJsonRequest({method:"get",url:r}).catch(n=>(this.log("Error getting domSelectors",n),null));if(s.variants.forEach(n=>n.domSelectors=o[n.id]?.domSelectors),s.isDraft){const n=`${this.host}/api/dom-selectors/${s.storeId}/${s.testId}/subscription-preview`,l=await this.makeJsonRequest({method:"get",url:n}).catch(c=>(this.log("No subscription preview data for draft (test may not have a subscription widget)",c),null));l?.subscriptionData&&s.variants.forEach(c=>{c.subscriptionData=l.subscriptionData,c.priceData=l.priceData})}}this.persistTemporaryState();const i=new URL(window.location.toString());i.searchParams.delete("previewConfig"),this.queueRedirect(i)}else if(this.state.temporary.previewConfig){this.showPage();const t=this.state.temporary.previewConfig;if(t.testTypeCategory===M.Template&&this.handleTemplatePreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.UrlRedirect&&this.handleUrlPreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.Script&&this.handleScriptPreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.Price){const i=await this.handlePricePreview(t);t.isDraft?await this.handleSubscriptionPricePreview(t):await this.handleSubscriptionLivePreview(t),i&&this.initPreviewControls(t)}}}initPreviewControls(e){document.addEventListener("DOMContentLoaded",()=>{const t=e.variants.find(b=>b.id===e.currentVariant),i=t?.label||"a",s=e.variants,r=document.createElement("div");r.id="shoplift-preview-control";const o=document.createElement("div"),n=document.createElement("img");n.src=Ve,n.height=24,n.width=14,o.style.padding="0 16px",o.style.lineHeight="100%",o.appendChild(n),r.appendChild(o);const l=document.createElement("div");l.id="shoplift-preview-variant-selector";const c=document.createElement("button");c.id="shoplift-preview-variant-menu-trigger";const d=document.createElement("div");d.className="menu-variant-label",d.style.backgroundColor=this.getVariantColor(i).bg,d.style.color=this.getVariantColor(i).text,d.innerText=i.toUpperCase(),c.appendChild(d);const u=document.createElement("span");if(u.id="shoplift-preview-variant-title",u.innerText=t?this.getDefaultVariantTitle(t):"Untitled variant "+i.toUpperCase(),c.appendChild(u),s.length>1){const b=document.createElement("img");b.src=De,b.width=12,b.height=12,b.style.height="12px",b.style.width="12px",c.appendChild(b);const E=document.createElement("div");E.className="preview-variant-menu";for(const S of e.variants.filter(C=>C.id!==e.currentVariant)){const C=document.createElement("div");C.className="preview-variant-menu--item";const _=document.createElement("div");_.className="menu-variant-label",_.style.backgroundColor=this.getVariantColor(S.label).bg,_.style.color=this.getVariantColor(S.label).text,_.style.flexShrink="0",_.innerText=S.label.toUpperCase(),C.appendChild(_);const T=document.createElement("span");T.innerText=this.getDefaultVariantTitle(S),C.appendChild(T),C.addEventListener("click",()=>{this.pickVariant(S.id)}),E.appendChild(C)}l.appendChild(E),c.addEventListener("click",()=>{E.className!=="preview-variant-menu preview-variant-menu__visible"?E.classList.add("preview-variant-menu__visible"):E.classList.remove("preview-variant-menu__visible")}),document.addEventListener("click",S=>{S.target instanceof Element&&!c.contains(S.target)&&E.className==="preview-variant-menu preview-variant-menu__visible"&&E.classList.remove("preview-variant-menu__visible")})}else c.style.pointerEvents="none",d.style.margin="0";if(l.appendChild(c),r.appendChild(l),e.hasSubscription){this.subscriptionPreviewWarningCleanup?.();const b=Ye();r.appendChild(b.root),this.subscriptionPreviewWarningCleanup=b.cleanup}const h=document.createElement("div"),p=document.createElement("button");p.id="shoplift-exit-preview-button",p.innerText="Exit",h.appendChild(p),p.addEventListener("click",()=>{this.exitPreview()}),r.appendChild(h),document.body.appendChild(r),requestAnimationFrame(()=>{r.classList.add("visible")})}),this.ensureCartAttributesForExistingPriceTests(!0)}pickVariant(e){if(this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig,i=new URL(window.location.toString());if(t.testTypeCategory===M.UrlRedirect){const s=t.variants.find(r=>r.id===t.currentVariant)?.redirectUrl;if(i.pathname===s){const r=t.variants.find(o=>o.id===e)?.redirectUrl;r&&(i.pathname=r)}}if(t.testTypeCategory===M.Template){const s=t.variants.find(r=>r.id===t.currentVariant)?.pathName;if(s&&i.pathname===s){const r=t.variants.find(o=>o.id===e)?.pathName;r&&r!==s&&(i.pathname=r)}}t.currentVariant=e,this.persistTemporaryState(),this.queueRedirect(i)}}exitPreview(){const e=new URL(window.location.toString());if(this.state.temporary.previewConfig?.testTypeCategory===M.Template&&e.searchParams.delete("view"),this.state.temporary.previewConfig?.testTypeCategory===M.Script&&e.searchParams.delete("slVariant"),this.state.temporary.previewConfig?.testTypeCategory===M.UrlRedirect){const i=this.state.temporary.previewConfig.variants.filter(r=>!r.isControl&&r.redirectUrl!==null).map(r=>r.redirectUrl),s=this.state.temporary.previewConfig.variants.find(r=>r.label==="a")?.redirectUrl;i.includes(e.pathname)&&s&&(e.pathname=s)}this.state.temporary.isMerchant=!1,e.searchParams.delete("isShopliftMerchant"),this.state.temporary.previewConfig=void 0,this.persistTemporaryState(),this.subscriptionPreviewWarningCleanup?.(),this.subscriptionPreviewWarningCleanup=null,this.hidePage(),this.queueRedirect(e)}handleTemplatePreview(e){const t=e.currentVariant,i=e.variants.find(l=>l.id===t);if(!i)return!1;const s=e.variants.find(l=>l.isControl);if(!s)return!1;this.log("Setting up template preview for type",s.type);
63const r=new URL(window.location.toString()),o=r.searchParams.get("view"),n=i.type===s.type;return!n&&!i.isControl&&template.suffix===s.affix&&this.typeFromTemplate()===s.type&&i.pathName!==null?(this.log("Hit control template type, redirecting to the variant url"),this.hidePage(),r.pathname=i.pathName,this.queueRedirect(r),!0):(!i.isControl&&this.typeFromTemplate()==i.type&&template.suffix===s.affix&&n&&o!==(i.affix||"__DEFAULT__")&&(this.log("Template type and affix match control, updating the view param"),r.searchParams.delete("view"),this.log("Setting the new viewParam to",i.affix||"__DEFAULT__"),this.hidePage(),r.searchParams.set("view",i.affix||"__DEFAULT__"),this.queueRedirect(r)),o!==null&&o!==(i.affix||"__DEFAULT__")&&(r.searchParams.delete("view"),this.hidePage(),this.queueRedirect(r)),!0)}handleUrlPreview(e){const t=e.currentVariant,i=e.variants.find(o=>o.id===t),s=e.variants.find(o=>o.isControl)?.redirectUrl;if(!i)return!1;this.log("Setting up URL redirect preview");const r=new URL(window.location.toString());return r.pathname===s&&!i.isControl&&i.redirectUrl!==null&&(this.log("Url matches control, redirecting"),this.hidePage(),r.pathname=i.redirectUrl,this.queueRedirect(r)),!0}handleScriptPreview(e){const t=e.currentVariant,i=e.variants.find(o=>o.id===t);if(!i)return!1;this.log("Setting up script preview");const s=new URL(window.location.toString());return s.searchParams.get("slVariant")!==i.id&&(this.log("current id doesn't match the variant, redirecting"),s.searchParams.delete("slVariant"),this.log("Setting the new slVariantParam"),this.hidePage(),s.searchParams.set("slVariant",i.id),this.queueRedirect(s)),!0}async handlePricePreview(e){const t=e.currentVariant,i=e.variants.find(s=>s.id===t);return i?(this.log("Setting up price preview"),i.domSelectors&&i.domSelectors.length>0&&(U(document,{testId:e.testId,hypothesisId:i.id,selectors:i.domSelectors}),this.ensureCartAttributesForExistingPriceTests(!0)),!0):!1}async handleSubscriptionPricePreview(e){const t=e.variants.find(i=>i.id===e.currentVariant);t?.subscriptionData&&(this.log("Setting up subscription price preview"),await Ge({id:t.id,isControl:t.isControl,subscriptionData:t.subscriptionData,priceData:t.priceData},(i,...s)=>this.log(i,...s)))}async handleSubscriptionLivePreview(e){this.testConfigs.find(s=>s.id===e.testId)?.hypotheses.find(s=>s.id===e.currentVariant)?.subscriptionData&&(this.log("Setting up subscription live preview"),this.subscriptionSwapDone=!1,this.subscriptionOneTimeDone=!1,this.subscriptionPriceDone=!1,await this.subscriptionSwap(),await this.subscriptionOneTimePrice(),await this.subscriptionPriceChange())}async finalize(){const e=await this.getCartState();e!==null&&this.queueCartUpdate(e),this.pruneStateAndSave(),await this.syncAllEvents()}setShoplift(){this.log("Setting up public API");const t=this.urlParams.get("slVariant")==="true",i=t?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:async s=>{if(this.log("Script checking variant for hypothesis '%s'",s),t)return this.log("Forcing variant for hypothesis '%s'",s),!0;if(i!==null)return this.log("Forcing hypothesis '%s'",i),s===i;const r=this.testConfigs.find(n=>n.hypotheses.some(l=>l.id===s));if(!r)return this.log("No test found for hypothesis '%s'",s),!1;const o=this.state.essential.visitorTests.find(n=>n.testId===r.id);return o?(this.log("Active visitor test found",s),o.hypothesisId===s):(await this.manuallySplitVisitor(r),this.testConfigs.some(n=>n.hypotheses.some(l=>l.id===s&&this.state.essential.visitorTests.some(c=>c.hypothesisId===l.id))))},setAnalyticsConsent:async s=>{await this.onConsentChange(s,!0)},getVisitorData:()=>({visitor:this.state.analytics.visitor,visitorTests:this.state.essential.visitorTests.filter(s=>!s.isInvalid).map(s=>{const{shouldSendToGa:r,savedAt:o,...n}=s;return n})})}}setShopliftStub(){this.log("Setting up stubbed public API");const t=this.urlParams.get("slVariant")==="true",i=t?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:s=>Promise.resolve(t||s===i),setAnalyticsConsent:()=>Promise.resolve(),getVisitorData:()=>({visitor:null,visitorTests:[]})}}async manuallySplitVisitor(e){this.log("Starting manual split for test '%s'",e.id),await this.handleVisitorTest([e]);const t=this.getReservationForTest(e.id);t&&!t.isRealized&&t.entryCriteriaKey&&(this.log("Realizing manual API reservation for test '%s'",e.id),this.realizeReservationForCriteria(t.entryCriteriaKey)),this.saveState(),this.syncAllEvents()}async handleVisitorTest(e){await this.filterTestsByAudience(this.testConfigs,this.state.analytics.visitor??this.buildBaseVisitor(),this.state.essential.visitorTests),this.pruneStaleVisitorTests(),this.deriveC
63ategoryFromExistingTests(),this.clearStaleReservations();let t=e?e.filter(i=>this.testsFilteredByAudience.some(s=>s.id===i.id)):[...this.testsForUrl(this.testsFilteredByAudience),...this.domTestsForUrl(this.testsFilteredByAudience)];try{if(t.length===0)return this.log("No tests found"),!1;this.log("Checking for existing visitor test on page");const i=this.getCurrentVisitorHypothesis(t);if(i){this.log("Found current visitor test");const l=this.considerRedirect(i);return l&&(this.log("Redirecting for current visitor test"),this.redirect(i)),l}const s=this.getReservationForCurrentPage();if(s){this.log("Found matching reservation for current page: %s",s.testId);const l=this.getHypothesis(s.hypothesisId);if(l){l.type!=="price"&&this.realizeReservationForCriteria(s.entryCriteriaKey);const c=this.considerRedirect(l);return c&&this.redirect(l),c}}this.log("No active test relation for test page");const r=this.testsForUrl(this.inactiveTestConfigs.filter(l=>this.testIsPaused(l)&&l.hypotheses.some(c=>this.state.essential.visitorTests.some(d=>d.hypothesisId===c.id)))).map(l=>l.id);if(r.length>0)return this.log("Visitor has paused tests for test page, skipping test assignment: %o",r),!1;if(!this.state.temporary.testCategory){const l=this.testsFilteredByAudience.filter(d=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(d))),c=this.testsFilteredByAudience.filter(d=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(d)));if(this.log("Category dice roll - global tests: %o, conditional tests: %o",l.map(d=>({id:d.id,title:d.title,criteria:this.getEntryCriteriaKey(d)})),c.map(d=>({id:d.id,title:d.title,criteria:this.getEntryCriteriaKey(d)}))),l.length>0&&c.length>0){const d=l.length,u=c.length,h=d+u,p=Math.random()*h;this.state.temporary.testCategory=p<d?"global":"conditional",this.log("Category dice roll: rolled %.2f of %d (global weight: %d, conditional weight: %d), selected '%s'",p,h,d,u,this.state.temporary.testCategory)}else l.length>0?(this.state.temporary.testCategory="global",this.log("Only global tests available, setting category to global")):(this.state.temporary.testCategory="conditional",this.log("Only conditional tests available, setting category to conditional"));this.persistTemporaryState()}const o=this.state.temporary.testCategory;if(this.log("Visitor test category: %s",o),o==="global"){const l=this.testsFilteredByAudience.filter(c=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)));for(const c of l)this.markTestAsBlocked(c,"category:global");t=t.filter(c=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)))}else{const l=this.testsFilteredByAudience.filter(c=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)));for(const c of l)this.markTestAsBlocked(c,"category:conditional");t=t.filter(c=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)))}if(t.length===0)return this.log("No tests remaining after category filter"),!1;this.createReservations(t);const n=this.getReservationForCurrentPage();if(n&&!n.isRealized){const l=this.getHypothesis(n.hypothesisId);if(l){l.type!=="price"&&this.realizeReservationForCriteria(n.entryCriteriaKey);const c=this.considerRedirect(l);return c&&(this.log("Redirecting for new test"),this.redirect(l)),c}}return!1}finally{this.includeInDomTests(),this.saveState()}}includeInDomTests(){this.applyControlForAudienceFilteredPriceTests();const e=this.getDomTestsForCurrentUrl(),t=this.getVisitorDomHypothesis(e);for(const i of e){this.log("Evaluating dom test '%s'",i.id);const s=i.hypotheses.some(p=>p.type==="price");if(this.state.essential.visitorTests.find(p=>p.testId===i.id&&p.isInvalid&&!p.hypothesisId)){if(this.log("Visitor is blocked from test '%s', applying control prices if price test",i.id),s){const p=i.hypotheses.find(b=>b.isControl);p?.priceData&&(this.applyPriceTestWithMapLookup(i.id,p,[p],()=>{this.log("Control prices applied for blocked visitor, no metrics tracked")}),this.updatePriceTestHiddenInputs(i.id,"control",!1))}continue}const o=this.getReservationForTest(i.id);let n=null,l=!1;const c=t.find(p=>i.hypotheses.some(b=>p.id===b.id));if(o)n=this.getHypothesis(o.hypothesisId)??null,this.log("Using reserved hypothesis '%s' for test '%s'",o.hypothesisId,i.id);else if(c)n=c,this.log("Using existing hypothesis assignment for test '%s'",i.id);else if(s){const p=this.visitorActiveTestTypeWithReservations();p?(l=!0,this.log("Visitor already in test type '%s', treating as non-test for price test '%s'",p,i.id)):n=this.pickHypothesis(i)}else n=this.pickHypothesis(i);if(l&&s){const p=i.hypotheses.find(b=>b.isControl);p?.priceData&&(this.log("Applying control prices for non-test visitor on price test '%s' (Map-based)",i.id),this.applyPriceTestWithMapLookup(i.id,p,[p],()=>{this.log("Control prices applied for non-test visitor, no metrics tracked")}
63),this.updatePriceTestHiddenInputs(i.id,"control",!1));continue}if(!n){this.log("Failed to pick hypothesis for test");continue}this.sendDiagnosticTelemetry("assignment",i.id,{hypothesisId:n.id,isControl:n.isControl,testType:n.type});const d=i.bayesianRevision??4,u=n.type==="price",h=d>=5;if(u&&h){if(this.log(`Price test with Map-based lookup (v${d}): ${i.id}`),!n.priceData){this.log("No price data for hypothesis '%s', skipping",n.id);continue}const p=n.isControl?"control":"variant";this.log(`Setting up Map-based price test for ${p} (test: ${i.id})`),this.applyPriceTestWithMapLookup(i.id,n,i.hypotheses,b=>{const E=this.getReservationForTest(b);E&&!E.isRealized&&E.entryCriteriaKey?this.realizeReservationForCriteria(E.entryCriteriaKey):this.queueAddVisitorToTest(b,n),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()});continue}if(u&&!h){this.log(`Price test without viewport tracking (v${d}): ${i.id}`);const p=this.getDomSelectorsForHypothesis(n);if(p.length===0)continue;U(document,{testId:i.id,hypothesisId:n.id,selectors:p},b=>{this.queueAddVisitorToTest(b,n),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()});continue}if(!n.domSelectors||n.domSelectors.length===0){this.log("No selectors found, skipping hypothesis");continue}U(document,{testId:i.id,hypothesisId:n.id,selectors:n.domSelectors},p=>{this.queueAddVisitorToTest(p,n),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()})}}considerRedirect(e){if(this.log("Considering redirect for hypothesis '%s'",e.id),e.isControl)return this.log("Skipping redirect for control"),!1;if(e.type==="basicScript"||e.type==="manualScript")return this.log("Skipping redirect for script test"),!1;const t=this.state.essential.visitorTests.find(o=>o.hypothesisId===e.id),i=new URL(window.location.toString()),r=new URLSearchParams(window.location.search).get("view");if(e.type==="theme"){if(!(e.themeId===themeId)){if(this.log("Theme id '%s' is not hypothesis theme ID '%s'",e.themeId,themeId),this.isAppProxyPath())return this.log("On App Proxy path, skipping theme redirect to avoid infinite loop"),!1;if(t&&t.themeId!==e.themeId&&(t.themeId===themeId||!this.isThemePreview()))this.log("On old theme, redirecting and updating local visitor"),t.themeId=e.themeId;else if(this.isThemePreview())return this.log("On non-test theme, skipping redirect"),!1;return this.log("Hiding page to redirect for theme test"),this.hidePage(),!0}return!1}else if(e.type!=="dom"&&e.type!=="price"&&e.affix!==template.suffix&&e.affix!==r||e.redirectPath&&!i.pathname.endsWith(e.redirectPath))return this.log("Hiding page to redirect for template test"),this.hidePage(),!0;return this.log("Not redirecting"),!1}redirect(e){if(this.log("Redirecting to hypothesis '%s'",e.id),e.isControl)return;const t=new URL(window.location.toString());if(t.searchParams.delete("view"),e.redirectPath){const n=RegExp("^(/w{2}-w{2})/").exec(t.pathname);if(n&&n.length>1){const l=n[1];t.pathname=`${l}${e.redirectPath}`}else t.pathname=e.redirectPath}else e.type==="theme"?(t.searchParams.set("_ab","0"),t.searchParams.set("_fd","0"),t.searchParams.set("_sc","1"),t.searchParams.set("preview_theme_id",e.themeId.toString())):e.type!=="urlRedirect"&&t.searchParams.set("view",e.affix);const i=this.state.essential.visitorTests.find(n=>n.hypothesisId===e.id)?.testId,s=t.pathname+t.search,r=window.location.pathname+window.location.search,o=K(t.hash);if(i&&s!==r&&!o){const n=qe(),l=He({v:2,t:i,n,fh:Me(window.location.pathname+window.location.search)});t.hash=`slr-${n}`;const c=new Date(Date.now()+3e4).toUTCString();document.cookie=`shoplift_redirect=${l};domain=.${window.location.hostname};path=/;SameSite=Strict;expires=${c}`}s===r&&this.showPage(),this.queueRedirect(t)}async refreshVisitor(e){if(e===null||!this.state.essential.isFirstLoad||!this.testConfigs.some(i=>i.visitorOption!=="all"))return;this.log("Refreshing visitor"),this.hidePage();const t=await this.getVisitor(e);t&&t.id&&this.updateLocalVisitor(t)}buildBaseVisitor(){return{shopifyAnalyticsId:this.shopifyAnalyticsId,device:this.device,country:null,...this.state.essential.initialState}}getInitialState(){const e=this.getUTMValue("utm_source")??"",t=this.getUTMValue("utm_medium")??"",i=this.getUTMValue("utm_campaign")??"",s=this.getUTMValue("utm_content")??"",r=window.document.referrer,o=this.device;return{createdAt:new Date,utmSource:e,utmMedium:t,utmCampaign:i,utmContent:s,referrer:r,device:o}}checkForThemePreview(){return this.log("Checking for theme preview"),window.location.hostname.endsWith(".shopifypreview.com")?(this.log("on shopify preview domain"),this.clearThemeBar(!0,!1,this.state),document.querySelector("#sl-preview-bar-hide")?.remove(),!1):this.isThemePreview()?this.state.essential.visitorTests.some(e=>e.isThemeTest&&e.hypothesisId!=null&&this.getHypothesis(e.hypothesisId)&&e.themeId===themeId)?(this.log("On active theme test, remov
63ing theme bar"),this.clearThemeBar(!1,!0,this.state),!1):this.state.essential.visitorTests.some(e=>e.isThemeTest&&e.hypothesisId!=null&&!this.getHypothesis(e.hypothesisId)&&e.themeId===themeId)?(this.log("Visitor is on an inactive theme test, redirecting to main theme"),this.redirectToMainTheme(),!0):this.state.essential.isFirstLoad?(this.log("No visitor found on theme preview, redirecting to main theme"),this.redirectToMainTheme(),!0):this.inactiveTestConfigs.some(e=>e.hypotheses.some(t=>t.themeId===themeId))?(this.log("Current theme is an inactive theme test, redirecting to main theme"),this.redirectToMainTheme(),!0):this.testConfigs.some(e=>e.hypotheses.some(t=>t.themeId===themeId))?(this.log("Falling back to clearing theme bar"),this.clearThemeBar(!1,!0,this.state),!1):(this.log("No tests on current theme, skipping script"),this.clearThemeBar(!0,!1,this.state),document.querySelector("#sl-preview-bar-hide")?.remove(),!0):(this.log("Not on theme preview"),this.clearThemeBar(!0,!1,this.state),!1)}redirectToMainTheme(){this.hidePage();const e=new URL(window.location.toString());e.searchParams.set("preview_theme_id",""),this.queueRedirect(e)}testsForUrl(e){const t=new URL(window.location.href),i=this.typeFromTemplate();return e.filter(s=>s.hypotheses.some(r=>r.type!=="dom"&&r.type!=="price"&&(r.isControl&&r.type===i&&r.affix===template.suffix||r.type==="theme"||r.isControl&&r.type==="urlRedirect"&&r.redirectPath&&t.pathname.endsWith(r.redirectPath)||r.type==="basicScript"))&&(s.ignoreTestViewParameterEnforcement||!t.searchParams.has("view")||s.hypotheses.map(r=>r.affix).includes(t.searchParams.get("view")??"")))}domTestsForUrl(e){const t=new URL(window.location.href);return e.filter(i=>i.hypotheses.some(s=>s.type!=="dom"&&s.type!=="price"?!1:s.type==="price"&&s.priceData&&s.priceData.variants.length>0?!0:s.domSelectors&&s.domSelectors.some(r=>new RegExp(se(r)).test(K(t.toString())))))}async filterTestsByAudience(e,t,i){const s=[],r=e.some(n=>(n.requiresRegion||this.geoViaShopify&&n.requiresCountry)&&!i.some(l=>l.testId===n.id));this.resolvedRegion===null&&r&&(this.log("Hiding page to wait for Shopify region resolution"),this.hidePage(),await this.waitForResolvedRegion()),window.__slRegion=this.resolvedRegion??"";let o=t.country;this.geoViaShopify?o=this.resolvedRegion?this.resolvedRegion.slice(0,2):o:!o&&e.some(n=>n.requiresCountry&&!i.some(l=>l.testId===n.id))&&(this.log("Hiding page to check geoip"),this.hidePage(),o=await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/get-country`,signal:AbortSignal.timeout(this.getCountryTimeout)}).catch(n=>(this.log("Error getting country",n),null)));for(const n of e){if(this.log("Checking audience for test '%s'",n.id),this.state.essential.visitorTests.some(d=>d.testId===n.id&&d.hypothesisId==null)){console.log(`Skipping blocked test '${n.id}'`);continue}const l=this.visitorCreatedDuringTestActive(n.statusHistory);(i.some(d=>d.testId===n.id&&(n.device==="all"||n.device===t.device&&n.device===this.device))||this.isTargetAudience(n,t,l,o))&&(this.log("Visitor is in audience for test '%s'",n.id),s.push(n))}this.testsFilteredByAudience=s}async waitForResolvedRegion(e=1500,t=50){const i=Date.now();for(;this.resolvedRegion===null&&Date.now()-i<e;)await new Promise(s=>window.setTimeout(s,t))}isTargetAudience(e,t,i,s){const r=this.getChannel(t);return(e.device==="all"||e.device===t.device&&e.device===this.device)&&(e.visitorOption==="all"||e.visitorOption==="new"&&i||e.visitorOption==="returning"&&!i)&&(e.targetAudiences.length===0||e.targetAudiences.reduce((o,n)=>o||n.reduce((l,c)=>l&&c(t,i,r,s),!0),!1))}visitorCreatedDuringTestActive(e){let t="";for(const i of e){if(this.state.analytics.visitor!==null&&this.state.analytics.visitor.createdAt<i.createdAt||this.state.essential.initialState.createdAt<i.createdAt)break;t=i.status}return t==="active"}getDomTestsForCurrentUrl(){return this.domTestsForUrl(this.testsFilteredByAudience)}getCurrentVisitorHypothesis(e){return e.flatMap(t=>t.hypotheses).find(t=>t.type!=="dom"&&t.type!=="price"&&this.state.essential.visitorTests.some(i=>i.hypothesisId===t.id))}getVisitorDomHypothesis(e){return e.flatMap(t=>t.hypotheses).filter(t=>(t.type==="dom"||t.type==="price")&&this.state.essential.visitorTests.some(i=>i.hypothesisId===t.id))}getHypothesis(e){return this.testConfigs.filter(t=>t.hypotheses.some(i=>i.id===e)).map(t=>t.hypotheses.find(i=>i.id===e))[0]}getActiveAssignment(){if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig;return t.currentVariant&&t.testId?{testId:t.testId,hypothesisId:t.currentVariant}:null}const e=this.state.essential.visitorTests.find(t=>t.hypothesisId);return e?.hypothesisId?{testId:e.testId,hypothesisId:e.hypothesisId}:null}findActiveSubscriptionTestControl(){for(const e of this.testConfigs){const t=e.hypotheses.find(i=>i.isControl);if(t?.subscriptionData)return{testId:e.id,hypothesis:t}}return null}getDomSelectorsForHypothesis(e){if(!e)return[];if(e.domSelectors&&e.domSelectors.length>0)return e.domSelectors;if(e.priceData){const t=`${this.priceSelectorsSessionKey}_${e.id}`;try{const s=sessionStorage.getItem(t);if(s){const r=JSON.parse(s);return e.domSelectors=r,this.log("Loaded %d price selectors from cache for hypothesis '%s'",r.length,e.id),r}}catch{}const i=$e(e.priceData);e.domSelectors=i;try{sessionStorage.setItem(t,JSON.stringify(i)),this.log("Generated and cached %d price selectors for hypothesis '%s'",i.length,e.id)}catch{this.log("Generated %d price selectors for hypothesis '%s' (cache unavailable)",i.length,e.id)}return i}return[]}hasThemeTest(e){return e.some(t=>t.hypotheses.some(i=>i.type==="theme"))}hasTestThatIsNotThemeTest(e){return e.some(t=>t.hypotheses.some(i=>i.type!=="theme"&&i.type!=="dom"&&i.type!=="price"))}hasThemeAndOtherTestTypes(e){return this.hasThemeTest(e)&&this.hasTestThatIsNotThemeTest(e)}testIsPaused(e){return e.status==="paused"||e.status==="incompatible"||e.status==="suspended"}visitorActiveTestType(){const e=this.state.essential.visitorTests.filter(t=>this.testConfigs.some(i=>i.hypotheses.some(s=>s.id==t.hypothesisId)));return e.length===0?null:e.some(t=>t.isThemeTest)?"theme":"templateOrUrlRedirect"}getReservationType(e){return e==="price"||this.isTemplateTestType(e)?"deferred":"immediate"}isTemplateTestType(e){return["product","collection","landing","index","cart","search","blog","article","collectionList"].includes(e)}getEntryCriteriaKey(e){const t=e.hypotheses.find(i=>i.isControl);if(!t)return`unknown:${e.id}`;switch(t.type){case"theme":return"global:theme";case"basicScript":return"global:autoApi";case"price":return"global:price";case"manualScript":return`conditional:manualApi:${e.id}`;case"urlRedirect":return`conditional:url:${t.redirectPath||"unknown"}`;default:return`conditional:template:${t.type}`}}isGlobalEntryCriteria(e){return e.startsWith("global:")}groupTestsByEntryCriteria(e){const t=new Map;for(const i of e){const s=this.getEntryCriteriaKey(i),r=t.get(s)||[];r.push(i),t.set(s,r)}return t}doesCurrentPageMatchEntryCriteria(e){if(this.isGlobalEntryCriteria(e))return!0;
63if(e==="conditional:manualApi")return!1;if(e.startsWith("conditional:url:")){const t=e.replace("conditional:url:","");return window.location.pathname.endsWith(t)}if(e.startsWith("conditional:template:")){const t=e.replace("conditional:template:","");return this.typeFromTemplate()===t}return!1}hasActiveReservation(){const e=this.getActiveReservations();return Object.values(e).some(t=>!t.isRealized)}getActiveReservation(){const e=this.getActiveReservations();return Object.values(e).find(t=>!t.isRealized)??null}clearStaleReservations(){const e=this.state.temporary.testReservations;if(!e)return;let t=!1;for(const[i,s]of Object.entries(e)){const r=this.testConfigs.find(n=>n.id===s.testId);if(!r){this.log("Test '%s' no longer in config, clearing reservation for criteria '%s'",s.testId,i),delete e[i],t=!0;continue}if(r.status!=="active"){this.log("Test '%s' status is '%s', clearing reservation for criteria '%s'",s.testId,r.status,i),delete e[i],t=!0;continue}this.testsFilteredByAudience.some(n=>n.id===s.testId)||(this.log("Visitor no longer passes audience for test '%s', clearing reservation for criteria '%s'",s.testId,i),delete e[i],t=!0)}t&&this.persistTemporaryState()}createReservations(e){if(this.state.temporary.testReservations||(this.state.temporary.testReservations={}),this.state.temporary.rolledEntryCriteria||(this.state.temporary.rolledEntryCriteria=[]),this.state.temporary.testCategory==="global"){this.createSingleReservation(e,"global");return}const i=e.filter(n=>this.doesCurrentPageMatchEntryCriteria(this.getEntryCriteriaKey(n))),s=e.filter(n=>!this.doesCurrentPageMatchEntryCriteria(this.getEntryCriteriaKey(n)));this.log("Conditional tests split - matching current page: %d, not matching: %d",i.length,s.length),i.length>0&&this.log("Tests matching current page (same pool): %o",i.map(n=>({id:n.id,title:n.title,criteria:this.getEntryCriteriaKey(n)})));const r=`conditional:current-page:${this.typeFromTemplate()}`;if(i.length>0&&!this.state.temporary.rolledEntryCriteria.includes(r)){this.createSingleReservation(i,r);for(const n of i){const l=this.getEntryCriteriaKey(n);this.state.temporary.rolledEntryCriteria.includes(l)||this.state.temporary.rolledEntryCriteria.push(l)}}const o=this.groupTestsByEntryCriteria(s);for(const[n,l]of o){if(this.state.temporary.rolledEntryCriteria.includes(n)){this.log("Already rolled for criteria '%s', skipping",n);continue}if(l.some(S=>this.state.essential.visitorTests.some(C=>C.testId===S.id))){this.log("Visitor already has VT for criteria '%s', skipping",n),this.state.temporary.rolledEntryCriteria.push(n);continue}const d=[...l].sort((S,C)=>S.id.localeCompare(C.id));this.log("Test dice roll for criteria '%s' - available tests: %o",n,d.map(S=>({id:S.id,title:S.title})));const u=Math.floor(Math.random()*d.length),h=d[u];this.log("Test dice roll: picked index %d of %d, selected test '%s' (%s)",u+1,l.length,h.id,h.title);const p=this.pickHypothesis(h);if(!p){this.log("No hypothesis picked for test '%s'",h.id);continue}this.sendDiagnosticTelemetry("assignment",h.id,{hypothesisId:p.id,isControl:p.isControl,testType:p.type});const b=this.getReservationType(p.type),E={testId:h.id,hypothesisId:p.id,testType:p.type,reservationType:b,isThemeTest:p.type==="theme",themeId:p.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:n};this.state.temporary.testReservations[n]=E,this.state.temporary.rolledEntryCriteria.push(n),this.log("Created %s reservation for test '%s' (criteria: %s)",b,h.id,n);for(const S of l)S.id!==h.id&&this.markTestAsBlocked(S,n)}this.persistTemporaryState()}createSingleReservation(e,t){if(this.state.temporary.rolledEntryCriteria.includes(t)){this.log("Already rolled for pool '%s', skipping",t);return}if(e.some(u=>this.state.essential.visitorTests.some(h=>h.testId===u.id&&!h.isInvalid))){this.log("Visitor already has VT for pool '%s', skipping",t),this.state.temporary.rolledEntryCriteria.push(t);return}if(e.length===0){this.log("No tests in pool '%s'",t);return}const s=[...e].sort((u,h)=>u.id.localeCompare(h.id));this.log("Test dice roll for pool '%s' - available tests: %o",t,s.map(u=>({id:u.id,title:u.title,criteria:this.getEntryCriteriaKey(u)})));const r=Math.floor(Math.random()*s.length),o=s[r];this.log("Test dice roll: picked index %d of %d, selected test '%s' (%s)",r,e.length,o.id,o.title);const n=this.pickHypothesis(o);if(!n){this.log("No hypothesis picked for test '%s'",o.id);return}this.sendDiagnosticTelemetry("assignment",o.id,{hypothesisId:n.id,isControl:n.isControl,testType:n.type});const l=this.getReservationType(n.type),c=this.getEntryCriteriaKey(o),d={testId:o.id,hypothesisId:n.id,testType:n.type,reservationType:l,isThemeTest:n.type==="theme",themeId:n.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:c};this.state.temporary.testReservations[c]=d,this.state.temporary.rolledEntryCriteria.push(t),this.log("Created %s reservation for test '%s' from pool '%s' (criteria: %s)",l,o.id,t,c);for(const u of e)u.id!==o.id&&this.markTestAsBlocked(u,`pool:${t}`);this.persistTemporaryState()}markTestAsBlocked(e,t){this.state.essential.visitorTests.some(i=>i.testId===e.id)||(this.log("Blocking visitor from test '%s' (reason: %s)",e.id,t),this.state.essential.visitorTests.push({createdAt:new Date,testId:e.id,hypothesisId:null,isThemeTest:e.hypotheses.some(i=>
63i.type==="theme"),shouldSendToGa:!1,isSaved:!0,isInvalid:!0,themeId:void 0}))}realizeReservationForCriteria(e){const t=this.state.temporary.testReservations?.[e];if(!t)return this.log("No reservation found for criteria '%s'",e),!1;if(t.isRealized)return this.log("Reservation already realized for criteria '%s'",e),!1;if(this.state.essential.visitorTests.some(s=>s.testId===t.testId&&!s.isInvalid))return this.log("Visitor already assigned to test '%s'",t.testId),!1;const i=this.getHypothesis(t.hypothesisId);return i?(t.isRealized=!0,this.persistTemporaryState(),this.queueAddVisitorToTest(t.testId,i),this.saveState(),this.log("Realized reservation for test '%s' (criteria: %s)",t.testId,e),!0):(this.log("Hypothesis '%s' not found",t.hypothesisId),!1)}getActiveReservations(){return this.state.temporary.testReservations??{}}getReservationForCurrentPage(){const e=this.getActiveReservations();for(const[t,i]of Object.entries(e)){if(i.isRealized)continue;const s=this.testConfigs.find(r=>r.id===i.testId);if(!(!s||s.status!=="active")&&this.doesCurrentPageMatchEntryCriteria(t))return i}return null}getReservationForTest(e){const t=this.getActiveReservations();return Object.values(t).find(i=>i.testId===e)??null}getReservationTestType(){const e=this.getActiveReservations(),t=Object.values(e);if(t.length===0)return null;for(const i of t)if(i.isThemeTest)return"theme";for(const i of t)if(i.testType==="price")return"price";return t.some(i=>!i.isRealized)?"templateOrUrlRedirect":null}hasPriceTests(e){return e.some(t=>t.hypotheses.some(i=>i.type==="price"))}_priceTestProductIds=null;getPriceTestProductIds(){if(this._priceTestProductIds)return this._priceTestProductIds;const e=new Set;for(const t of this.testConfigs)for(const i of t.hypotheses)if(i.type==="price"){for(const s of i.domSelectors||[]){const r=s.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);r?.[1]&&e.add(r[1])}if(i.priceData?.variants)for(const[s]of i.priceData.variants)e.add(s)}return this._priceTestProductIds=e,this.log("Built price test product ID cache with %d products",e.size),e}isProductInAnyPriceTest(e){return this.getPriceTestProductIds().has(e)}visitorActiveTestTypeWithReservations(){const e=this.getActiveReservations();for(const r of Object.values(e)){if(r.isThemeTest)return"theme";if(r.testType==="price")return"price"}if(Object.values(e).some(r=>!r.isRealized)){if(this.state.temporary.testCategory==="global")for(const o of Object.values(e)){if(o.testType==="theme")return"theme";if(o.testType==="price")return"price";if(o.testType==="basicScript")return"theme"}return"templateOrUrlRedirect"}const i=this.state.essential.visitorTests.filter(r=>!r.isInvalid&&this.testConfigs.some(o=>o.hypotheses.some(n=>n.id===r.hypothesisId)));return i.length===0?null:i.some(r=>this.getHypothesis(r.hypothesisId)?.type==="price")?"price":i.some(r=>r.isThemeTest)?"theme":"templateOrUrlRedirect"}applyControlForAudienceFilteredPriceTests(){const e=this.testConfigs.filter(s=>s.status==="active"&&s.hypotheses.some(r=>r.type==="price"));if(e.length===0)return;const t=this.testsFilteredByAudience.filter(s=>s.hypotheses.some(r=>r.type==="price")),i=e.filter(s=>!t.some(r=>r.id===s.id));if(i.length!==0){this.log("Found %d price tests filtered by audience, applying control selectors",i.length);for(const s of i){const r=s.hypotheses.find(c=>c.isControl),o=this.getDomSelectorsForHypothesis(r);if(o.length===0){this.log("No control selectors for audience-filtered price test '%s'",s.id);continue}const n=new URL(window.location.href);o.some(c=>{try{return new RegExp(se(c)).test(K(n.toString()))}catch{return!1}})&&(this.log("Applying control selectors for audience-filtered price test '%s'",s.id),U(document,{testId:s.id,hypothesisId:r.id,selectors:o},()=>{}),this.updatePriceTestHiddenInputs(s.id,"control",!1))}}}pickHypothesis(e){let t=Math.random();const i=e.hypotheses.reduce((r,o)=>r+o.visitorCount,0);return e.hypotheses.sort((r,o)=>r.isControl?o.isControl?0:-1:o.isControl?1:0).reduce((r,o)=>{if(r!==null)return r;const l=e.hypotheses.reduce((c,d)=>c&&d.visitorCount>20,!0)?o.visitorCount/i-o.trafficPercentage:0;return t<=o.trafficPercentage-l?o:(t-=o.trafficPercentage-l,null)},null)}typeFromTemplate(){switch(template.type){case"list-collections":return"collectionList";case"page":return"landing";case"article":case"blog":case"cart":case"collection":case"index":case"product":case"search":return template.type;default:return null}}queueRedirect(e){this.saveState(),this.disableReferrerOverride||(this.log(`Saving temporary referrer override '${document.referrer}'`),this.state.temporary.originalReferrer=document.referrer,this.persistTemporaryState()),window.setTimeout(()=>window.location.assign(e),0),window.setTimeout(()=>{this.syncAllEvents()},2e3)}scheduleRetrySync(){this.clientIdRetryCount>=5||(this.clientIdRetryCount++,window.setTimeout(()=>{this.syncAllEvents()},500))}async syncAllEvents(){const e=async()=>
63{if(this.isSyncing){window.setTimeout(()=>{(async()=>await e())()},500);return}try{if(this.isSyncing=!0,this.syncGAEvents(),this.shopifyAnalyticsId||(this.shopifyAnalyticsId=this.getShopifyAnalyticsId()),!this.shopifyAnalyticsId){this.scheduleRetrySync();return}await this.syncEvents()}finally{this.isSyncing=!1}};await e()}async syncEvents(){if(!this.state.essential.consentApproved||!this.shopifyAnalyticsId||this.state.analytics.queue.length===0)return;const e=this.state.analytics.queue.length,t=this.state.analytics.queue.splice(0,e);this.log("Syncing %s events",e);try{const i={shop:this.shop,visitorDetails:{shopifyAnalyticsId:this.shopifyAnalyticsId,device:this.state.analytics.visitor?.device??this.device,country:this.state.analytics.visitor?.country??null,...this.state.essential.initialState},events:this.state.essential.visitorTests.filter(r=>!r.isInvalid&&!r.isSaved&&r.hypothesisId!=null).map(r=>new be(r.testId,r.hypothesisId,r.createdAt)).concat(t)};await this.sendEvents(i);for(const r of this.state.essential.visitorTests.filter(o=>!o.isInvalid&&!o.isSaved&&o.hypothesisId!=null))this.sendDiagnosticTelemetry("event-delivered",r.testId,{hypothesisId:r.hypothesisId,isControl:r.assignedTo==="control",testType:r.testType??"unknown"});const s=await this.getVisitor(this.shopifyAnalyticsId);s!==null&&this.updateLocalVisitor(s);for(const r of this.state.essential.visitorTests.filter(o=>!o.isInvalid&&!o.isSaved))r.isSaved=!0,r.savedAt=Date.now()}catch{this.state.analytics.queue.splice(0,0,...t)}finally{this.saveState()}}syncGAEvents(){if(!this.gaConfig.sendEvents){if(he)return;he=!0,this.log("UseGtag is false — skipping GA Events");return}if(this.isSyncingGA){this.log("Already syncing GA - skipping GA events");return}const e=this.state.essential.visitorTests.filter(t=>t.shouldSendToGa);e.length!==0&&(this.isSyncingGA=!0,this.log("Syncing %s GA Events",e.length),Promise.allSettled(e.map(t=>this.sendGAEvent(t))).then(()=>this.log("All gtag events sent")).finally(()=>this.isSyncingGA=!1))}sendGAEvent(e){return new Promise(t=>{this.log("Sending GA Event for test %s, hypothesis %s",e.testId,e.hypothesisId);const i=()=>{this.log("GA acknowledged event for hypothesis %s",e.hypothesisId),e.shouldSendToGa=!1,this.persistEssentialState(),t()},s={exp_variant_string:`SL-${e.testId}-${e.hypothesisId}`};
63this.shopliftDebug&&Object.assign(s,{debug_mode:!0});function r(o,n,l){window.dataLayer=window.dataLayer||[],window.dataLayer.push(arguments)}this.gaConfig.mode==="gtag"?r("event","experience_impression",{...s,event_callback:i}):(window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"experience_impression",...s,eventCallback:i}))})}updateLocalVisitor(e){let t;({visitorTests:t,...this.state.analytics.visitor}=e),this.log("updateLocalVisitor - server returned %d tests: %o",t.length,t.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isInvalid:s.isInvalid}))),this.log("updateLocalVisitor - local has %d tests: %o",this.state.essential.visitorTests.length,this.state.essential.visitorTests.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isSaved:s.isSaved,isInvalid:s.isInvalid})));const i=300*1e3;for(const s of this.state.essential.visitorTests.filter(r=>r.isSaved&&(!r.savedAt||Date.now()-r.savedAt>i)&&!t.some(o=>o.testId===r.testId)))this.log("updateLocalVisitor - marking LOCAL test as INVALID (isSaved && not in server): testId=%s, hypothesisId=%s",s.testId,s.hypothesisId),s.isInvalid=!0;for(const s of t){const r=this.state.essential.visitorTests.findIndex(n=>n.testId===s.testId);if(!(r!==-1))this.log("updateLocalVisitor - ADDING server test (not found locally): testId=%s, hypothesisId=%s",s.testId,s.hypothesisId),this.state.essential.visitorTests.push(s);else{const n=this.state.essential.visitorTests.at(r);this.log("updateLocalVisitor - REPLACING local test with server test: testId=%s, local hypothesisId=%s -> server hypothesisId=%s, local isInvalid=%s -> false",s.testId,n?.hypothesisId,s.hypothesisId,n?.isInvalid),s.isInvalid=!1,s.shouldSendToGa=n?.shouldSe
63ndToGa??!1,s.testType=n?.testType,s.assignedTo=n?.assignedTo,s.testTitle=n?.testTitle,this.state.essential.visitorTests.splice(r,1,s)}}this.log("updateLocalVisitor - FINAL local tests: %o",this.state.essential.visitorTests.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isSaved:s.isSaved,isInvalid:s.isInvalid}))),this.state.analytics.visitor.storedAt=new Date}async getVisitor(e){try{return await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/by-key/${this.shop}/${e}`})}catch{return null}}async sendEvents(e){await this.makeRequest({method:"post",url:`${this.eventHost}/api/v0/events`,data:JSON.stringify(e)})}sendDiagnosticTelemetry(e,t,i){if(!this.telemetryEnabled||!navigator.sendBeacon)return;const s=this.state.essential.consentApproved,r=JSON.stringify({shop:this.shop,testId:t,checkpoint:e,device:this.device,...s?{visitorId:this.shopifyAnalyticsId??"unknown"}:{},clientTimestamp:Date.now(),consentApproved:s,hasConsentInteraction:this.state.essential.hasConsentInteraction,...i});navigator.sendBeacon(`${this.eventHost}/api/v0/telemetry`,new Blob([r],{type:"text/plain"}))}getUTMValue(e){const i=decodeURIComponent(window.location.search.substring(1)).split("&");for(let s=0;s<i.length;s++){const r=i[s].split("=");if(r[0]===e)return r[1]||null}return null}hidePage(e){this.log("Hiding page"),this.cssHideClass&&!window.document.documentElement.classList.contains(this.cssHideClass)&&(window.document.documentElement.classList.add(this.cssHideClass),e||setTimeout(this.removeAsyncHide(this.cssHideClass),2e3))}showPage(){this.cssHideClass&&this.removeAsyncHide(this.cssHideClass)()}getDeviceType(){function e(){let i=!1;return(function(s){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(s)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(s.substr(0,4)))&&(i=!0)})(navigator.userAgent||navigator.vendor),i}function t(){let i=!1;return(function(s){(/android|ipad|playbook|silk/i.test(s)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|
63sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(s.substr(0,4)))&&(i=!0)})(navigator.userAgent||navigator.vendor),i}return e()?"mobile":t()?"tablet":"desktop"}removeAsyncHide(e){return()=>{e&&window.document.documentElement.classList.remove(e)}}async getCartState(){try{let e=await this.makeJsonRequest({method:"get",url:`${window.location.origin}/cart.js`});return e===null||(e.note===null&&(e=await this.makeJsonRequest({method:"post",url:`${window.location.origin}/cart/update.js`,data:JSON.stringify({note:""})})),e==null)?null:{token:e.token,total_price:e.total_price,total_discount:e.total_discount,currency:e.currency,items_subtotal_price:e.items_subtotal_price,items:e.items.map(t=>({quantity:t.quantity,variant_id:t.variant_id,key:t.key,price:t.price,final_line_price:t.final_line_price,sku:t.sku,product_id:t.product_id}))}}catch(e){return this.log("Error sending cart info",e),null}}ensureCartAttributesForExistingPriceTests(e){try{if(this.log("Checking visitor assignments for active price tests"),e&&this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig;this.log("Using preview config for merchant:",t.testId);let i="variant";if(t.variants&&t.variants.length>0){const s=t.variants.find(r=>r.id===t.currentVariant);s&&s.isControl&&(i="control")}this.log("Merchant preview - updating hidden inputs:",t.testId,i),this.updatePriceTestHiddenInputs(t.testId,i,!0);return}for(const t of this.state.essential.visitorTests){const i=this.testConfigs.find(o=>o.id===t.testId);if(!i){this.log("Test config not found:",t.testId);continue}const s=i.hypotheses.find(o=>o.id===t.hypothesisId);if(!s||s.type!=="price")continue;const r=s.isControl?"control":"variant";this.log("Updating hidden inputs for price test:",t.testId,r),this.updatePriceTestHiddenInputs(t.testId,r,e)}}catch(t){this.log("Error ensuring cart attributes for existing price tests:",t)}}subscriptionSwapDone=!1;subscriptionHideWrongPlans=null;subscriptionPriceDone=!1;subscriptionUpdateOneTime=null;subscriptionOneTimeDone=!1;swapMap=null;slptValue=null;async subscriptionSwap(){await Ue(this)}async subscriptionPriceChange(){await ze(this)}async subscriptionOneTimePrice(){await We(this)}updatePriceTestHiddenInputs(e,t,i){try{this.cleanupPriceTestObservers();const s=`${e}:${t}:${i?"t":"f"}`,r=T=>{const m=T.getAttribute("data-sl-pid");if(!m)return!0;if(i&&this.state.temporary.previewConfig){const w=this.state.temporary.previewConfig,I=t==="control"?"a":"b",f=w.variants.find(v=>v.label===I);if(!f)return!1;for(const v of f.domSelectors||[]){const g=v.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(g){const P=g[1];if(this.log(`Extracted ID from selector: ${P}, comparing to: ${m}`),P===m)return this.log("Product ID match found in preview config:",m,"variant:",f.label),!0}else this.log(`Could not extract ID from selector: ${v.cssSelector}`)}return this.log("No product ID match in preview config for:",m,"variant:",I),!1}const y=this.testConfigs.find(w=>w.id===e);if(!y)return this.log("Test config not found for testId:",e),!1;for(const w of y.hypotheses||[]){for(const I of w.domSelectors||[]){const f=I.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(f&&f[1]===m)return this.log("Product ID match found in domSelectors:",m,"for test:",e),!0}if(w.priceData?.variants){for(const I of w.priceData.variants)if(I[0]===m)return this.log("Product ID match found in priceData:",m,"for test:",e),!0}}return this.log("No product ID match for:",m,"in test:",e),!1},o=new Set;let n=!1,l=null;const c=(T,m)=>{if(document.querySelectorAll("[data-sl-attribute-p]").forEach(w=>{if(w instanceof Element&&w.nodeType===Node.ELEMENT_NODE&&w.isConnected&&document.contains(w))try{T.observe(w,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(I){this.log(`Failed to observe element (${m}):`,I)}}),document.body&&document.body.isConnected)try{T.observe(document.body,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(w){this.log(`Failed to observe document.body (${m}):`,w)}},d=(T,m,y,w)=>{const I=T.filter(f=>{const v=f.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);return v&&v[1]===w});this.log(`Applying ${y} DOM selectors, total: ${T.length}, filtered: ${I.length}`),I.length>0&&U(document,{testId:e,hypothesisId:m,selectors:I})},u=(T,m)=>{this.log(`Applying DOM selector changes for product ID: ${T}`),m.disconnect(),n=!0;try{if(i&&this.state.temporary.previewConfig){const y=t==="control"?"a":"b",w=this.state.temporary.previewConfig.variants.find(I=>I.label===y);if(!w?.domSelectors){this.log(`No DOM selectors found for preview variant: ${y}`);return}d(w.domSelectors,w.id,"preview config",T)}else{const y=this.testConfigs.find(I=>I.id===e);if(!y){this.log(`No test config found for testId: ${e}`);return}const w=y.hypotheses.find(I=>t==="control"?I.isControl:!I.isControl);if(!w?.domSelectors){this.log(`No DOM selectors found for assignment: ${t}`);return}d(w.domSelectors,w.id,"live config",T)}}finally{l!==null&&clearTimeout(l),l=window.setTimeout(()=>{n=!1,l=null,c(m,"reconnection"),this.log("Re-established innerHTML observer after DOM changes")}
63,50)}},h=new MutationObserver(T=>{if(!n)for(const m of T){if(m.type!=="childList"&&m.type!=="characterData")continue;let y=m.target;m.type==="characterData"&&(y=m.target.parentElement||m.target.parentNode);let w=y,I=w.getAttribute("data-sl-attribute-p");for(;!I&&w.parentElement;)w=w.parentElement,I=w.getAttribute("data-sl-attribute-p");if(!I)continue;const f=w.innerHTML||w.textContent||"";let v="";m.type==="characterData"&&m.oldValue!==null&&(v=m.oldValue),this.log(`innerHTML changed on element with data-sl-attribute-p="${I}"`),v&&this.log(`Previous content: "${v}"`),this.log(`Current content: "${f}"`),u(I,h)}});c(h,"initial setup"),o.add(h);const p=new MutationObserver(T=>{T.forEach(m=>{m.addedNodes.forEach(y=>{if(y.nodeType===Node.ELEMENT_NODE){const w=y;E(w);const I=w.matches('input[name="properties[_slpt]"]')?[w]:w.querySelectorAll('input[name="properties[_slpt]"]');I.length>0&&this.log(`MutationObserver found ${I.length} new hidden input(s)`),I.forEach(f=>{const v=f.getAttribute("data-sl-pid");if(this.log(`MutationObserver checking new input with data-sl-pid="${v}"`),r(f))f.value!==s&&(f.value=s,this.log("Updated newly added hidden input:",s)),S(f);else{const g=f.getAttribute("data-sl-pid");g&&this.isProductInAnyPriceTest(g)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",g):(f.remove(),this.log("Removed newly added non-matching hidden input for product ID:",g))}})}})})});o.add(p);const b=new MutationObserver(T=>{T.forEach(m=>{if(m.type==="attributes"&&m.attributeName==="data-sl-pid"){const y=m.target;if(this.log("AttributeObserver detected data-sl-pid attribute change on:",y.tagName),y.matches('input[name="properties[_slpt]"]')){const w=y,I=m.oldValue,f=w.getAttribute("data-sl-pid");this.log(`data-sl-pid changed from "${I}" to "${f}" - triggering payment placement updates`),r(w)?(w.value!==s&&(w.value=s,this.log("Updated hidden input after data-sl-pid change:",s)),f&&u(f,h),this.log("Re-running payment placement updates after variant change"),E(document.body)):f&&this.isProductInAnyPriceTest(f)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",f):(w.remove(),this.log("Removed non-matching hidden input after data-sl-pid change:",f))}}})});o.add(b);const E=T=>{T.tagName==="SHOPIFY-PAYMENT-TERMS"&&(this.log("MutationObserver found new shopify-payment-terms element"),this.updateShopifyPaymentTerms(e,t));const m=T.querySelectorAll("shopify-payment-terms");m.length>0&&(this.log(`MutationObserver found ${m.length} shopify-payment-terms in added node`),this.updateShopifyPaymentTerms(e,t)),T.tagName==="AFTERPAY-PLACEMENT"&&(this.log("MutationObserver found new afterpay-placement element"),this.updateAfterpayPlacements(e,t,"afterpay"));const y=T.querySelectorAll("afterpay-placement");y.length>0&&(this.log(`MutationObserver found ${y.length} afterpay-placement in added node`),this.updateAfterpayPlacements(e,t,"afterpay")),T.tagName==="SQUARE-PLACEMENT"&&(this.log("MutationObserver found new square-placement element"),this.updateAfterpayPlacements(e,t,"square"));const w=T.querySelectorAll("square-placement");w.length>0&&(this.log(`MutationObserver found ${w.length} square-placement in added node`),this.updateAfterpayPlacements(e,t,"square")),T.tagName==="KLARNA-PLACEMENT"&&(this.log("MutationObserver found new klarna-placement element"),this.updateKlarnaPlacements(e,t));const I=T.querySelectorAll("klarna-placement");I.length>0&&(this.log(`MutationObserver found ${I.length} klarna-placement in added node`),this.updateKlarnaPlacements(e,t))},S=T=>{b.observe(T,{attributes:!0,attributeFilter:["data-sl-pid"],attributeOldValue:!0,subtree:!1});const m=T.getAttribute("data-sl-pid");this.log(`Started AttributeObserver on specific input with data-sl-pid="${m}"`)},C=()=>{const T=document.querySelectorAll('input[name="properties[_slpt]"]');this.log(`Found ${T.length} existing hidden inputs to check`),T.forEach(m=>{const y=m.getAttribute("data-sl-pid");this.log(`Checking existing input with data-sl-pid="${y}"`),r(m)?(m.value=s,this.log("Updated existing hidden input:",s),y&&(this.log("Applying initial DOM selector changes for existing product"),u(y,h)),S(m)):y&&this.isProductInAnyPriceTest(y)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",
63y):(m.remove(),this.log("Removed non-matching hidden input for product ID:",y))})},_=()=>{document.body?(p.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver on document.body"),C(),E(document.body)):document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>{document.body&&(p.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver after DOMContentLoaded"),C(),E(document.body))}):(this.log("Set timeout on observer"),setTimeout(_,10))};_(),window.__shopliftPriceTestObservers=o,window.__shopliftPriceTestValue=s,this.log("Set up DOM observer for price test hidden inputs")}catch(s){this.log("Error updating price test hidden inputs:",s)}}updateKlarnaPlacements(e,t){this.updatePlacementElements(e,t,"klarna-placement",(i,s)=>{i.setAttribute("data-purchase-amount",s.toString())})}cleanupPriceTestObservers(){const e=window.__shopliftPriceTestObservers;e&&(e.forEach(t=>{t.disconnect()}),e.clear(),this.log("Cleaned up existing price test observers")),delete window.__shopliftPriceTestObservers,delete window.__shopliftPriceTestValue}updateAfterpayPlacements(e,t,i="afterpay"){const s=i==="square"?"square-placement":"afterpay-placement";if(document.querySelectorAll(s).length===0){this.log(`No ${s} elements found on page - early return`);return}this.updatePlacementElements(e,t,s,(o,n)=>{if(i==="afterpay"){const l=(n/100).toFixed(2);o.setAttribute("data-amount",l)}else o.setAttribute("data-amount",n.toString())}),this.log("updateAfterpayPlacements completed")}updatePlacementElements(e,t,i,s){const r=document.querySelectorAll(i);if(r.length===0){this.log(`No ${i} elements found - early return`);return}let o;if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const l=t==="control"?"a":"b",c=this.state.temporary.previewConfig.variants.find(d=>d.label===l);if(!c?.domSelectors){this.log(`No variant found for label ${l} in preview config for ${i}`);return}o=c.domSelectors,this.log(`Using preview config for ${i} in merchant mode, variant: ${l}`)}else{const l=this.testConfigs.find(d=>d.id===e);if(!l){this.log(`No testConfig found for id: ${e} - early return`);return}
63const c=l.hypotheses.find(d=>t==="control"?d.isControl:!d.isControl);if(!c?.domSelectors){this.log(`No hypothesis or domSelectors found for assignment: ${t} - early return`);return}o=c.domSelectors}const n=new RegExp(`${this.DATA_SL_ATTRIBUTE_P}=["'](\\d+)["']`);r.forEach(l=>{let c=null;const d=l.parentElement;if(d&&(c=d.querySelector('input[name="properties[_slpt]"]')),c||(c=l.querySelector('input[name="properties[_slpt]"]')),!c){this.log(`No hidden input found for ${i} element`);return}const u=c.getAttribute("data-sl-pid");if(!u){this.log("Hidden input has no data-sl-pid attribute - skipping");return}const h=o.find(S=>{const C=S.cssSelector.match(n);return C&&C[1]===u});if(!h){this.log(`No matching selector found for productId: ${u} - skipping element`);return}const p=h.actions.find(S=>S.scope==="price");if(!p?.value){this.log("No price action or value found - skipping element");return}const b=parseFloat(p.value.replace(/[^0-9.]/g,""));if(Number.isNaN(b)){this.log(`Invalid price "${p.value}" for product ${u} - skipping`);return}const E=Math.round(b*100);s(l,E)}),this.log(`updatePlacementElements completed for ${i}`)}updateShopifyPaymentTerms(e,t){const i=document.querySelectorAll("shopify-payment-terms");if(i.length===0)return;this.log("Store using shopify payments");let s;if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const o=t==="control"?"a":"b",n=this.state.temporary.previewConfig.variants.find(l=>l.label===o);if(!n||!n.domSelectors){this.log(`No variant found for label ${o} in preview config`);return}s=n.domSelectors,this.log(`Using preview config for shopify-payment-terms in merchant mode, variant: ${o}`)}else{const o=this.testConfigs.find(l=>l.id===e);if(!o)return;const n=o.hypotheses.find(l=>t==="control"?l.isControl===!0:l.isControl===!1);if(!n||!n.domSelectors)return;s=n.domSelectors}const r=new RegExp(`${this.DATA_SL_ATTRIBUTE_P}=["'](\\d+)["']`);i.forEach(o=>{const n=o.getAttribute("variant-id");if(!n)return;const l=s.find(c=>{const d=c.cssSelector.match(r);return d&&d[1]===n});if(l){const c=l.actions.find(d=>d.scope==="price");if(c&&c.value){const d=o.getAttribute("shopify-meta");if(d)try{const u=JSON.parse(d);if(u.variants&&Array.isArray(u.variants)){const h=u.variants.find(p=>p.id?.toString()===n);if(h){h.full_price=c.value;const p=parseFloat(c.value.replace(/[^0-9.]/g,""));if(h.number_of_payment_terms&&h.number_of_payment_terms>1){const b=p/h.number_of_payment_terms;h.price_per_term=`$${b.toFixed(2)}`}o.setAttribute("shopify-meta",JSON.stringify(u))}}}catch(u){this.log("Error parsing/updating shoplift-meta:",u)}}}})}async makeJsonRequest(e){const t=await this.makeRequest(e);return t===null?null:JSON.parse(await t.text(),F)}async makeRequest(e){const{url:t,method:i,headers:s,data:r,signal:o}=e,n=new Headers;if(s)for(const c in s)n.append(c,s[c]);(!s||!s.Accept)&&n.append("Accept","application/json"),(!s||!s["Content-Type"])&&n.append("Content-Type","application/json"),(this.eventHost.includes("ngrok.io")||this.eventHost.includes("ngrok-free.app"))&&n.append("ngrok-skip-browser-warning","1234");const l=await this.fetch(t,{method:i,headers:n,body:r,signal:o});if(!l.ok){if(l.status===204)return null;if(l.status===422){const c=await l.json();if(typeof c<"u"&&c.isBot)throw new ie}throw new Error(`Error sending shoplift request ${l.status}`)}return l}queueAddVisitorToTest(e,t){if(this.state.essential.visitorTests.some(s=>s.testId===e))return;const i=this.testConfigs.find(s=>s.id===e);if(this.state.essential.visitorTests.push({createdAt:new Date,testId:e,hypothesisId:t.id,isThemeTest:t.type==="theme",themeId:t.themeId,isSaved:!1,isInvalid:!1,shouldSendToGa:!0,testType:t.type,assignedTo:t.isControl?"control":"variant",testTitle:i?.title}),t.type==="price"){const s=t.isControl?"control":"variant";this.log("Price test assignment detected, updating cart attributes:",e,s),this.updatePriceTestHiddenInputs(e,s,!1)}}queueCartUpdate(e){this.queueEvent(new Ce(e))}queuePageView(e){this.queueEvent(new Se(e))}queueEvent(e){!this.state.essential.consentApproved&&this.state.essential.hasConsentInteraction||this.state.analytics.queue.length>10||this.state.analytics.queue.push(e)}legacyGetLocalStorageVisitor(){const e=this.localStorageGet(this.legacySessionKey);if(e)try{return JSON.parse(e,F)}catch{}return null}pruneStaleVisitorTests(){this.state.essential.visitorTests=this.state.essential.visitorTests.filter(e=>this.testConfigs.some(t=>t.id==e.testId)||this.inactiveTestConfigs.filter(t=>this.testIsPaused(t)).some(t=>t.id===e.testId))}pruneStateAndSave(){this.pruneStaleVisitorTests(),this.saveState()}saveState(){this.persistEssentialState(),this.persistAnalyticsState()}loadState(){const e=this.loadAnalyticsState(),t={analytics:e,essential:this.loadEssentialState(e),temporary:this.loadTemporaryState()},i=this.legacyGetLocalStorageVisitor(),s=this.legacyGetCookieVisitor(),r=[i,s].filter(o=>o!==null).sort((o,n)=>+n.storedAt-+o.storedAt)[0];return t.analytics.visitor===null&&r&&({visitorTests:t.essential.visitorTests,...t.analytics.visitor}=r,t.essential.isFirstLoad=!1,t.essential.initialState={createdAt:r.createdAt,referrer:r.referrer,utmCampaign:r.utmCampaign,utmContent:r.utmContent,utmMedium:r.utmMedium,utmSource:r.utmSource,device:r.device},this.deleteCookie("SHOPLIFT"),this.deleteLocalStorage(this.legacySessionKey)),!t.essential.consentApproved&&t.essential.hasConsentInteraction&&this.deleteLocalStorage(this.analyticsSessionKey),t}loadEssentialState(e){const t=this.loadLocalStorage(this.essentialSessionKey),i=this.loadCookie(this.essentialSessionKey),s=this.getInitialState();e.visitor?.device&&(s.device=e.visitor.device);const r={timestamp:new Date,consentApproved:!1,hasConsentInteraction:!1,debugMode:!1,initialState:s,visitorTests:[],isFirstLoad:!0},o=[t,i].filter(n=>n!==null).sort((n,l)=>+l.timestamp-+n.timestamp)[0]??r;return o.initialState||(e.visitor!==null?o.initialState=e.visitor:(o.initialState=s,o.initialState.createdAt=o.timestamp)),o}loadAnalyticsState(){const e=this.loadLocalStorage(this.analyticsSessionKey),t=this.loadCookie(this.analyticsSessionKey),i={timestamp:new Date,visitor:null,queue:[]},s=[e,t].filter(r=>r!==null).sort((r,o)=>+o.timestamp-+r.timestamp)[0]??i;return s.queue.length===0&&e&&e.queue.length>1&&(s.queue=e.queue),s}loadTemporaryState(){const e=this.sessionStorageGet(this.temporarySessionKey),t=e?JSON.parse(e,F):null,i=this.loadCookie(this.temporarySessionKey);return t??i??{isMerchant:!1,timestamp:new Date}}persistEssentialState(){this.log("Persisting essential state"),this.state.essential.isFirstLoad=!1,this.state.essential.timestamp=new Date,this.persistLocalStorageState(this.essentialSessionKey,this.state.essential),this.persist
63CookieState(this.essentialSessionKey,this.state.essential)}persistAnalyticsState(){this.log("Persisting analytics state"),this.state.essential.consentApproved&&(this.state.analytics.timestamp=new Date,this.persistLocalStorageState(this.analyticsSessionKey,this.state.analytics),this.persistCookieState(this.analyticsSessionKey,{...this.state.analytics,queue:[]}))}persistTemporaryState(){this.log("Setting temporary session state"),this.state.temporary.timestamp=new Date,this.sessionStorageSet(this.temporarySessionKey,JSON.stringify(this.state.temporary)),this.persistCookieState(this.temporarySessionKey,this.state.temporary,!0)}loadLocalStorage(e){const t=this.localStorageGet(e);if(t===null)return null;try{return JSON.parse(t,F)}catch{return null}}loadCookie(e){const t=this.getCookie(e);if(t===null)return null;try{return JSON.parse(t,F)}catch{return null}}persistLocalStorageState(e,t){this.localStorageSet(e,JSON.stringify(t))}persistCookieState(e,t,i=!1){const s=JSON.stringify(t),r=i?"":`expires=${new Date(new Date().getTime()+864e5*365).toUTCString()};`;document.cookie=`${e}=${s};domain=.${window.location.hostname};path=/;SameSite=Strict;${r}`}deleteCookie(e){const t=new Date(0).toUTCString();document.cookie=`${e}=;domain=.${window.location.hostname};path=/;expires=${t};`}deleteLocalStorage(e){window.localStorage.removeItem(e)}getChannel(e){return[{"name":"cross-network","test":(v) => new RegExp(".*cross-network.*", "i").test(v.utmCampaign)},{"name":"direct","test":(v) => v.utmSource === "" && v.utmMedium === ""},{"name":"paid-shopping","test":(v) => (new RegExp("^(?:Google|IGShopping|aax-us-east\.amazon-adsystem\.com|aax\.amazon-adsystem\.com|alibaba|alibaba\.com|amazon|amazon\.co\.uk|amazon\.com|apps\.shopify\.com|checkout\.shopify\.com|checkout\.stripe\.com|cr\.shopping\.naver\.com|cr2\.shopping\.naver\.com|ebay|ebay\.co\.uk|ebay\.com|ebay\.com\.au|ebay\.de|etsy|etsy\.com|m\.alibaba\.com|m\.shopping\.naver\.com|mercadolibre|mercadolibre\.com|mercadolibre\.com\.ar|mercadolibre\.com\.mx|message\.alibaba\.com|msearch\.shopping\.naver\.com|nl\.shopping\.net|no\.shopping\.net|offer\.alibaba\.com|one\.walmart\.com|order\.shopping\.yahoo\.co\.jp|partners\.shopify\.com|s3\.amazonaws\.com|se\.shopping\.net|shop\.app|shopify|shopify\.com|shopping\.naver\.com|shopping\.yahoo\.co\.jp|shopping\.yahoo\.com|shopzilla|shopzilla\.com|simplycodes\.com|store\.shopping\.yahoo\.co\.jp|stripe|stripe\.com|uk\.shopping\.net|walmart|walmart\.com)$", "i").test(v.utmSource) || new RegExp("^(.*(([^a-df-z]|^)shop|shopping).*)$", "i").test(v.utmCampaign)) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-search","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|y
63andex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-social","test":(v) => new RegExp("^(?:43things|43things\.com|51\.com|5ch\.net|Hatena|ImageShack|academia\.edu|activerain|activerain\.com|activeworlds|activeworlds\.com|addthis|addthis\.com|airg\.ca|allnurses\.com|allrecipes\.com|alumniclass|alumniclass\.com|ameba\.jp|ameblo\.jp|americantowns|americantowns\.com|amp\.reddit\.com|ancestry\.com|anobii|anobii\.com|answerbag|answerbag\.com|answers\.yahoo\.com|aolanswers|aolanswers\.com|apps\.facebook\.com|ar\.pinterest\.com|artstation\.com|askubuntu|askubuntu\.com|asmallworld\.com|athlinks|athlinks\.com|away\.vk\.com|awe\.sm|b\.hatena\.ne\.jp|baby-gaga|baby-gaga\.com|babyblog\.ru|badoo|badoo\.com|bebo|bebo\.com|beforeitsnews|beforeitsnews\.com|bharatstudent|bharatstudent\.com|biip\.no|biswap\.org|bit\.ly|blackcareernetwork\.com|blackplanet|blackplanet\.com|blip\.fm|blog\.com|blog\.feedspot\.com|blog\.goo\.ne\.jp|blog\.naver\.com|blog\.yahoo\.co\.jp|blogg\.no|bloggang\.com|blogger|blogger\.com|blogher|blogher\.com|bloglines|bloglines\.com|blogs\.com|blogsome|blogsome\.com|blogspot|blogspot\.com|blogster|blogster\.com|blurtit|blurtit\.com|bookmarks\.yahoo\.co\.jp|bookmarks\.yahoo\.com|br\.pinterest\.com|brightkite|brightkite\.com|brizzly|brizzly\.com|business\.facebook\.com|buzzfeed|buzzfeed\.com|buzznet|buzznet\.com|cafe\.naver\.com|cafemom|cafemom\.com|camospace|camospace\.com|canalblog\.com|care\.com|care2|care2\.com|caringbridge\.org|catster|catster\.com|cbnt\.io|cellufun|cellufun\.com|centerblog\.net|chat\.zalo\.me|chegg\.com|chicagonow|chicagonow\.com|chiebukuro\.yahoo\.co\.jp|classmates|classmates\.com|classquest|classquest\.com|co\.pinterest\.com|cocolog-nifty|cocolog-nifty\.com|copainsdavant\.linternaute\.com|couchsurfing\.org|cozycot|cozycot\.com|cross\.tv|crunchyroll|crunchyroll\.com|cyworld|cyworld\.com|cz\.pinterest\.com|d\.hatena\.ne\.jp|dailystrength\.org|deluxe\.com|deviantart|deviantart\.com|dianping|dianping\.com|digg|digg\.com|diigo|diigo\.com|discover\.hubpages\.com|disqus|disqus\.com|dogster|dogster\.com|dol2day|dol2day\.com|doostang|doostang\.com|dopplr|dopplr\.com|douban|douban\.com|draft\.blogger\.com|draugiem\.lv|drugs-forum|drugs-forum\.com|dzone|dzone\.com|edublogs\.org|elftown|elftown\.com|epicurious\.com|everforo\.com|exblog\.jp|extole|extole\.com|facebook|facebook\.com|faceparty|faceparty\.com|fandom\.com|fanpop|fanpop\.com|fark|fark\.com|fb|fb\.me|fc2|fc2\.com|feedspot|feministing|feministing\.com|filmaffinity|filmaffinity\.com|flickr|flickr\.com|flipboard|flipboard\.com|folkdirect|folkdirect\.com|foodservice|foodservice\.com|forums\.androidcentral\.com|forums\.crackberry\.com|forums\.imore\.com|forums\.nexopia\.com|forums\.webosnation\.com|forums\.wpcentral\.com|fotki|fotki\.com|fotolog|fotolog\.com|foursquare|foursquare\.com|free\.facebook\.com|friendfeed|friendfeed\.com|fruehstueckstreff\.org|fubar|fubar\.com|gaiaonline|gaiaonline\.com|gamerdna|gamerdna\.com|gather\.com|geni\.com|getpocket\.com|glassboard|glassboard\.com|glassdoor|glassdoor\.com|godtube|godtube\.com|goldenline\.pl|goldstar|goldstar\.com|goo\.gl|gooblog|goodreads|goodreads\.com|google\+|googlegroups\.com|googleplus|govloop|govloop\.com|gowalla|gowalla\.com|gree\.jp|groups\.google\.com|gulli\.com|gutefrage\.net|habbo|habbo\.com|hi5|hi5\.com|hootsuite|hootsuite\.com|houzz|houzz\.com|hoverspot|hoverspot\.com|hr\.com|hu\.pinterest\.com|hubculture|hubculture\.com|hubpages\.com|hyves\.net|hyves\.nl|ibibo|ibibo\.com|id\.pinterest\.com|identi\.ca|ig|imageshack\.com|imageshack\.us|imvu|imvu\.com|in\.pinterest\.com|insanejournal|insanejournal\.com|instagram|instagram\.com|instapaper|instapaper\.com|internations\.org|interpals\.net|intherooms|intherooms\.com|irc-galleria\.net|is\.gd|italki|italki\.com|jammerdirect|jammerdirect\.com|jappy\.com|jappy\.de|kaboodle\.com|kakao|kakao\.com|kakaocorp\.com|kaneva|kaneva\.com|kin\.naver\.com|l\.facebook\.com|l\.instagram\.com|l\.messenger\.com|last\.fm|librarything|librarything\.com|lifestream\.aol\.com|line|line\.me|linkedin|linkedin\.com|listal|listal\.com|listography|listography\.com|livedoor\.com|livedoorblog|livejournal|livejournal\.com|lm\.facebook\.com|lnkd\.in|m\.blog\.naver\.com|m\.cafe\.naver\.com|m\.facebook\.com|m\.kin\.naver\.com|m\.vk\.com|m\.yelp\.com|mbga\.jp|medium\.com|meetin\.org|meetup|meetup\.com|meinvz\.net|meneame\.net|menuism\.com|messages\.google\.com|messages\.yahoo\.co\.jp|messenger|messenger\.com|mix\.com|mixi\.jp|mobile\.facebook\.com|mocospace|mocospace\.com|mouthshut|mouthshut\.com|movabletype|movabletype\.com|mubi|mubi\.com|my\.o
63pera\.com|myanimelist\.net|myheritage|myheritage\.com|mylife|mylife\.com|mymodernmet|mymodernmet\.com|myspace|myspace\.com|netvibes|netvibes\.com|news\.ycombinator\.com|newsshowcase|nexopia|ngopost\.org|niconico|nicovideo\.jp|nightlifelink|nightlifelink\.com|ning|ning\.com|nl\.pinterest\.com|odnoklassniki\.ru|odnoklassniki\.ua|okwave\.jp|old\.reddit\.com|oneworldgroup\.org|onstartups|onstartups\.com|opendiary|opendiary\.com|oshiete\.goo\.ne\.jp|out\.reddit\.com|over-blog\.com|overblog\.com|paper\.li|partyflock\.nl|photobucket|photobucket\.com|pinboard|pinboard\.in|pingsta|pingsta\.com|pinterest|pinterest\.at|pinterest\.ca|pinterest\.ch|pinterest\.cl|pinterest\.co\.kr|pinterest\.co\.uk|pinterest\.com|pinterest\.com\.au|pinterest\.com\.mx|pinterest\.de|pinterest\.es|pinterest\.fr|pinterest\.it|pinterest\.jp|pinterest\.nz|pinterest\.ph|pinterest\.pt|pinterest\.ru|pinterest\.se|pixiv\.net|pl\.pinterest\.com|playahead\.se|plurk|plurk\.com|plus\.google\.com|plus\.url\.google\.com|pocket\.co|posterous|posterous\.com|pro\.homeadvisor\.com|pulse\.yahoo\.com|qapacity|qapacity\.com|quechup|quechup\.com|quora|quora\.com|qzone\.qq\.com|ravelry|ravelry\.com|reddit|reddit\.com|redux|redux\.com|renren|renren\.com|researchgate\.net|reunion|reunion\.com|reverbnation|reverbnation\.com|rtl\.de|ryze|ryze\.com|salespider|salespider\.com|scoop\.it|screenrant|screenrant\.com|scribd|scribd\.com|scvngr|scvngr\.com|secondlife|secondlife\.com|serverfault|serverfault\.com|shareit|sharethis|sharethis\.com|shvoong\.com|sites\.google\.com|skype|skyrock|skyrock\.com|slashdot\.org|slideshare\.net|smartnews\.com|snapchat|snapchat\.com|social|sociallife\.com\.br|socialvibe|socialvibe\.com|spaces\.live\.com|spoke|spoke\.com|spruz|spruz\.com|ssense\.com|stackapps|stackapps\.com|stackexchange|stackexchange\.com|stackoverflow|stackoverflow\.com|stardoll\.com|stickam|stickam\.com|studivz\.net|suomi24\.fi|superuser|superuser\.com|sweeva|sweeva\.com|t\.co|t\.me|tagged|tagged\.com|taggedmail|taggedmail\.com|talkbiznow|talkbiznow\.com|taringa\.net|techmeme|techmeme\.com|tencent|tencent\.com|tiktok|tiktok\.com|tinyurl|tinyurl\.com|toolbox|toolbox\.com|touch\.facebook\.com|tr\.pinterest\.com|travellerspoint|travellerspoint\.com|tripadvisor|tripadvisor\.com|trombi|trombi\.com|trustpilot|tudou|tudou\.com|tuenti|tuenti\.com|tumblr|tumblr\.com|tweetdeck|tweetdeck\.com|twitter|twitter\.com|twoo\.com|typepad|typepad\.com|unblog\.fr|urbanspoon\.com|ushareit\.com|ushi\.cn|vampirefreaks|vampirefreaks\.com|vampirerave|vampirerave\.com|vg\.no|video\.ibm\.com|vk\.com|vkontakte\.ru|wakoopa|wakoopa\.com|wattpad|wattpad\.com|web\.facebook\.com|web\.skype\.com|webshots|webshots\.com|wechat|wechat\.com|weebly|weebly\.com|weibo|weibo\.com|wer-weiss-was\.de|weread|weread\.com|whatsapp|whatsapp\.com|wiki\.answers\.com|wikihow\.com|wikitravel\.org|woot\.com|wordpress|wordpress\.com|wordpress\.org|xanga|xanga\.com|xing|xing\.com|yahoo-mbga\.jp|yammer|yammer\.com|yelp|yelp\.co\.uk|yelp\.com|youroom\.in|za\.pinterest\.com|zalo|zoo\.gr|zooppa|zooppa\.com)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-video","test":(v) => new RegExp("^(?:blog\.twitch\.tv|crackle|crackle\.com|curiositystream|curiositystream\.com|d\.tube|dailymotion|dailymotion\.com|dashboard\.twitch\.tv|disneyplus|disneyplus\.com|fast\.wistia\.net|help\.hulu\.com|help\.netflix\.com|hulu|hulu\.com|id\.twitch\.tv|iq\.com|iqiyi|iqiyi\.com|jobs\.netflix\.com|justin\.tv|m\.twitch\.tv|m\.youtube\.com|music\.youtube\.com|netflix|netflix\.com|player\.twitch\.tv|player\.vimeo\.com|ted|ted\.com|twitch|twitch\.tv|utreon|utreon\.com|veoh|veoh\.com|viadeo\.journaldunet\.com|vimeo|vimeo\.com|wistia|wistia\.com|youku|youku\.com|youtube|youtube\.com)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"display","test":(v) => new RegExp("^(?:display|banner|expandable|interstitial|cpm)$", "i").test(v.utmMedium)},{"name":"paid-other","test":(v) => new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)}
63,{"name":"organic-shopping","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|yandex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) || new RegExp("^(.*(([^a-df-z]|^)shop|shopping).*)$", "i").test(v.utmCampaign)},{"name":"organic-social","test":(v) => new RegExp("^(?:43things|43things\.com|51\.com|5ch\.net|Hatena|ImageShack|academia\.edu|activerain|activerain\.com|activeworlds|activeworlds\.com|addthis|addthis\.com|airg\.ca|allnurses\.com|allrecipes\.com|alumniclass|alumniclass\.com|ameba\.jp|ameblo\.jp|americantowns|americantowns\.com|amp\.reddit\.com|ancestry\.com|anobii|anobii\.com|answerbag|answerbag\.com|answers\.yahoo\.com|aolanswers|aolanswers\.com|apps\.facebook\.com|ar\.pinterest\.com|artstation\.com|askubuntu|askubuntu\.com|asmallworld\.com|athlinks|athlinks\.com|away\.vk\.com|awe\.sm|b\.hatena\.ne\.jp|baby-gaga|baby-gaga\.com|babyblog\.ru|badoo|badoo\.com|bebo|bebo\.com|beforeitsnews|beforeitsnews\.com|bharatstudent|bharatstudent\.com|biip\.no|biswap\.org|bit\.ly|blackcareernetwork\.com|blackplanet|blackplanet\.com|blip\.fm|blog\.com|blog\.feedspot\.com|blog\.goo\.ne\.jp|blog\.naver\.com|blog\.yahoo\.co\.jp|blogg\.no|bloggang\.com|blogger|blogger\.com|blogher|blogher\.com|bloglines|bloglines\.com|blogs\.com|blogsome|blogsome\.com|blogspot|blogspot\.com|blogster|blogster\.com|blurtit|blurtit\.com|bookmarks\.yahoo\.co\.jp|bookmarks\.yahoo\.com|br\.pinterest\.com|brightkite|brightkite\.com|brizzly|brizzly\.com|business\.facebook\.com|buzzfeed|buzzfeed\.com|buzznet|buzznet\.com|cafe\.naver\.com|cafemom|cafemom\.com|camospace|camospace\.com|canalblog\.com|care\.com|care2|care2\.com|caringbridge\.org|catster|catster\.com|cbnt\.io|cellufun|cellufun\.com|centerblog\.net|chat\.zalo\.me|chegg\.com|chicagonow|chicagonow\.com|chiebukuro\.yahoo\.co\.jp|classmates|classmates\.com|classquest|classquest\.com|co\.pinterest\.com|cocolog-nifty|cocolog-nifty\.com|copainsdavant\.linternaute\.com|couchsurfing\.org|cozycot|cozycot\.com|cross\.tv|crunchyroll|crunchyroll\.com|cyworld|cyworld\.com|cz\.pinterest\.com|d\.hatena\.ne\.jp|dailystrength\.org|deluxe\.com|deviantart|deviantart\.com|dianping|dianping\.com|digg|digg\.com|diigo|diigo\.com|discover\.hubpages\.com|disqus|disqus\.com|dogster|dogster\.com|dol2day|dol2day\.com|doostang|doostang\.com|dopplr|dopplr\.com|douban|douban\.com|draft\.blogger\.com|draugiem\.lv|drugs-forum|drugs-forum\.com|dzone|dzone\.com|edublogs\.org|elftown|elftown\.com|epicurious\.com|everforo\.com|exblog\.jp|extole|extole\.com|facebook|facebook\.com|faceparty|faceparty\.com|fandom\.com|fanpop|fanpop\.com|fark|fark\.com|fb|fb\.me|fc2|fc2\.com|feedspot|feministing|feministing\.com|filmaffinity|filmaffinity\.com|flickr|flickr\.com|flipboard|flipboard\.com|folkdirect|folkdirect\.com|foodservice|foodservice\.com|forums\.androidcentral\.com|forums\.crackberry\.com|forums\.imore\.com|forums\.nexopia\.com|forums\.webosnation\.com|forums\.wpcentral\.com|fotki|fotki\.com|fotolog|fotolog\.com|foursquare|foursquare\.com|free\.facebook\.com|friendfeed|friendfeed\.com|fruehstueckstreff\.org|fubar|fubar\.com|gaiaonline|gaiaonline\.com|gamerdna|gamerdna\.com|gather\.com|geni\.com|getpocket\.com|glassboard|glassboard\.com|glassdoor|glassdoor\.com|godtube|godtube\.com|goldenline\.pl|goldstar|goldstar\.com|goo\.gl|gooblog|goodreads|goodreads\.com|google\+|googlegroups\.com|googleplus|govloop|govloop\.com|gowalla|gowalla\.com|gree\.jp|groups\.google\.com|gulli\.com|gutefrage\.net|habbo|habbo\.com|hi5|hi5\.com|hootsuite|hootsuite\.com|houzz|houzz\.com|hoverspot|hoverspot\.com|hr\.com|hu\.pinterest\.com|hubculture|hubculture\.com|hubpages\.com|hyves\.net|hyves\.nl|ibibo|ibibo\.com|id\.pinterest\.com|identi\.ca|ig|imageshack\.com|imageshack\.us|imvu|imvu\.com|in\.pinterest\.com|insanejournal|insanejournal\.com|instagram|instagram\.com|instapaper|instapaper\.com|internations\.org|interpals\.net|intherooms|intherooms\.com|irc-galleria\.net|is\.gd|italki|italki\.com|jammerdirect|jammerdirect\.com|jappy\.com|jappy\.de|kaboodle\.com|k
63akao|kakao\.com|kakaocorp\.com|kaneva|kaneva\.com|kin\.naver\.com|l\.facebook\.com|l\.instagram\.com|l\.messenger\.com|last\.fm|librarything|librarything\.com|lifestream\.aol\.com|line|line\.me|linkedin|linkedin\.com|listal|listal\.com|listography|listography\.com|livedoor\.com|livedoorblog|livejournal|livejournal\.com|lm\.facebook\.com|lnkd\.in|m\.blog\.naver\.com|m\.cafe\.naver\.com|m\.facebook\.com|m\.kin\.naver\.com|m\.vk\.com|m\.yelp\.com|mbga\.jp|medium\.com|meetin\.org|meetup|meetup\.com|meinvz\.net|meneame\.net|menuism\.com|messages\.google\.com|messages\.yahoo\.co\.jp|messenger|messenger\.com|mix\.com|mixi\.jp|mobile\.facebook\.com|mocospace|mocospace\.com|mouthshut|mouthshut\.com|movabletype|movabletype\.com|mubi|mubi\.com|my\.opera\.com|myanimelist\.net|myheritage|myheritage\.com|mylife|mylife\.com|mymodernmet|mymodernmet\.com|myspace|myspace\.com|netvibes|netvibes\.com|news\.ycombinator\.com|newsshowcase|nexopia|ngopost\.org|niconico|nicovideo\.jp|nightlifelink|nightlifelink\.com|ning|ning\.com|nl\.pinterest\.com|odnoklassniki\.ru|odnoklassniki\.ua|okwave\.jp|old\.reddit\.com|oneworldgroup\.org|onstartups|onstartups\.com|opendiary|opendiary\.com|oshiete\.goo\.ne\.jp|out\.reddit\.com|over-blog\.com|overblog\.com|paper\.li|partyflock\.nl|photobucket|photobucket\.com|pinboard|pinboard\.in|pingsta|pingsta\.com|pinterest|pinterest\.at|pinterest\.ca|pinterest\.ch|pinterest\.cl|pinterest\.co\.kr|pinterest\.co\.uk|pinterest\.com|pinterest\.com\.au|pinterest\.com\.mx|pinterest\.de|pinterest\.es|pinterest\.fr|pinterest\.it|pinterest\.jp|pinterest\.nz|pinterest\.ph|pinterest\.pt|pinterest\.ru|pinterest\.se|pixiv\.net|pl\.pinterest\.com|playahead\.se|plurk|plurk\.com|plus\.google\.com|plus\.url\.google\.com|pocket\.co|posterous|posterous\.com|pro\.homeadvisor\.com|pulse\.yahoo\.com|qapacity|qapacity\.com|quechup|quechup\.com|quora|quora\.com|qzone\.qq\.com|ravelry|ravelry\.com|reddit|reddit\.com|redux|redux\.com|renren|renren\.com|researchgate\.net|reunion|reunion\.com|reverbnation|reverbnation\.com|rtl\.de|ryze|ryze\.com|salespider|salespider\.com|scoop\.it|screenrant|screenrant\.com|scribd|scribd\.com|scvngr|scvngr\.com|secondlife|secondlife\.com|serverfault|serverfault\.com|shareit|sharethis|sharethis\.com|shvoong\.com|sites\.google\.com|skype|skyrock|skyrock\.com|slashdot\.org|slideshare\.net|smartnews\.com|snapchat|snapchat\.com|social|sociallife\.com\.br|socialvibe|socialvibe\.com|spaces\.live\.com|spoke|spoke\.com|spruz|spruz\.com|ssense\.com|stackapps|stackapps\.com|stackexchange|stackexchange\.com|stackoverflow|stackoverflow\.com|stardoll\.com|stickam|stickam\.com|studivz\.net|suomi24\.fi|superuser|superuser\.com|sweeva|sweeva\.com|t\.co|t\.me|tagged|tagged\.com|taggedmail|taggedmail\.com|talkbiznow|talkbiznow\.com|taringa\.net|techmeme|techmeme\.com|tencent|tencent\.com|tiktok|tiktok\.com|tinyurl|tinyurl\.com|toolbox|toolbox\.com|touch\.facebook\.com|tr\.pinterest\.com|travellerspoint|travellerspoint\.com|tripadvisor|tripadvisor\.com|trombi|trombi\.com|trustpilot|tudou|tudou\.com|tuenti|tuenti\.com|tumblr|tumblr\.com|tweetdeck|tweetdeck\.com|twitter|twitter\.com|twoo\.com|typepad|typepad\.com|unblog\.fr|urbanspoon\.com|ushareit\.com|ushi\.cn|vampirefreaks|vampirefreaks\.com|vampirerave|vampirerave\.com|vg\.no|video\.ibm\.com|vk\.com|vkontakte\.ru|wakoopa|wakoopa\.com|wattpad|wattpad\.com|web\.facebook\.com|web\.skype\.com|webshots|webshots\.com|wechat|wechat\.com|weebly|weebly\.com|weibo|weibo\.com|wer-weiss-was\.de|weread|weread\.com|whatsapp|whatsapp\.com|wiki\.answers\.com|wikihow\.com|wikitravel\.org|woot\.com|wordpress|wordpress\.com|wordpress\.org|xanga|xanga\.com|xing|xing\.com|yahoo-mbga\.jp|yammer|yammer\.com|yelp|yelp\.co\.uk|yelp\.com|youroom\.in|za\.pinterest\.com|zalo|zoo\.gr|zooppa|zooppa\.com)$", "i").test(v.utmSource) || new RegExp("^(?:social|social-network|social-media|sm|social network|social media)$", "i").test(v.utmMedium)},{"name":"organic-video","test":(v) => new RegExp("^(?:blog\.twitch\.tv|crackle|crackle\.com|curiositystream|curiositystream\.com|d\.tube|dailymotion|dailymotion\.com|dashboard\.twitch\.tv|disneyplus|disneyplus\.com|fast\.wistia\.net|help\.hulu\.com|help\.netflix\.com|hulu|hulu\.com|id\.twitch\.tv|iq\.com|iqiyi|iqiyi\.com|jobs\.netflix\.com|justin\.tv|m\.twitch\.tv|m\.youtube\.com|music\.youtube\.com|netflix|netflix\.com|player\.twitch\.tv|player\.vimeo\.com|ted|ted\.com|twitch|twitch\.tv|utreon|utreon\.com|veoh|veoh\.com|viadeo\.journaldunet\.com|vimeo|vimeo\.com|wistia|wistia\.com|youku|youku\.com|youtube|youtube\.com)$", "i").test(v.utmSource) || new RegExp("^(.*video.*)$", "i").test(v.utmMedium)},{"name":"organic-search","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|y
63andex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) || v.utmMedium.toLowerCase() === "organic"},{"name":"referral","test":(v) => new RegExp("^(?:referral|app|link)$", "i").test(v.utmMedium)},{"name":"email","test":(v) => new RegExp("^(?:email|e-mail|e_mail|e mail)$", "i").test(v.utmMedium) || new RegExp("^(?:email|e-mail|e_mail|e mail)$", "i").test(v.utmSource)},{"name":"affiliate","test":(v) => v.utmMedium.toLowerCase() === "affiliate"},{"name":"audio","test":(v) => v.utmMedium.toLowerCase() === "audio"},{"name":"sms","test":(v) => v.utmSource.toLowerCase() === "sms" || v.utmMedium.toLowerCase() === "sms"},{"name":"mobile-push-notification","test":(v) => v.utmSource.toLowerCase() === "firebase" || new RegExp("(?:.*mobile.*|.*notification.*|push$)", "i").test(v.utmMedium)}].find(i=>i.test(e))?.name??"other"}getShopifyAnalyticsId(){const e=this.getCookie("_shopify_y");if(e)return e;try{const t=this.localStorageGet("Shoplift_ClientId");if(t)return t}catch{}return null}legacyGetCookieVisitor(){const e=this.getCookie("SHOPLIFT");return e===null?null:JSON.parse(e,F)}getCookie(e){const t=this.cookie.split("; ").filter(i=>i.split("=").at(0)===e).at(0);return t===void 0?null:t.split("=").slice(1).join("=")}monitorConsentChange(){document.addEventListener("visitorConsentCollected",e=>{(async()=>await this.onConsentChange(e.detail.analyticsAllowed,!0))()}),document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>this.loadShopifyConsentApiWithRetry()):this.loadShopifyConsentApiWithRetry()}loadShopifyConsentApiWithRetry(){let e=0;const t=()=>{this.loadShopifyConsentApi()||e++<10&&window.setTimeout(t,100)};t()}loadShopifyConsentApi(){if(window.Shopify){this.log("Loading Shopify features");const e=async()=>{if(!window.Shopify){this.log("Shopify object missing... suddenly?");return}if(window.Shopify.customerPrivacy===void 0){this.log("Shopify CustomerPrivacy api still missing, trying again in 1000ms"),t=window.setTimeout(()=>{(async()=>await e())()},1e3);return}if(this.geoViaShopify){const s=window.Shopify.customerPrivacy.getRegion?.();this.resolvedRegion=typeof s=="string"?s.replace(/-/g,""):""}const i=window.Shopify.customerPrivacy.getTrackingConsent();await this.onConsentChange(window.Shopify.customerPrivacy.analyticsProcessingAllowed(),i==="yes")};let t=window.setTimeout(()=>{(async()=>await e())()},5e3);return window.Shopify.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],i=>{(async()=>{if(window.clearTimeout(t),i){this.log("Error loading consent tracking",i);return}await e()})()}),!0}return!1}async onConsentChange(e,t){try{if(this.log("Consent change detected",e,t),this.state.essential.consentApproved=e,this.state.essential.hasConsentInteraction=t,!this.state.essential.consentApproved){this.state.essential.hasConsentInteraction&&(this.state.analytics.queue.length=0),this.saveState();return}this.cookie=document.cookie,this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.saveState(),await this.syncAllEvents()}catch(i){this.log("Error syncing on consent change",i)}}isThemePreview(){return isThemePreview||themeRole!=="main"}isAppProxyPath(){const e=["/apps/","/tools/","/a/"],t=window.location.pathname;return e.some(i=>t.startsWith(i))}clearThemeBar(e,t,i){const s=structuredClone(i);this.log("Looking for theme bar"),this.waitForElement(null,"body").then(r=>this.waitForElement(r,"#preview-bar-iframe, #PBarNextFrameWrapper").then(o=>(this.log("Found theme bar"),t&&(this.log("Removing theme bar"),o.remove()),e?this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify({...this.debugState(),stateAtEvaluation:s},ee)}):Promise.resolve(null)))).catch(r=>console.error(r))}waitForElement(e,t){return new Promise(i=>{const s=document.querySelector(t);if(s){i(s);return}const r=new MutationObserver(o=>{const n=document.querySelector(t);if(n){r.disconnect(),i(n);return}});r.observe(e??document.documentElement,{childList:!0})})}setDebug(e){this.state.essential.debugMode=e,this.saveState()}log(e,...t){let i=0;const s=e.replace(/%[sdoOfF]/g,r=>{if(i>=t.length)return r;const o=t[i++];return r==="%o"||r==="%O"?JSON.stringify(o):String(o)});this.logHistory.push(`[${new Date().toISOString()}][SL] ${s}`),!(!this.state.essential.debugMode&&!this.shopliftDebug)&&console.debug(`[SL] ${e}`,...t)}debugState(){return{state:this.state,storage:{essential:this.loadLocalStorage(this.essentialSessionKey),analytics:this.loadLocalStorage(this.analyticsSessionKey)},params:{shop:this.shop,host:this.host,eventHost:this.eventHost,cssHideClass:this.cssHideClass,testConfigs:this.testConfigs,inactiveTestConfigs:this.inactiveTestConfigs,sendPageView:this.sendPageView,isShopifyMerchantCookie
63:this.getCookie("is_shopify_merchant"),themeId,url:window.location.href,isThemePreview,themeRole,gaConfig:this.gaConfig},logHistory:this.logHistory}}createViewportObserver(e,t={}){const{threshold:i=this.VIEWPORT_TRACK_THRESHOLD,triggerOnce:s=!0}=t,r=new Set;return new IntersectionObserver(o=>{o.forEach(n=>{if(n.isIntersecting&&!r.has(n.target)){const l=n.target,c=l.getAttribute(this.DATA_SL_TEST_ID);c&&(e(c,l),s&&r.add(l))}})},{threshold:i})}applyChangesWithViewport(e,t,i,s){const r=t.selectorsForViewportTracking??t.selectors,o=n=>{if(this.state.essential.visitorTests.some(h=>h.testId===n)||this.activeViewportObservers.has(n))return;const l=[];if(r.forEach(h=>{e.querySelectorAll(h.cssSelector).forEach(b=>l.push(b))}),l.length===0)return;let c=!1;const d=()=>{c||(c=!0,i(n),u.disconnect(),this.activeViewportObservers.delete(n))},u=this.createViewportObserver(()=>{d()},{triggerOnce:!0,...s});this.activeViewportObservers.set(n,u),this.log(`Created viewport observer for test ${n}, observing ${l.length} elements`),l.forEach(h=>{h.setAttribute(this.DATA_SL_TEST_ID,String(n)),u.observe(h)}),setTimeout(()=>{c||l.forEach(h=>{const p=h.getBoundingClientRect(),b=s?.threshold??this.VIEWPORT_TRACK_THRESHOLD,E=Math.min(p.bottom,window.innerHeight)-Math.max(p.top,0),S=Math.min(p.right,window.innerWidth)-Math.max(p.left,0);p.top<window.innerHeight&&p.bottom>0&&p.left<window.innerWidth&&p.right>0&&E>0&&S>0&&E>=p.height*b&&(this.log(`Price element already visible in viewport for test ${n}:`,h),d())})},100)};t.selectors.length>0&&U(e,t,()=>{}),Te(e,{testId:t.testId,hypothesisId:t.hypothesisId,selectors:r},n=>{o(n)})}applyPriceTestWithMapLookup(e,t,i,s){if(!t.priceData){this.log("No price data for hypothesis '%s'",t.id);return}this.log("Hypothesis '%s' isControl=%s, priceData has %d variants",t.id,t.isControl,t.priceData.variants.length);const r=t.priceData.variants.slice(0,3);for(const[S,C,_]of r)this.log("  Sample priceData: variant=%s, price=%d, compareAt=%d",S,C,_);const o=j(t.priceData),n=new Set;for(const S of i)if(S.priceData)for(const[C]of S.priceData.variants)n.add(C);this.log("Price test Map lookup: %d products in hypothesis, %d total products to track",o.size,n.size);const l=t.priceData,c=new WeakSet;let d=!1;const u="[data-sl-attribute-p], [data-sl-attribute-cap], [data-sl-attribute-discount]",h=S=>{if(c.has(S))return;const C=S.getAttribute("data-sl-attribute-p"),_=S.getAttribute("data-sl-attribute-cap"),T=S.getAttribute("data-sl-attribute-discount"),m=C||_||T;if(!m||!n.has(m))return;c.add(S);const y=o.get(m);y&&(this.log("Applying price for product %s: %d cents (compare at: %d cents)",m,y.priceInCents,y.compareAtPriceInCents),Le(S,m,y,l),this.log("Applied price to element for product %s",m)),!d&&!this.state.essential.visitorTests.some(w=>w.testId===e)&&(S.setAttribute(this.DATA_SL_TEST_ID,String(e)),this.setupElementViewportTracking(S,e,()=>{d||(d=!0,s(e))}))},p=()=>{const S=document.querySelectorAll(u);this.log("Scanning for price elements, found: %d",S.length),S.forEach(h)},b=new MutationObserver(S=>{for(const C of S)C.type==="childList"&&C.addedNodes.forEach(_=>{if(_.nodeType===Node.ELEMENT_NODE){const T=_;(T.hasAttribute("data-sl-attribute-p")||T.hasAttribute("data-sl-attribute-cap")||T.hasAttribute("data-sl-attribute-discount"))&&h(T),T.querySelectorAll(u).forEach(h)}}),C.type==="attributes"&&C.target instanceof Element&&h(C.target)}),E=document.body||document.documentElement;b.observe(E,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-sl-attribute-p","data-sl-attribute-cap","data-sl-attribute-discount"]}),this.log("MutationObserver started for price elements"),p(),document.readyState==="loading"&&document.addEventListener("DOMContentLoaded",()=>{this.log("DOMContentLoaded - rescanning for price elements"),p()}),setTimeout(()=>{this.log("Delayed rescan for price elements"),p()},100),setTimeout(()=>{this.log("Final rescan for price elements"),p()},500)}setupElementViewportTracking(e,t,i){const s=this.VIEWPORT_TRACK_THRESHOLD,r=e.getBoundingClientRect(),o=Math.min(r.bottom,window.innerHeight)-Math.max(r.top,0),n=Math.min(r.right,window.innerWidth)-Math.max(r.left,0);if(r.top<window.innerHeight&&r.bottom>0&&r.left<window.innerWidth&&r.right>0&&o>0&&n>0&&o>=r.height*s){this.log("Price element already visible for test %s",t),i();return}const c=new IntersectionObserver(d=>{for(const u of d)if(u.isIntersecting&&u.intersectionRatio>=s){this.log("Price element entered viewport for test %s",t),c.disconnect(),i();break}},{threshold:s});c.observe(e)}debug(){const e=this.debugState();console.log(JSON.stringify(e,ee,2))}}(async function(){window.shopliftInstance||(window.shopliftInstance=new Ze("wunschgutschein-austria.myshopify.com","https://app.shoplift.ai","https://events.shoplift.ai",false,false,false,{"sendEvents":false,"mode":"gtag"},false,false,1000,[],[{"id":"4ae06246-70db-44cf-8d43-529c9bde8665","bayesianRevision":4,"status":"cancelled","hypotheses":[{"id":"cef91323-daf6-46a4-9393-5a12debf2ccb","type":"theme","themeId":153100091660,"affix":"","isControl":true,"redirectPath":null},{"id":"9f0774f5-7d76-4e80-a846-1343b63ef030","type":"theme","themeId":174143570188,"affix":"","isControl":false,"redirectPath":null}],"ignoreTestViewParameterEnforcement":false}
63],null,false),await window.shopliftInstance.init())})();async function Qe(a,e,t,i){const s=Be({log:i});if(t)return i("[SUB-PREVIEW] A side — no overlay applied; widget renders naturally"),s;const r=a.widget.widgetType,o=e?j(e):null;let n=W(e),l=J(a,n),c=l.discountMap,d=l.maxDiscount;function u(){const f=W(e);f!==n&&(n=f,l=J(a,n),c=l.discountMap,d=l.maxDiscount,i(`[SUB-PREVIEW] scope refreshed currentProductId=${n??"n/a"}, maxDiscount=${d}`))}i(`[SUB-PREVIEW] side=B, currentProductId=${n??"n/a"}, maxDiscount=${d}`);function h(f){if(!e||!o)return null;const v=Z(o),g=v?o.get(v):void 0;return g?{formattedVariantPrice:G(g.priceInCents,e),formattedDiscounted:G(g.priceInCents*(1-f/100),e)}:null}function p(f){const v=Y(a,f);if(!v)return d;const g=D(a,"subscriptionInput"),P=g.length?g[0].selector:'input[name="rc_plan"]',A=v.querySelector(`${P}:checked`);if(A){const k=c[A.value];if(k!==void 0)return k}return d}function b(f){const v=D(a,"subscriptionDiscount");for(const g of v)if(g.selector.includes("badge")||g.selector.includes("__badge")){const P=f.querySelector(g.selector);P?.textContent&&!P.textContent.includes(`${d}%`)&&$(P,A=>N(A,d))}}function E(f,v){const g=h(v);if(!g)return;const P=D(a,"subscriptionCompareAt");for(const A of P){const k=f.querySelector(A.selector)||f.querySelector(`[part~="${A.selector}"]`);k?.textContent&&!k.textContent.includes(g.formattedVariantPrice)&&$(k,x=>/\d/.test(x)?g.formattedVariantPrice:x)}}function S(f,v){const g=h(v);if(!g)return;const P=D(a,"subscriptionPrice");for(const A of P){const k=f.querySelector(A.selector)||f.querySelector(`[part~="${A.selector}"]`);k?.textContent&&!k.textContent.includes(g.formattedDiscounted)&&$(k,x=>/\d/.test(x)?g.formattedDiscounted:x)}}function C(f){const v=D(a,"subscriptionInput"),g=v.length?v[0].selector:'input[name="rc_plan"]',P=D(a,"subscriptionPlanDiscount"),A=P.length?P[0].selector:".rc-plans-button__discount";for(const k of Array.from(f.querySelectorAll("label"))){const x=k.querySelector(g),R=k.querySelector(A);if(x&&R?.textContent){const O=c[x.value];if(O!==void 0){const V=R.textContent.match(/[\d.]+%/)?.[0];V&&V!==`${O}%`&&$(R,L=>N(L,O))}}}}function _(f){const v=f.querySelector("select");if(v)for(const g of Array.from(v.options)){const P=c[g.value];if(P!==void 0&&g.textContent){const A=g.textContent.match(/[\d.]+%/)?.[0];A&&A!==`${P}%`&&(g.textContent=N(g.textContent,P))}}}function T(f){const v=D(a,"onetimePrice");if(!v.length||!e||!o)return;const g=Z(o),P=g?o.get(g):void 0;if(!P)return;const A=G(P.priceInCents,e),k=D(a,"onetimeContainer"),x=k.length?k[0].selector:'[part~="rc-purchase-option__onetime"]',R=f.querySelector(x);if(R)for(const O of v){const V=R.querySelector(`[part~="${O.selector}"]`);V?.textContent&&!V.textContent.includes(A)&&$(V,L=>/\d/.test(L)?A:L)}}function m(f,v){const P=D(a,"subscriptionDiscount").filter(A=>A.selector.includes("benefit")||A.selector==="rc-benefits");for(const A of P){const k=f.querySelector(A.selector);if(k?.shadowRoot){for(const x of Array.from(k.shadowRoot.querySelectorAll("li")))if(x.textContent?.includes("Save")){const R=x.textContent.match(/[\d.]+%/)?.[0];R&&R!==`${v}%`&&$(x,O=>N(O,v))}}}}let y=!1;function w(){if(!y){y=!0;try{u();const f=B(a);if(!f)return;const v=p(f);b(f),E(f,v),S(f,v),T(f);const g=Y(a,f);g&&(r==="buttons"||r==="radio"?C(g):_(g)),m(f,v)}finally{y=!1}}}const I=pe({data:a,runUpdates:w});return function(){I(),s()}}const Xe=Object.freeze(Object.defineProperty({__proto__:null,subscriptionPreviewRender:Qe},Symbol.toStringTag,{value:"Module"}))})(); })("/", { suffix: "", type: "product" }, "main", 174462042380, false)</script>
63
64<!-- End of Shoplift scripts -->
65
66    <meta name="p:domain_verify" content="8c3c9eacc3d09d06151fb3155c7c1fec"/>
67    <meta charset="utf-8">
68    <meta http-equiv="X-UA-Compatible" content="IE=edge">
69    <meta name="viewport" content="width=device-width,initial-scale=1">
70    <meta name="theme-color" content="">
71    
72    
73    <link rel="canonical" href="https://shop.wunschgutschein.at/products/motiv-wunscherfueller">
74<link rel="preconnect" href="https://cdn.shopify.com" crossorigin><link rel="icon" type="image/png" href="//shop.wunschgutschein.at/cdn/shop/files/WGS_Bubble.png?crop=center&height=32&v=1750835004&width=32"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><title>
75      Wunschgutschein - 100 Einlösepartner* - Geschenk für jeden Anlass
76 &ndash; Wunschgutschein Österreich</title>
77
78    
79      <meta name="description" content="Das perfekte Geschenk für jeden Geschmack. Universalgutschein einlösbar für 100 Online-Shop mit kostenloser Grußkarte im Wunscherfüllermotiv. Erfülle Wünsche mit WUNSCHGUTSCHEIN. Gratis Versand ab 40€ oder zum Ausdrucken bestellen. *Änderungen der Partner vorbehalten.">
80    
81
82    
83
84<meta property="og:site_name" content="Wunschgutschein Österreich">
85<meta property="og:url" content="https://shop.wunschgutschein.at/products/motiv-wunscherfueller">
86<meta property="og:title" content="Wunschgutschein - 100 Einlösepartner* - Geschenk für jeden Anlass">
87<meta property="og:type" content="product">
88<meta property="og:description" content="Das perfekte Geschenk für jeden Geschmack. Universalgutschein einlösbar für 100 Online-Shop mit kostenloser Grußkarte im Wunscherfüllermotiv. Erfülle Wünsche mit WUNSCHGUTSCHEIN. Gratis Versand ab 40€ oder zum Ausdrucken bestellen. *Änderungen der Partner vorbehalten."><meta property="og:image" content="http://shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377">
89  <meta property="og:image:secure_url" content="https://shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377">
90  <meta property="og:image:width" content="1358">
91  <meta property="og:image:height" content="1949"><meta property="og:price:amount" content="15,00">
92  <meta property="og:price:currency" content="EUR"><meta name="twitter:site" content="@wunschgutschein"><meta name="twitter:card" content="summary_large_image">
93<meta name="twitter:title" content="Wunschgutschein - 100 Einlösepartner* - Geschenk für jeden Anlass">
94<meta name="twitter:description" content="Das perfekte Geschenk für jeden Geschmack. Universalgutschein einlösbar für 100 Online-Shop mit kostenloser Grußkarte im Wunscherfüllermotiv. Erfülle Wünsche mit WUNSCHGUTSCHEIN. Gratis Versand ab 40€ oder zum Ausdrucken bestellen. *Änderungen der Partner vorbehalten.">
95
96
97    
97<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/constants.js?v=58251544750838685771764247604" defer="defer"></script>
97
98    
98<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/pubsub.js?v=158357773527763999511764247604" defer="defer"></script>
98
99    
99<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/global.js?v=23088936578702132811764247604" defer="defer"></script>
99
100  
100<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
100<meta name="google-site-verification" content="2n5LGo5-UbeOjvN6LK06u5Nkug56rWWuNwemsZ0DRn4">
101<meta name="facebook-domain-verification" content="rlhnsrm3cf0uz58abmcew4wuhabn66">
102<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/55611687117/digital_wallets/dialog">
103<meta id="in-context-paypal-metadata" data-shop-id="55611687117" data-venmo-supported="false" data-environment="production" data-locale="de_DE" data-paypal-v4="true" data-currency="EUR">
104<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="buy" href="/cart/39353929793741:1?ucp/version=2026-08-25" payment="com.google.pay dev.shopify.card"><link rel="alternate" type="application/json+oembed" href="https://shop.wunschgutschein.at/products/motiv-wunscherfueller.oembed">
105<script async="async" src="/checkouts/internal/preloads.js?locale=de-AT&default_configuration_id=6160652"></script>
vendor: 1 bytes, line 105
105
106<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":55611687117,"countryCode":"DE","currencyCode":"EUR","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/55611687117","merchantName":"Wunschgutschein Österreich","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","maestro","masterCard"],"total":{"type":"pending","label":"Wunschgutschein Österreich","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 106
106
107<script id="shopify-features" type="application/json">{"accessToken":"bd14440b8b513840e6c9d26b711e5cac","betas":["rich-media-storefront-analytics"],"domain":"shop.wunschgutschein.at","predictiveSearch":true,"shopId":55611687117,"locale":"de"}</script>
vendor: 1 bytes, line 107
107
108<script>var Shopify = Shopify || {};
109Shopify.shop = "wunschgutschein-austria.myshopify.com";
110Shopify.locale = "de";
111Shopify.currency = {"active":"EUR","rate":"1.0"};
112Shopify.country = "AT";
113Shopify.theme = {"name":"WUN25-wgs-theme-update","id":174462042380,"schema_name":"Sense","schema_version":"13.0.1","theme_store_id":null,"role":"main"};
114Shopify.theme.handle = "null";
115Shopify.theme.style = {"id":null,"handle":null};
116Shopify.cdnHost = "shop.wunschgutschein.at/cdn";
117Shopify.routes = Shopify.routes || {};
118Shopify.routes.root = "/";
119Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
120Shopify.SignInWithShop = Shopify.SignInWithShop || {};
121Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
122Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 122
122
123<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 123
123
124<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 124
124
125<script>
126  window.Shopify = window.Shopify || {};
127  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
128  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
129  window.Shopify.SignInWithShop.eligible = false;
130</script>
vendor: 1 bytes, line 130
130
131<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
vendor: 1 bytes, line 131
131
132<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.de.esm.js"></script>
vendor: 1 bytes, line 132
132
133<script type="module">
134  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.de.esm.js");
135
136  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
137
138</script>
vendor: 1 bytes, line 138
138
139<script>(function() {
140  var isLoaded = false;
141  function asyncLoad() {
142    if (isLoaded) return;
143    isLoaded = true;
144    var urls = ["https:\/\/app.fugu-it.com\/websensor\/scripttoinstall\/shopify?shop=wunschgutschein-austria.myshopify.com","https:\/\/na.shgcdn3.com\/pixel-collector.js?shop=wunschgutschein-austria.myshopify.com"];
145    for (var i = 0; i < urls.length; i++) {
146      var s = document.createElement('script');
147      s.type = 'text/javascript';
148      s.async = true;
149      s.src = urls[i];
150      var x = document.getElementsByTagName('script')[0];
151      x.parentNode.insertBefore(s, x);
152    }
153  };
154  if(window.attachEvent) {
155    window.attachEvent('onload', asyncLoad);
156  } else {
157    window.addEventListener('load', asyncLoad, false);
158  }
159})();</script>
vendor: 1 bytes, line 159
159
160<script id="__st">var __st={"a":55611687117,"offset":7200,"reqid":"b6ec7a10-f856-4805-84f2-e132a21671f7-1790578264","pageurl":"shop.wunschgutschein.at\/products\/motiv-wunscherfueller","u":"417b9adeb8bc","p":"product","rtyp":"product","rid":6558715412685};</script>
vendor: 1 bytes, line 160
160
161<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 161
161
162<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Durch hCaptcha geschützt',privacyText:'Datenschutz',termsText:'Allgemeine Geschäftsbedingungen'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 162
162
163<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//shop.wunschgutschein.at/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 163
163
164<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//shop.wunschgutschein.at/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
164<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 164
164
165<script>
166  window.Shopify = window.Shopify || {};
167  window.Shopify.MCP = window.Shopify.MCP || {};
168  window.Shopify.MCP.enabled = true;
169  window.Shopify.MCP.shop = "wunschgutschein-austria.myshopify.com";
170  window.Shopify.MCP.mcpEndpoint = "https:\/\/shop.wunschgutschein.at\/api\/mcp";
171  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}];
172</script>
vendor: 1 bytes, line 172
172
173<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/shop.wunschgutschein.at\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
174</script>
vendor: 1 bytes, line 174
174
175<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://shop.wunschgutschein.at/cdn/shopifycloud/portable-wallets/latest/portable-wallets.de.js",t.type="module",document.head.appendChild(t)}};
176</script>
vendor: 1 bytes, line 176
176
177<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
178  function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent);
179</script>
vendor: 1 bytes, line 179
179
180<script>
181  function portableWalletsCleanup(e){e&&e.src&&console.error("Failed to load portable wallets script "+e.src);var t=document.querySelectorAll("shopify-accelerated-checkout .shopify-payment-button__skeleton, shopify-accelerated-checkout-cart .wallet-cart-button__skeleton"),e=document.getElementById("shopify-buyer-consent");for(let e=0;e<t.length;e++)t[e].remove();e&&e.remove()}function portableWalletsNotLoadedAsModule(e){e instanceof ErrorEvent&&"string"==typeof e.message&&e.message.includes("import.meta")&&"string"==typeof e.filename&&e.filename.includes("portable-wallets")&&(window.removeEventListener("error",portableWalletsNotLoadedAsModule),window.Shopify.PaymentButton.failedToLoad=e,"loading"===document.readyState?document.addEventListener("DOMContentLoaded",window.Shopify.PaymentButton.init):window.Shopify.PaymentButton.init())}window.addEventListener("error",portableWalletsNotLoadedAsModule);
182</script>
182
183
184<script type="module" src="https://shop.wunschgutschein.at/cdn/shopifycloud/portable-wallets/latest/portable-wallets.de.js" onError="portableWalletsCleanup(this)" crossorigin="anonymous"></script>
vendor: 1 bytes, line 184
184
185<script nomodule>
186  document.addEventListener("DOMContentLoaded", portableWalletsCleanup);
187</script>
187
188
189<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://shop.wunschgutschein.at/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
190<style id="shopify-accelerated-checkout-cart">
191        #shopify-buyer-consent {
192  margin-top: 1em;
193  display: inline-block;
194  width: 100%;
195}
196
197#shopify-buyer-consent.hidden {
198  display: none;
199}
200
201#shopify-subscription-policy-button {
202  background: none;
203  border: none;
204  padding: 0;
205  text-decoration: underline;
206  font-size: inherit;
207  cursor: pointer;
208}
209
210#shopify-subscription-policy-button::before {
211  box-shadow: none;
212}
213
214      </style>
215<script id="sections-script" data-sections="header" defer="defer" src="//shop.wunschgutschein.at/cdn/shop/t/38/compiled_assets/scripts.js?v=151693474856991496591764247604"></script>
vendor: 1 bytes, line 215
215
216<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
216
217  
218
219
220
221
222
223  
223<script type="text/javascript">
224    
225      window.__shgMoneyFormat = window.__shgMoneyFormat || {"EUR":{"currency":"EUR","currency_symbol":"€","currency_symbol_location":"right","decimal_places":2,"decimal_separator":",","thousands_separator":"."}};
226    
227    window.__shgCurrentCurrencyCode = window.__shgCurrentCurrencyCode || {
228      currency: "EUR",
229      currency_symbol: "€",
230      decimal_separator: ".",
231      thousands_separator: ",",
232      decimal_places: 2,
233      currency_symbol_location: "left"
234    };
235  </script>
235
236
237
238
239
240
241    <style data-shopify>
242      @font-face {
243  font-family: Lato;
244  font-weight: 400;
245  font-style: normal;
246  font-display: swap;
247  src: url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_n4.c3b93d431f0091c8be23185e15c9d1fee1e971c5.woff2") format("woff2"),
248       url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_n4.d5c00c781efb195594fd2fd4ad04f7882949e327.woff") format("woff");
249}
250
251      @font-face {
252  font-family: Lato;
253  font-weight: 700;
254  font-style: normal;
255  font-display: swap;
256  src: url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_n7.900f219bc7337bc57a7a2151983f0a4a4d9d5dcf.woff2") format("woff2"),
257       url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_n7.a55c60751adcc35be7c4f8a0313f9698598612ee.woff") format("woff");
258}
259
260      @font-face {
261  font-family: Lato;
262  font-weight: 400;
263  font-style: italic;
264  font-display: swap;
265  src: url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_i4.09c847adc47c2fefc3368f2e241a3712168bc4b6.woff2") format("woff2"),
266       url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_i4.3c7d9eb6c1b0a2bf62d892c3ee4582b016d0f30c.woff") format("woff");
267}
268
269      @font-face {
270  font-family: Lato;
271  font-weight: 700;
272  font-style: italic;
273  font-display: swap;
274  src: url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_i7.16ba75868b37083a879b8dd9f2be44e067dfbf92.woff2") format("woff2"),
275       url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_i7.4c07c2b3b7e64ab516aa2f2081d2bb0366b9dce8.woff") format("woff");
276}
277
278      @font-face {
279  font-family: Lato;
280  font-weight: 400;
281  font-style: normal;
282  font-display: swap;
283  src: url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_n4.c3b93d431f0091c8be23185e15c9d1fee1e971c5.woff2") format("woff2"),
284       url("//shop.wunschgutschein.at/cdn/fonts/lato/lato_n4.d5c00c781efb195594fd2fd4ad04f7882949e327.woff") format("woff");
285}
286
287
288      
289        :root,
290        .color-scheme-1 {
291          --color-background: 255,255,255;
292        
293          --gradient-background: #ffffff;
294        
295
296        
297
298        --color-foreground: 46,42,57;
299        --color-background-contrast: 191,191,191;
300        --color-shadow: 46,42,57;
301        --color-button: 204,9,30;
302        --color-button-text: 253,251,247;
303        --color-secondary-button: 255,255,255;
304        --color-secondary-button-text: 46,42,57;
305        --color-link: 46,42,57;
306        --color-badge-foreground: 46,42,57;
307        --color-badge-background: 255,255,255;
308        --color-badge-border: 46,42,57;
309        --payment-terms-background-color: rgb(255 255 255);
310      }
311      
312        
313        .color-scheme-2 {
314          --color-background: 242,242,242;
315        
316          --gradient-background: linear-gradient(0deg, rgba(242, 242, 242, 1) 25%, rgba(242, 242, 242, 1) 100%);
317        
318
319        
320
321        --color-foreground: 46,42,57;
322        --color-background-contrast: 178,178,178;
323        --color-shadow: 46,42,57;
324        --color-button: 204,9,30;
325        --color-button-text: 255,255,255;
326        --color-secondary-button: 242,242,242;
327        --color-secondary-button-text: 204,9,30;
328        --color-link: 204,9,30;
329        --color-badge-foreground: 46,42,57;
330        --color-badge-background: 242,242,242;
331        --color-badge-border: 46,42,57;
332        --payment-terms-background-color: rgb(242 242 242);
333      }
334      
335        
336        .color-scheme-3 {
337          --color-background: 46,42,57;
338        
339          --gradient-background: #2e2a39;
340        
341
342        
343
344        --color-foreground: 253,251,247;
345        --color-background-contrast: 58,53,72;
346        --color-shadow: 46,42,57;
347        --color-button: 253,251,247;
348        --color-button-text: 46,42,57;
349        --color-secondary-button: 46,42,57;
350        --color-secondary-button-text: 253,251,247;
351        --color-link: 253,251,247;
352        --color-badge-foreground: 253,251,247;
353        --color-badge-background: 46,42,57;
354        --color-badge-border: 253,251,247;
355        --payment-terms-background-color: rgb(46 42 57);
356      }
357      
358        
359        .color-scheme-4 {
360          --color-background: 244,242,241;
361        
362          --gradient-background: #f4f2f1;
363        
364
365        
366
367        --color-foreground: 28,37,63;
368        --color-background-contrast: 188,176,170;
369        --color-shadow: 46,42,57;
370        --color-button: 28,37,63;
371        --color-button-text: 28,37,63;
372        --color-secondary-button: 244,242,241;
373        --color-secondary-button-text: 28,37,63;
374        --color-link: 28,37,63;
375        --color-badge-foreground: 28,37,63;
376        --color-badge-background: 244,242,241;
377        --color-badge-border: 28,37,63;
378        --payment-terms-background-color: rgb(244 242 241);
379      }
380      
381        
382        .color-scheme-5 {
383          --color-background: 94,54,83;
384        
385          --gradient-background: radial-gradient(rgba(61, 38, 59, 1), rgba(57, 41, 61, 1) 38%, rgba(29, 43, 54, 1) 70%, rgba(14, 35, 43, 1) 100%);
386        
387
388        
389
390        --color-foreground: 255,255,255;
391        --color-background-contrast: 13,7,11;
392        --color-shadow: 255,255,255;
393        --color-button: 255,255,255;
394        --color-button-text: 255,255,255;
395        --color-secondary-button: 94,54,83;
396        --color-secondary-button-text: 255,255,255;
397        --color-link: 255,255,255;
398        --color-badge-foreground: 255,255,255;
399        --color-badge-background: 94,54,83;
400        --color-badge-border: 255,255,255;
401        --payment-terms-background-color: rgb(94 54 83);
402      }
403      
404        
405        .color-scheme-eeeec793-a7af-48a8-a79b-f51793438c52 {
406          --color-background: 204,9,30;
407        
408          --gradient-background: #cc091e;
409        
410
411        
412
413        --color-foreground: 255,255,255;
414        --color-background-contrast: 82,4,12;
415        --color-shadow: 191,13,32;
416        --color-button: 253,251,247;
417        --color-button-text: 204,9,30;
418        --color-secondary-button: 204,9,30;
419        --color-secondary-button-text: 255,255,255;
420        --color-link: 255,255,255;
421        --color-badge-foreground: 255,255,255;
422        --color-badge-background: 204,9,30;
423        --color-badge-border: 255,255,255;
424        --payment-terms-background-color: rgb(204 9 30);
425      }
426      
427
428      body, .color-scheme-1, .color-scheme-2, .color-scheme-3, .color-scheme-4, .color-scheme-5, .color-scheme-eeeec793-a7af-48a8-a79b-f51793438c52 {
429        color: rgba(var(--color-foreground), 0.75);
430        background-color: rgb(var(--color-background));
431      }
432
433      :root {
434        --font-body-family: Lato, sans-serif;
435        --font-body-style: normal;
436        --font-body-weight: 400;
437        --font-body-weight-bold: 700;
438
439        --font-heading-family: Lato, sans-serif;
440        --font-heading-style: normal;
441        --font-heading-weight: 400;
442
443        --font-body-scale: 1.0;
444        --font-heading-scale: 1.0;
445
446        --media-padding: px;
447        --media-border-opacity: 0.1;
448        --media-border-width: 0px;
449        --media-radius: 0px;
450        --media-shadow-opacity: 0.0;
451        --media-shadow-horizontal-offset: 10px;
452        --media-shadow-vertical-offset: 0px;
453        --media-shadow-blur-radius: 20px;
454        --media-shadow-visible: 0;
455
456        --page-width: 100rem;
457        --page-width-margin: 0rem;
458
459        --product-card-image-padding: 0.0rem;
460        --product-card-corner-radius: 0.0rem;
461        --product-card-text-alignment: center;
462        --product-card-border-width: 0.1rem;
463        --product-card-border-opacity: 0.1;
464        --product-card-shadow-opacity: 0.0;
465        --product-card-shadow-visible: 0;
466        --product-card-shadow-horizontal-offset: 1.0rem;
467        --product-card-shadow-vertical-offset: 1.0rem;
468        --product-card-shadow-blur-radius: 3.5rem;
469
470        --collection-card-image-padding: 0.0rem;
471        --collection-card-corner-radius: 0.0rem;
472        --collection-card-text-alignment: center;
473        --collection-card-border-width: 0.0rem;
474        --collection-card-border-opacity: 0.1;
475        --collection-card-shadow-opacity: 0.05;
476        --collection-card-shadow-visible: 1;
477        --collection-card-shadow-horizontal-offset: 1.0rem;
478        --collection-card-shadow-vertical-offset: 1.0rem;
479        --collection-card-shadow-blur-radius: 3.5rem;
480
481        --blog-card-image-padding: 0.0rem;
482        --blog-card-corner-radius: 0.0rem;
483        --blog-card-text-alignment: center;
484        --blog-card-border-width: 0.0rem;
485        --blog-card-border-opacity: 0.1;
486        --blog-card-shadow-opacity: 0.05;
487        --blog-card-shadow-visible: 1;
488        --blog-card-shadow-horizontal-offset: 1.0rem;
489        --blog-card-shadow-vertical-offset: 1.0rem;
490        --blog-card-shadow-blur-radius: 3.5rem;
491
492        --badge-corner-radius: 0.0rem;
493
494        --popup-border-width: 1px;
495        --popup-border-opacity: 0.1;
496        --popup-corner-radius: 0px;
497        --popup-shadow-opacity: 0.1;
498        --popup-shadow-horizontal-offset: 10px;
499        --popup-shadow-vertical-offset: 12px;
500        --popup-shadow-blur-radius: 20px;
501
502        --drawer-border-width: 1px;
503        --drawer-border-opacity: 0.1;
504        --drawer-shadow-opacity: 0.0;
505        --drawer-shadow-horizontal-offset: 0px;
506        --drawer-shadow-vertical-offset: 4px;
507        --drawer-shadow-blur-radius: 5px;
508
509        --spacing-sections-desktop: 16px;
510        --spacing-sections-mobile: 16px;
511
512        --grid-desktop-vertical-spacing: 4px;
513        --grid-desktop-horizontal-spacing: 4px;
514        --grid-mobile-vertical-spacing: 2px;
515        --grid-mobile-horizontal-spacing: 2px;
516
517        --text-boxes-border-opacity: 0.1;
518        --text-boxes-border-width: 0px;
519        --text-boxes-radius: 0px;
520        --text-boxes-shadow-opacity: 0.0;
521        --text-boxes-shadow-visible: 0;
522        --text-boxes-shadow-horizontal-offset: 10px;
523        --text-boxes-shadow-vertical-offset: 12px;
524        --text-boxes-shadow-blur-radius: 20px;
525
526        --buttons-radius: 0px;
527        --buttons-radius-outset: 0px;
528        --buttons-border-width: 0px;
529        --buttons-border-opacity: 0.55;
530        --buttons-shadow-opacity: 0.0;
531        --buttons-shadow-visible: 0;
532        --buttons-shadow-horizontal-offset: 0px;
533        --buttons-shadow-vertical-offset: 4px;
534        --buttons-shadow-blur-radius: 0px;
535        --buttons-border-offset: 0px;
536
537        --inputs-radius: 0px;
538        --inputs-border-width: 1px;
539        --inputs-border-opacity: 0.55;
540        --inputs-shadow-opacity: 0.0;
541        --inputs-shadow-horizontal-offset: 0px;
542        --inputs-margin-offset: 0px;
543        --inputs-shadow-vertical-offset: 4px;
544        --inputs-shadow-blur-radius: 5px;
545        --inputs-radius-outset: 0px;
546
547        --variant-pills-radius: 0px;
548        --variant-pills-border-width: 0px;
549        --variant-pills-border-opacity: 0.1;
550        --variant-pills-shadow-opacity: 0.0;
551        --variant-pills-shadow-horizontal-offset: 0px;
552        --variant-pills-shadow-vertical-offset: 4px;
553        --variant-pills-shadow-blur-radius: 5px;
554      }
555
556      *,
557      *::before,
558      *::after {
559        box-sizing: inherit;
560      }
561
562      html {
563        box-sizing: border-box;
564        font-size: calc(var(--font-body-scale) * 62.5%);
565        height: 100%;
566      }
567
568      body {
569        display: grid;
570        grid-template-rows: auto auto 1fr auto;
571        grid-template-columns: 100%;
572        min-height: 100%;
573        margin: 0;
574        font-size: 1.5rem;
575        letter-spacing: 0.06rem;
576        line-height: calc(1 + 0.8 / var(--font-body-scale));
577        font-family: var(--font-body-family);
578        font-style: var(--font-body-style);
579        font-weight: var(--font-body-weight);
580      }
581
582      @media screen and (min-width: 750px) {
583        body {
584          font-size: 1.6rem;
585        }
586      }
587    </style>
588
589    <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/base.css?v=9230201934163126091787738194" rel="stylesheet" type="text/css" media="all" />
590<link rel="preload" as="font" href="//shop.wunschgutschein.at/cdn/fonts/lato/lato_n4.c3b93d431f0091c8be23185e15c9d1fee1e971c5.woff2" type="font/woff2" crossorigin><link rel="preload" as="font" href="//shop.wunschgutschein.at/cdn/fonts/lato/lato_n4.c3b93d431f0091c8be23185e15c9d1fee1e971c5.woff2" type="font/woff2" crossorigin><link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-localization-form.css?v=124545717069420038221764247604" rel="stylesheet" type="text/css" media="all" />
591      
591<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/localization-form.js?v=169565320306168926741764247604" defer="defer"></script>
591<link
592        rel="stylesheet"
593        href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-predictive-search.css?v=118923337488134913561764247604"
594        media="print"
595        onload="this.media='all'"
596      >
596<script>
597      document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
598      if (Shopify.designMode) {
599        document.documentElement.classList.add('shopify-design-mode');
600      }
601    </script>
601
602
603  
604
605<script type="text/javascript">
606  
607    window.SHG_CUSTOMER = null;
608  
609</script>
609
610
611
612
613
614
615
616
617  
617<script>
618var pplr_cart = {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"EUR","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0};
619var pplr_shop_currency = "EUR";
620var pplr_enabled_currencies_size = 1;
621var pplr_money_formate = "{{amount_with_comma_separator}} €";
622var pplr_manual_theme_selector=["CartCount span","tr:has([name*=updates])","tr img:first",".line-item__title",".cart__item--price .cart__price",".grid__item.one-half.text-right",".pplr_item_remove",".ajaxcart__qty",".header__cart-price-bubble span[data-cart-price-bubble]","form[action*=cart] [name=checkout]","Anzeigen"];
623</script>
vendor: 1 bytes, line 623
623
624<script async src="//cdn-zeptoapps.com/product-personalizer/pplr_common.js?v=28" ></script>
624
625    <!-- Upsell & Cross Sell Kit by Logbase - Starts -->
626      
626<script src='https://upsell-app.logbase.io/lb-upsell.js?shop=wunschgutschein-deutschland.myshopify.com' defer></script>
626
627    <!-- Upsell & Cross Sell Kit by Logbase - Ends -->
628  
629    
630    
631    
632    
633    
634
635    <!-- Varify.io® code for WGS AT-->
636      
636<script>
637        window.varify = window.varify || {};
638        window.varify.iid = 5310;
639      </script>
639
640      
640<script src="https://app.varify.io/varify.js"></script>
640
641    <!-- End Varify.io® code for WGS AT-->
642
643<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/WUN-25.css?v=135274092415500482231764253287" rel="stylesheet" type="text/css" media="all" />
644<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/WUN-25.js?v=75934122992835630161764319931" type="text/javascript"></script>
644 
645
646
647
648<!-- BEGIN app block: shopify://apps/zepto-product-personalizer/blocks/product_personalizer_main/7411210d-7b32-4c09-9455-e129e3be4729 --><!-- BEGIN app snippet: product-personalizer -->
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665<style>
666  .pplr_add_to_cart{display:none !important;}
667</style>
668
669<div id="pplr-6558715412685" data-id="6558715412685" class="product-personalizer" data-handle="motiv-wunscherfueller"></div>
670
671<script type='text/javascript'>
672  window.pplr_variant_product = [];
673
674  
675  
676
677
678
679  
680    window.pplr_inv_product = [];
681  
682
683  if (typeof product_personalizer == 'undefined') {
684    var product_personalizer = {"cstmfy_req":"1"};
685  }
686
687  if (typeof pplr_product == 'undefined') {
688    var pplr_product = {"id":6558715412685,"title":"Dein Wunscherfüller - Schmetterling","handle":"motiv-wunscherfueller","description":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cdiv style=\"background: #f2f2f2; padding: 15px 25px;\"\u003e✓ \u003cstrong\u003eKostenloser Postversand\u003c\/strong\u003e*\u003cbr\u003e ✓ \u003cstrong\u003eKostenloser Briefumschlag\u003c\/strong\u003e\u003cbr\u003e ✓ Individualisierungsmöglichkeiten\u003c\/div\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003eWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei \u003cstrong\u003eüber 100 Online-Shops\u003c\/strong\u003e einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003eGültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.\u003c\/em\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003e*\u003cem data-mce-fragment=\"1\"\u003eAb einem Bestellwert von 40€. \u003c\/em\u003eBei Standardversand innerhalb Deutschlands, Österreich und Schweiz\u003c\/em\u003e\u003c\/p\u003e","published_at":"2021-03-22T12:12:14+01:00","created_at":"2021-03-22T12:11:02+01:00","vendor":"Wunschgutschein-Austria","type":"Gutscheine","tags":["Allgemein","motif_free","Post"],"price":1500,"price_min":1500,"price_max":15000,"available":true,"price_varies":true,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":39353929793741,"title":"15 €","option1":"15 €","option2":null,"option3":null,"sku":"20001311015","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 15 €","public_title":"15 €","options":["15 €"],"price":1500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929662669,"title":"25 €","option1":"25 €","option2":null,"option3":null,"sku":"20001311025","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 25 €","public_title":"25 €","options":["25 €"],"price":2500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929695437,"title":"50 €","option1":"50 €","option2":null,"option3":null,"sku":"20001311050","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 50 €","public_title":"50 €","options":["50 €"],"price":5000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929728205,"title":"100 €","option1":"100 €","option2":null,"option3":null,"sku":"20001311100","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 100 €","public_title":"100 €","options":["100 €"],"price":10000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929760973,"title":"150 €","option1":"150 €","option2":null,"option3":null,"sku":"20001311150","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 150 €","public_title":"150 €","options":["150 €"],"price":15000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377","\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820","\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376","\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813"],"featured_image":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377","options":["Wertstufe"],"media":[{"alt":null,"id":64412941582604,"position":1,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377","width":1358},{"alt":null,"id":36848293544204,"position":2,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820","width":1358},{"alt":null,"id":36848293576972,"position":3,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376","width":1358},{"alt":null,"id":38396991275276,"position":4,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813","width":1358}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cdiv style=\"background: #f2f2f2; padding: 15px 25px;\"\u003e✓ \u003cstrong\u003eKostenloser Postversand\u003c\/strong\u003e*\u003cbr\u003e ✓ \u003cstrong\u003eKostenloser Briefumschlag\u003c\/strong\u003e\u003cbr\u003e ✓ Individualisierungsmöglichkeiten\u003c\/div\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003eWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei \u003cstrong\u003eüber 100 Online-Shops\u003c\/strong\u003e einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003eGültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.\u003c\/em\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003e*\u003cem data-mce-fragment=\"1\"\u003eAb einem Bestellwert von 40€. \u003c\/em\u003eBei Standardversand innerhalb Deutschlands, Österreich und Schweiz\u003c\/em\u003e\u003c\/p\u003e"};
689  }
690
691  if (typeof pplr_shop_currency == 'undefined') {
692    var pplr_shop_currency = "EUR";
693  }
694
695  if (typeof pplr_enabled_currencies_size == 'undefined') {
696    var pplr_enabled_currencies_size = 1;
697  }
698
699  if (typeof pplr_money_formate == 'undefined') {
700    var pplr_money_formate = "{{amount_with_comma_separator}} €";
701  }
702
703  if (typeof pplr_money_formate_with_currency == 'undefined') {
704    var pplr_money_formate_with_currency = "{{amount_with_comma_separator}} €";
705  }
706
707  if (typeof pplr_script_loaded == "undefined") {
708    var pplr_script_loaded = true;
709
710    var loadScript_p = function(url, callback) {
711      var script = document.createElement("script");
712      script.type = "text/javascript";
713      script.setAttribute("defer", "defer");
714
715      if (script.readyState) {
716        script.onreadystatechange = function() {
717          if (script.readyState == "loaded" || script.readyState == "complete") {
718            script.onreadystatechange = null;
719            callback();
720          }
721        };
722      } else {
723        script.onload = function() {
724          callback();
725        };
726      }
727
728      script.src = url;
729      document.getElementsByTagName("head")[0].appendChild(script);
730    };
731
732    if (product_personalizer['cstmfy_req'] > 0 || product_personalizer['pplr_req'] > 0) {
733      loadScript_p('//cdn-zeptoapps.com/product-personalizer/canvas-script.php?shop=wunschgutschein-austria.myshopify.com&prid=6558715412685&kkr=tomato', function() {});
734    }
735  }
736</script>
736
737<!-- END app snippet -->
738<!-- BEGIN app snippet: zepto_common -->
738<script>
739var pplr_cart = {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"EUR","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0};
740var pplr_shop_currency = "EUR";
741var pplr_enabled_currencies_size = 1;
742var pplr_money_formate = "{{amount_with_comma_separator}} €";
743var pplr_money_formate_with_currency = "{{amount_with_comma_separator}} €";
744var pplr_manual_theme_selector=["CartCount span","tr:has([name*=updates])","tr img:first",".line-item__title",".cart__item--price .cart__price",".grid__item.one-half.text-right",".pplr_item_remove",".ajaxcart__qty",".header__cart-price-bubble span[data-cart-price-bubble]","form[action*=cart] [name=checkout]","Anzeigen"];
745</script>
745
746
747<script defer src="https://cdn.shopify.com/extensions/01a0b8db-a3fb-76e0-93fa-2832dcbaceaa/product-personalizer-65/assets/pplr_common.js"></script>
747<!-- END app snippet -->
748
749<!-- END app block --><!-- BEGIN app block: shopify://apps/loyalty-rewards-and-referrals/blocks/embed-sdk/6f172e67-4106-4ac0-89c5-b32a069b3101 -->
750
751<style
752  type='text/css'
753  data-lion-app-styles='main'
754  data-lion-app-styles-settings='{&quot;disableBundledCSS&quot;:false,&quot;disableBundledFonts&quot;:false,&quot;useClassIsolator&quot;:false}'
755></style>
756
757<!-- loyaltylion.snippet.version=9283085fd3+12800 -->
758
759
760<script>
761  
762  !function(t,n){function o(n){var o=t.getElementsByTagName("script")[0],i=t.createElement("script");i.src=n,i.crossOrigin="",o.parentNode.insertBefore(i,o)}if(!n.isLoyaltyLion){window.loyaltylion=n,void 0===window.lion&&(window.lion=n),n.version=2,n.isLoyaltyLion=!0;var i=new Date,e=i.getFullYear().toString()+i.getMonth().toString()+i.getDate().toString();o("https://sdk.loyaltylion.net/static/2/loader.js?t="+e);var r=!1;n.init=function(t){if(r)throw new Error("Cannot call lion.init more than once");r=!0;var a=n._token=t.token;if(!a)throw new Error("Token must be supplied to lion.init");for(var l=[],s="_push configure bootstrap shutdown on removeListener authenticateCustomer".split(" "),c=0;c<s.length;c+=1)!function(t,n){t[n]=function(){l.push([n,Array.prototype.slice.call(arguments,0)])}}(n,s[c]);o("https://sdk.loyaltylion.net/sdk/start/"+a+".js?t="+e+i.getHours().toString()),n._initData=t,n._buffer=l}}}(document,window.loyaltylion||[]);
763
764  
765    
766      loyaltylion.init(
767        { token: "4ad5c8bca228d7ca4462aa1f9745ca3c" }
768      );
769    
770  
771
772  loyaltylion.configure({
773    disableBundledCSS: false,
774    disableBundledFonts: false,
775    useClassIsolator: false,
776  })
777
778  
779</script>
779
780
781
782
783<!-- END app block --><!-- BEGIN app block: shopify://apps/tradedoubler-affiliate/blocks/app-embed/5336782f-9a78-4117-be6f-8cc073d67e6c --><!-- BEGIN app snippet: datablock -->
783<script>var tdappconf={o:2331447,p:333015,h:'null'};</script>
783<!-- END app snippet -->
784<!-- END app block --><!-- BEGIN app block: shopify://apps/personizely-a-b-testing-cro/blocks/code-snippet/7a76a5cf-d4ab-4e6e-a88e-14fd37e56de1 -->
785
786
787  
787<script>
788    window.Personizely = {
789      market: 'at',
790      moneyFormat: '{{amount_with_comma_separator}} €',
791      template: {
792        directory: '',
793        name: 'product',
794        suffix: ''
795      },
796      currency: 'EUR',
797      
798      product: {
799        id: 6558715412685,
800        handle: 'motiv-wunscherfueller',
801        collections: [263538409677,478446747916,478446878988,262475186381],
802        tags: ["Allgemein","motif_free","Post"]
803      },
804      
805      
806      customer: null,
807      
808      cart: {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"EUR","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0},
809      cartCollections: {}
810    }
811  </script>
811
812  
812<script src="https://static.personizely.net/5e73f8d407.js" data-em-disable type="text/javascript"></script>
812
813
814
815
816<!-- END app block -->
816<script src="https://cdn.shopify.com/extensions/01a0ce1c-ffd6-781a-a12a-6321599e1cc5/garan-eu-guarantee-notice-13/assets/eugl-garan.js" type="text/javascript" defer="defer"></script>
816
817<link href="https://cdn.shopify.com/extensions/01a0ce1c-ffd6-781a-a12a-6321599e1cc5/garan-eu-guarantee-notice-13/assets/eugl.css" rel="stylesheet" type="text/css" media="all">
818<script src="https://cdn.shopify.com/extensions/019aea34-75f8-7342-949f-278781ecad92/tradedoubler-affiliate-6/assets/library-loader.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 818
818
819<script src="https://cdn.shopify.com/extensions/019feb7b-2b89-71ba-a248-f1c8ef9b3368/stape-remix-56/assets/widget.js" type="text/javascript" defer="defer"></script>
819
820<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
821<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 55611687117,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "product"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 821
821
822<script>
823  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
824</script>
vendor: 1 bytes, line 824
824
825<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
825).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 55611687117,storefrontBaseUrl: "https://shop.wunschgutschein.at",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://shop.wunschgutschein.at/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"6082822412","configuration":"{\"organization\":\"2331447\",\"programId\":\"333015\",\"eventId\":\"428630\",\"newCustomerEventId\":\"null\",\"includeTax\":\"true\",\"productGroups\":\"[]\",\"host\":\"null\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"75d4fc2bd30ae0beeb35aa8060f656b1","type":"APP","apiClientId":186380156929,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]}
825,"dataSharingState":"unrestricted"},{"id":"1621033228","configuration":"{\"apiKey\":\"5e73f8d407\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"5db606f40f9dec661e38b768df1da575","type":"APP","apiClientId":2386752,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1557987596","configuration":"{\"site_id\":\"3c2080a5-dee5-47a2-8c96-9d806b97f170\",\"analytics_endpoint\":\"https:\\\/\\\/na.shgcdn3.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"695709fc3f146fa50a25299517a954f2","type":"APP","apiClientId":1158168,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1494221068","configuration":"{\"accountID\":\"55611687117\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"9cf281f576a3744d05c8685f9f7f3f72","type":"APP","apiClientId":10250649601,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1426358540","configuration":"{\"shop\":\"wunschgutschein-austria.myshopify.com\", \"shopliftUrl\":\"https:\/\/events.shoplift.ai\/api\/events\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"dabcda9558be25394b12ce3ce899568b","type":"APP","apiClientId":7521861633,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1414005004","configuration":"{\"organizationId\":\"2331447\",\"programId\":\"333015\",\"eventId\":\"428630\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"f81382adf3c7f51ad5c6db983aab470c","type":"APP","apiClientId":29619486721,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"343408908","configuration":"{\"pixel_id\":\"1569342903250480\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"212664588","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Insider Custom Pixel"},{"id":"243532044","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":[],"name":"Stape - E-Commerce"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Wunschgutschein Österreich","paymentSettings":{"currencyCode":"EUR"},"myshopifyDomain":"wunschgutschein-austria.myshopify.com","countryCode":"DE","storefrontUrl":"https:\/\/shop.wunschgutschein.at"},"customer":null,"cart":null,"checkout":null,"productVariants":[{"price":{"amount":15.0,"currencyCode":"EUR"},"product":{"title":"Dein Wunscherfüller - Schmetterling","vendor":"Wunschgutschein-Austria","id":"6558715412685","untranslatedTitle":"Dein Wunscherfüller - Schmetterling","url":"\/products\/motiv-wunscherfueller","type":"Gutscheine"},"id":"39353929793741","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"sku":"20001311015","title":"15 €","untranslatedTitle":"15 €"},{"price":{"amount":25.0,"currencyCode":"EUR"},"product":{"title":"Dein Wunscherfüller - Schmetterling","vendor":"Wunschgutschein-Austria","id":"6558715412685","untranslatedTitle":"Dein Wunscherfüller - Schmetterling","url":"\/products\/motiv-wunscherfueller","type":"Gutscheine"},"id":"39353929662669","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"sku":"20001311025","title":"25 €","untranslatedTitle":"25 €"},{"price":{"amount":50.0,"currencyCode":"EUR"},"product":{"title":"Dein Wunscherfüller - Schmetterling","vendor":"Wunschgutschein-Austria","id":"6558715412685","untranslatedTitle":"Dein Wunscherfüller - Schmetterling","url":"\/products\/motiv-wunscherfueller","type":"Gutscheine"},"id":"39353929695437","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"sku":"20001311050","title":"50 €","untranslatedTitle":"50 €"},{"price":{"amount":100.0,"currencyCode":"EUR"},"product":{"title":"Dein Wunscherfüller - Schmetterling","vendor":"Wunschgutschein-Austria","id":"6558715412685","untranslatedTitle":"Dein Wunscherfüller - Schmetterling","url":"\/products\/motiv-wunscherfueller","type":"Gutscheine"},"id":"39353929728205","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"sku":"20001311100","title":"100 €","untranslatedTitle":"100 €"},{"price":{"amount":150.0,"currencyCode":"EUR"},"product":{"title":"Dein Wunscherfüller - Schmetterling","vendor":"Wunschgutschein-Austria","id":"6558715412685","untranslatedTitle":"Dein Wunscherfüller - Schmetterling","url":"\/products\/motiv-wunscherfueller","type":"Gutscheine"},"id":"39353929760973","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"sku":"20001311150","title":"150 €","untranslatedTitle":"150 €"}],"products":[{"id":"6558715412685","handle":"motiv-wunscherfueller","isCollective":null,"title":"Dein Wunscherfüller - Schmetterling","type":"Gutscheine","untranslatedTitle":"Dein Wunscherfüller - Schmetterling","url":"\/products\/motiv-wunscherfueller","vendor":"Wunschgutschein-Austria","remoteShopId":null,"variants":[{"id":"39353929793741","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"price":{"amount":15.0,"currencyCode":"EUR"},"sku":"20001311015","title":"15 €","untranslatedTitle":"15 €"},{"id":"39353929662669","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"price":{"amount":25.0,"currencyCode":"EUR"},"sku":"20001311025","title":"25 €","untranslatedTitle":"25 €"},{"id":"39353929695437","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"price":{"amount":50.0,"currencyCode":"EUR"},"sku":"20001311050","title":"50 €","untranslatedTitle":"50 €"},{"id":"39353929728205","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"price":{"amount":100.0,"currencyCode":"EUR"},"sku":"20001311100","title":"100 €","untranslatedTitle":"100 €"},{"id":"39353929760973","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"price":{"amount":150.0,"currencyCode":"EUR"},"sku":"20001311150","title":"150 €","untranslatedTitle":"150 €"}]}
825,{"id":"11700351598860","handle":"motiv-wunscherfueller-pdf","isCollective":null,"title":"Dein Wunscherfüller - Schmetterling PDF","type":"Gutscheine","untranslatedTitle":"Dein Wunscherfüller - Schmetterling PDF","url":"\/products\/motiv-wunscherfueller-pdf","vendor":"Wunschgutschein-Austria","remoteShopId":null,"variants":[{"id":"54541295026444","image":{"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_7b39f98d-eb0d-41d4-964a-49dcf4d1b547.jpg?v=1772796858"},"price":{"amount":15.0,"currencyCode":"EUR"},"sku":"20001511015","title":"15 €","untranslatedTitle":"15 €"}]}],"purchasingCompany":null},},"https://shop.wunschgutschein.at/cdn","c8540278we853e1abpb62b2c4amde256306",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"174462042380","themePublished":"true","eventMetadataId":"b66565c8-e55b-4005-8dce-07444f079d93","pageType":"product","resourceId":"6558715412685","shopId":"55611687117","storefrontBaseUrl":"https:\/\/shop.wunschgutschein.at","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"c8540278we853e1abpb62b2c4amde256306","publish":"custom","events":"[[\"page_viewed\",{}],[\"product_viewed\",{\"productVariant\":{\"price\":{\"amount\":15.0,\"currencyCode\":\"EUR\"},\"product\":{\"title\":\"Dein Wunscherfüller - Schmetterling\",\"vendor\":\"Wunschgutschein-Austria\",\"id\":\"6558715412685\",\"untranslatedTitle\":\"Dein Wunscherfüller - Schmetterling\",\"url\":\"\/products\/motiv-wunscherfueller\",\"type\":\"Gutscheine\"},\"id\":\"39353929793741\",\"image\":{\"src\":\"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377\"},\"sku\":\"20001311015\",\"title\":\"15 €\",\"untranslatedTitle\":\"15 €\"}}]]"});})();</script>
825<script>
826  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
827  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
828  window.ShopifyAnalytics.meta.currency = 'EUR';
829  var meta = {"product":{"id":6558715412685,"gid":"gid:\/\/shopify\/Product\/6558715412685","vendor":"Wunschgutschein-Austria","type":"Gutscheine","handle":"motiv-wunscherfueller","variants":[{"id":39353929793741,"price":1500,"name":"Dein Wunscherfüller - Schmetterling - 15 €","public_title":"15 €","sku":"20001311015"},{"id":39353929662669,"price":2500,"name":"Dein Wunscherfüller - Schmetterling - 25 €","public_title":"25 €","sku":"20001311025"},{"id":39353929695437,"price":5000,"name":"Dein Wunscherfüller - Schmetterling - 50 €","public_title":"50 €","sku":"20001311050"},{"id":39353929728205,"price":10000,"name":"Dein Wunscherfüller - Schmetterling - 100 €","public_title":"100 €","sku":"20001311100"},{"id":39353929760973,"price":15000,"name":"Dein Wunscherfüller - Schmetterling - 150 €","public_title":"150 €","sku":"20001311150"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":6558715412685,"requestId":"b6ec7a10-f856-4805-84f2-e132a21671f7-1790578264"}};
830  for (var attr in meta) {
831    window.ShopifyAnalytics.meta[attr] = meta[attr];
832  }
833</script>
vendor: 1 bytes, line 833
833
834<script class="analytics">
835  (function () {
836    var customDocumentWrite = function(content) {
837      var jquery = null;
838
839      if (window.jQuery) {
840        jquery = window.jQuery;
841      } else if (window.Checkout && window.Checkout.$) {
842        jquery = window.Checkout.$;
843      }
844
845      if (jquery) {
846        jquery('body').append(content);
847      }
848    };
849
850    var hasLoggedConversion = function(token) {
851      if (token) {
852        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
853      }
854      return false;
855    }
856
857    var setCookieIfConversion = function(token) {
858      if (token) {
859        var twoMonthsFromNow = new Date(Date.now());
860        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
861
862        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
863      }
864    }
865
866    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
867    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
868    if (trekkie.integrations) {
869      return;
870    }
871    trekkie.methods = [
872      'identify',
873      'page',
874      'ready',
875      'track',
876      'trackForm',
877      'trackLink'
878    ];
879    trekkie.factory = function(method) {
880      return function() {
881        var args = Array.prototype.slice.call(arguments);
882        args.unshift(method);
883        trekkie.push(args);
884        if (method == 'track' || method == 'page') {
885          var pageUrl;
886          try {
887            pageUrl = window.location.href;
888          } catch (e) {}
889          var pageReferrer;
890          try {
891            pageReferrer = document.referrer;
892          } catch (e) {}
893          try {
894            if (window.__TREKKIE_SHIM_QUEUE == null) {
895              window.__TREKKIE_SHIM_QUEUE = [];
896            }
897            window.__TREKKIE_SHIM_QUEUE.push({
898              from: 'trekkie-stub',
899              method: method,
900              args: args.slice(1),
901              pageContext: {
902                url: pageUrl,
903                referrer: pageReferrer
904              }
905            });
906          } catch (e) {
907            // no-op
908          }
909        }
910        return trekkie;
911      };
912    };
913    for (var i = 0; i < trekkie.methods.length; i++) {
914      var key = trekkie.methods[i];
915      trekkie[key] = trekkie.factory(key);
916    }
917    trekkie.load = function(config) {
918      trekkie.config = config || {};
919      trekkie.config.initialDocumentCookie = document.cookie;
920      var first = document.getElementsByTagName('script')[0];
921var script = document.createElement('script');
922script.type = 'text/javascript';
923script.onerror = function(e) {
924  var scriptFallback = document.createElement('script');
925  scriptFallback.type = 'text/javascript';
926  scriptFallback.onerror = function(error) {
927          var Monorail = {
928      produce: function produce(monorailDomain, schemaId, payload) {
929        var currentMs = new Date().getTime();
930        var event = {
931          schema_id: schemaId,
932          payload: payload,
933          metadata: {
934            event_created_at_ms: currentMs,
935            event_sent_at_ms: currentMs
936          }
937        };
938        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
939      },
940      sendRequest: function sendRequest(endpointUrl, payload) {
941        // Try the sendBeacon API
942        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
943          var blobData = new window.Blob([payload], {
944            type: 'text/plain'
945          });
946
947          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
948            return true;
949          } // sendBeacon was not successful
950
951        } // XHR beacon
952
953        var xhr = new XMLHttpRequest();
954
955        try {
956          xhr.open('POST', endpointUrl);
957          xhr.setRequestHeader('Content-Type', 'text/plain');
958          xhr.send(payload);
959        } catch (e) {
960          console.log(e);
961        }
962
963        return false;
964      },
965      isIos12: function isIos12() {
966        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
967      }
968    };
969    Monorail.produce('monorail-edge.shopifysvc.com',
970      'trekkie_storefront_load_errors/1.1',
971      {shop_id: 55611687117,
972      theme_id: 174462042380,
973      app_name: "storefront",
974      context_url: window.location.href,
975      source_url: "//shop.wunschgutschein.at/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js"});
976
977  };
978  scriptFallback.async = true;
979  scriptFallback.src = '//shop.wunschgutschein.at/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js';
980  first.parentNode.insertBefore(scriptFallback, first);
981};
982script.async = true;
983script.src = '//shop.wunschgutschein.at/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js';
984first.parentNode.insertBefore(script, first);
985
986    };
987    trekkie.load(
988      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":55611687117,"isMerchantRequest":null,"themeId":174462042380,"themeCityHash":"301180352213164324","contentLanguage":"de","currency":"EUR","eventMetadataId":"b66565c8-e55b-4005-8dce-07444f079d93"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
989    );
990
991    var loaded = false;
992    trekkie.ready(function() {
993      if (loaded) return;
994      loaded = true;
995
996      window.ShopifyAnalytics.lib = window.trekkie;
997
998      var originalDocumentWrite = document.write;
999      document.write = customDocumentWrite;
1000      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1001      document.write = originalDocumentWrite;
1002
1003      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1004      var token = match? match[1]: undefined;
1005      if (!hasLoggedConversion(token)) {
1006        setCookieIfConversion(token);
1007        window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"EUR","variantId":39353929793741,"productId":6558715412685,"productGid":"gid:\/\/shopify\/Product\/6558715412685","name":"Dein Wunscherfüller - Schmetterling - 15 €","price":"15.00","sku":"20001311015","brand":"Wunschgutschein-Austria","variant":"15 €","category":"Gutscheine","nonInteraction":true,"remote":false,"available":true},undefined,undefined,{"shopifyEmitted":true});
1008      }
1009    });
1010
1011    window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":6558715412685,"requestId":"b6ec7a10-f856-4805-84f2-e132a21671f7-1790578264","shopifyEmitted":true});
1012
1013    var eventsListenerScript = document.createElement('script');
1014    eventsListenerScript.async = true;
1015    eventsListenerScript.src = "//shop.wunschgutschein.at/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1016    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1017})();</script>
1017
1018  
1018<script>
1019  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
1020    window.ga = function ga() {
1021      (window.ga.q = window.ga.q || []).push(arguments);
1022      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1023        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
1024      }
1025      console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information.");
1026    };
1027    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1028      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
1029    }
1030  }
1031</script>
vendor: 1 bytes, line 1031
1031
1032<script
1033  defer
1034  src="https://shop.wunschgutschein.at/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
1035  data-application="storefront-renderer"
1036  data-shop-id="55611687117"
1037  data-render-region="gcp-us-west1"
1038  data-page-type="product"
1039  data-theme-instance-id="174462042380"
1040  data-theme-name="Sense"
1041  data-theme-version="13.0.1"
1042  data-monorail-region="shop_domain"
1043  data-resource-timing-sampling-rate="10"
1044  data-shs="true"
1045  data-shs-beacon="true"
1046  data-shs-export-with-fetch="true"
1047  data-shs-logs-sample-rate="1"
1048  data-shs-beacon-endpoint="https://shop.wunschgutschein.at/api/collect"
1049></script>
1049
1050<meta name="shopify-y" content="d327efbc-debb-441f-9519-c23da7faeef6" data-expiration="1822135864000"><meta name="shopify-s" content="f3829980-16a1-4ff7-9358-02b51b2c31ed" data-expiration="1790580064000"><meta name="new-cookie-storage-activated" content="t">
1051</head>
1052
1053  <body class="gradient">
1054    <a class="skip-to-content-link button visually-hidden" href="#MainContent">
1055      Direkt zum Inhalt
1056    </a><!-- snippet /snippets/store-switcher.liquid | Edited by Latori GmbH - www.latori.com -->
1057
1058<div id="StoreSwitcher-Wrapper" aria-hidden="true">
1059  <div id="StoreSwitcher" role="dialog" aria-modal="true" aria-labelledby="store-switcher-title">
1060    <div class="store-switcher__header">
1061      <div>
1062        <h2 id="store-switcher-title">Unser Gutschein ist international erhältlich!</h2>
1063        <p class="store-switcher__kicker">Store auswählen:</p>
1064      </div>
1065
1066      <button id="closeSwitcher" type="button" class="close-icon" aria-label="Store-Auswahl schließen"><svg
1067  xmlns="http://www.w3.org/2000/svg"
1068  aria-hidden="true"
1069  focusable="false"
1070  class="icon icon-close"
1071  fill="none"
1072  viewBox="0 0 18 17"
1073>
1074  <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
1075</svg>
1076<span class="visually-hidden">Schließen</span>
1077      </button>
1078    </div>
1079
1080    <div class="store-switcher__list">
1081      <a href="https://www.wunschgutschein.de/" class="store-switcher__link de">
1082        <span class="country-icon" aria-hidden="true"></span>
1083        <span class="store-switcher__text">
1084          <span class="store-switcher__code">DE</span>
1085          <span class="store-switcher__name">Deutschland</span>
1086        </span>
1087        <span class="store-switcher__brand-logo" aria-hidden="true"></span>
1088      </a>
1089
1090      <a href="https://shop.wunschgutschein.at/" class="store-switcher__link at active" aria-current="page">
1091        <span class="country-icon" aria-hidden="true"></span>
1092        <span class="store-switcher__text">
1093          <span class="store-switcher__code">AT</span>
1094          <span class="store-switcher__name">Österreich</span>
1095        </span>
1096        <span class="store-switcher__brand-logo" aria-hidden="true"></span>
1097      </a>
1098
1099      <a href="https://shop.wishcard.ch/" class="store-switcher__link ch">
1100        <span class="country-icon" aria-hidden="true"></span>
1101        <span class="store-switcher__text">
1102          <span class="store-switcher__code">CH</span>
1103          <span class="store-switcher__name">Schweiz</span>
1104        </span>
1105        <span class="store-switcher__brand-logo" aria-hidden="true"></span>
1106      </a>
1107
1108      <a href="https://www.everywish.fr/" class="store-switcher__link fr">
1109        <span class="country-icon" aria-hidden="true"></span>
1110        <span class="store-switcher__text">
1111          <span class="store-switcher__code">FR</span>
1112          <span class="store-switcher__name">Frankreich</span>
1113        </span>
1114        <span class="store-switcher__brand-logo" aria-hidden="true"></span>
1115      </a>
1116
1117      <a href="https://www.every-wish.co.uk/" class="store-switcher__link uk">
1118        <span class="country-icon" aria-hidden="true"></span>
1119        <span class="store-switcher__text">
1120          <span class="store-switcher__code">UK</span>
1121          <span class="store-switcher__name">United Kingdom</span>
1122        </span>
1123        <span class="store-switcher__brand-logo" aria-hidden="true"></span>
1124      </a>
1125
1126      <a href="https://www.everywish.be/" class="store-switcher__link be">
1127        <span class="country-icon" aria-hidden="true"></span>
1128        <span class="store-switcher__text">
1129          <span class="store-switcher__code">BE</span>
1130          <span class="store-switcher__name">Belgien</span>
1131        </span>
1132        <span class="store-switcher__brand-logo" aria-hidden="true"></span>
1133      </a>
1134    </div>
1135
1136    <div id="store-switcher-status" role="status" aria-live="polite" class="visually-hidden"></div>
1137  </div>
1138</div>
1139
1140<style type="text/css">
1141.visually-hidden {
1142  position: absolute !important;
1143  width: 1px;
1144  height: 1px;
1145  overflow: hidden;
1146  clip: rect(1px, 1px, 1px, 1px);
1147  white-space: nowrap;
1148}
1149
1150html.store-switcher-is-open,
1151body.store-switcher-is-open {
1152  overflow: hidden;
1153}
1154
1155/*
1156  Header trigger.
1157  Global halten, weil Desktop- und Mobile-Trigger nicht garantiert im selben
1158  Header-Wrapper liegen.
1159*/
1160a.store-switcher {
1161  display: inline-flex;
1162  align-items: center;
1163  justify-content: center;
1164  width: auto;
1165  height: 4rem;
1166  margin: 0;
1167  padding: 0;
1168  color: inherit;
1169  text-decoration: none;
1170  line-height: 1;
1171  flex-shrink: 0;
1172}
1173
1174a.store-switcher:visited,
1175a.store-switcher:hover,
1176a.store-switcher:focus {
1177  color: inherit;
1178  text-decoration: none;
1179}
1180
1181a.store-switcher svg,
1182a.store-switcher .icon {
1183  display: block;
1184  flex-shrink: 0;
1185}
1186
1187/* Mobile: Desktop-Trigger ausblenden */
1188@media screen and (max-width: 989px) {
1189  #StoreSwitcher__medium-up {
1190    display: none !important;
1191  }
1192
1193  #StoreSwitcher__medium-down {
1194    display: inline-flex !important;
1195  }
1196}
1197
1198/* Desktop: Mobile-Trigger ausblenden */
1199@media screen and (min-width: 990px) {
1200  #StoreSwitcher__medium-up {
1201    display: inline-flex !important;
1202  }
1203
1204  #StoreSwitcher__medium-down {
1205    display: none !important;
1206  }
1207}
1208
1209/*
1210  Desktop Header-Normalisierung.
1211  Entfernt alte left/transform/margin-basierte Positionierung, ohne
1212  collection- oder product-spezifische Sonderregeln zu setzen.
1213*/
1214@media screen and (min-width: 990px) {
1215  .header-wrapper .header a.store-switcher,
1216  .header-wrapper .header #StoreSwitcher__medium-up,
1217  .header-wrapper .header #StoreSwitcher__medium-down {
1218    position: static !important;
1219    inset: auto !important;
1220    top: auto !important;
1221    right: auto !important;
1222    bottom: auto !important;
1223    left: auto !important;
1224    margin: 0 !important;
1225    transform: none !important;
1226    translate: none !important;
1227  }
1228
1229  .header-wrapper .header.page-width {
1230    width: 100%;
1231    margin-left: auto;
1232    margin-right: auto;
1233    box-sizing: border-box;
1234  }
1235
1236  /*
1237    Search trigger normalization.
1238    Der Header rendert die Suche im Top-Center-Layout separat vor dem Logo
1239    und zusätzlich im Icon-Bereich. Beide Varianten werden normalisiert.
1240  */
1241  .header-wrapper .header .header__search {
1242    position: static !important;
1243    inset: auto !important;
1244    top: auto !important;
1245    right: auto !important;
1246    bottom: auto !important;
1247    left: auto !important;
1248    margin: 0 !important;
1249    transform: none !important;
1250    translate: none !important;
1251    min-width: 4.4rem !important;
1252    overflow: visible !important;
1253  }
1254
1255  .header-wrapper .header > .header__search {
1256    grid-area: left-icons !important;
1257    justify-self: start !important;
1258    align-self: center !important;
1259  }
1260
1261  .header-wrapper .header .header__search > details,
1262  .header-wrapper .header .header__search > details > summary,
1263  .header-wrapper .header .header__search summary.header__icon,
1264  .header-wrapper .header .header__search .header__icon--search,
1265  .header-wrapper .header .header__search .modal__toggle {
1266    position: static !important;
1267    inset: auto !important;
1268    top: auto !important;
1269    right: auto !important;
1270    bottom: auto !important;
1271    left: auto !important;
1272    margin: 0 !important;
1273    transform: none !important;
1274    translate: none !important;
1275  }
1276
1277  .header-wrapper .header .header__search summary.header__icon,
1278  .header-wrapper .header .header__search .header__icon--search {
1279    display: inline-flex !important;
1280    align-items: center !important;
1281    justify-content: center !important;
1282    width: 4.4rem !important;
1283    min-width: 4.4rem !important;
1284    height: 4.4rem !important;
1285    padding: 0 !important;
1286  }
1287
1288  .header-wrapper .header .header__search svg,
1289  .header-wrapper .header .header__search .icon-search {
1290    position: static !important;
1291    margin: 0 !important;
1292    transform: none !important;
1293    translate: none !important;
1294  }
1295}
1296
1297/*
1298  Off-Canvas.
1299  Fest am linken Viewport-Rand, nicht am StoreSwitcher-Trigger.
1300*/
1301#StoreSwitcher-Wrapper {
1302  position: fixed !important;
1303  inset: 0 !important;
1304  width: 100vw;
1305  height: 100vh;
1306  height: 100dvh;
1307  z-index: 1000;
1308  margin: 0 !important;
1309  background: rgba(46, 42, 57, 0.32);
1310  opacity: 0;
1311  visibility: hidden;
1312  pointer-events: none;
1313  transform: none !important;
1314  translate: none !important;
1315  transition: opacity 0.25s ease, visibility 0s linear 0.25s;
1316}
1317
1318#StoreSwitcher-Wrapper.open {
1319  opacity: 1;
1320  visibility: visible;
1321  pointer-events: auto;
1322  transition: opacity 0.25s ease;
1323}
1324
1325#StoreSwitcher {
1326  position: absolute !important;
1327  top: 0 !important;
1328  left: 0 !important;
1329  right: auto !important;
1330  width: 360px;
1331  max-width: calc(100vw - 48px);
1332  height: 100%;
1333  background: #fff;
1334  color: #2e2a39;
1335  box-shadow: 14px 0 34px rgba(46, 42, 57, 0.16);
1336  border-radius: 0 4px 4px 0;
1337  padding: 24px 20px 20px;
1338  overflow-y: auto;
1339  transform: translateX(-102%) !important;
1340  transition: transform 0.32s ease;
1341}
1342
1343#StoreSwitcher.open {
1344  transform: translateX(0) !important;
1345}
1346
1347.store-switcher__header {
1348  display: flex;
1349  align-items: flex-start;
1350  justify-content: space-between;
1351  gap: 16px;
1352  margin-bottom: 20px;
1353  text-align: left;
1354}
1355
1356.store-switcher__kicker {
1357  margin: 8px 0 0;
1358  font-size: 11px;
1359  line-height: 1.4;
1360  color: rgba(46, 42, 57, 0.62);
1361  font-weight: 700;
1362  letter-spacing: 0.04em;
1363  text-transform: uppercase;
1364  text-align: left;
1365}
1366
1367#StoreSwitcher h2 {
1368  margin: 0;
1369  max-width: 270px;
1370  font-size: 20px;
1371  line-height: 1.2;
1372  font-weight: 700;
1373  color: #2e2a39;
1374  text-align: left;
1375}
1376
1377#StoreSwitcher button.close-icon {
1378  position: relative;
1379  display: inline-flex;
1380  align-items: center;
1381  justify-content: center;
1382  flex: 0 0 36px;
1383  width: 36px;
1384  height: 36px;
1385  padding: 0;
1386  border: 1px solid rgba(46, 42, 57, 0.12);
1387  border-radius: 4px;
1388  background: transparent;
1389  color: #2e2a39;
1390  cursor: pointer;
1391  transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
1392}
1393
1394#StoreSwitcher button.close-icon:hover {
1395  background: #cc071f;
1396  border-color: #cc071f;
1397  box-shadow: 0 6px 16px rgba(204, 7, 31, 0.22);
1398  transform: translateY(-1px);
1399}
1400
1401#StoreSwitcher button.close-icon:active {
1402  transform: translateY(0);
1403}
1404
1405#StoreSwitcher button.close-icon:focus-visible {
1406  outline: 2px solid rgba(204, 7, 31, 0.35);
1407  outline-offset: 3px;
1408}
1409
1410#StoreSwitcher button.close-icon svg {
1411  display: none;
1412}
1413
1414#StoreSwitcher button.close-icon::before,
1415#StoreSwitcher button.close-icon::after {
1416  content: "";
1417  position: absolute;
1418  top: 50%;
1419  left: 50%;
1420  width: 15px;
1421  height: 2px;
1422  border-radius: 999px;
1423  background: rgba(46, 42, 57, 0.68);
1424  transition: background 0.2s ease;
1425}
1426
1427#StoreSwitcher button.close-icon::before {
1428  transform: translate(-50%, -50%) rotate(45deg);
1429}
1430
1431#StoreSwitcher button.close-icon::after {
1432  transform: translate(-50%, -50%) rotate(-45deg);
1433}
1434
1435#StoreSwitcher button.close-icon:hover::before,
1436#StoreSwitcher button.close-icon:hover::after {
1437  background: #fff;
1438}
1439
1440.store-switcher__list {
1441  display: grid;
1442  gap: 8px;
1443}
1444
1445#StoreSwitcher a.store-switcher__link {
1446  display: flex;
1447  align-items: center;
1448  gap: 12px;
1449  min-height: 58px;
1450  padding: 9px 12px;
1451  color: #2e2a39;
1452  text-decoration: none;
1453  border: 1px solid rgba(46, 42, 57, 0.1);
1454  border-radius: 4px;
1455  background: #fff;
1456  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
1457}
1458
1459#StoreSwitcher a.store-switcher__link:hover {
1460  border-color: rgba(204, 7, 31, 0.45);
1461  box-shadow: 0 8px 22px rgba(46, 42, 57, 0.08);
1462  transform: translateX(3px);
1463}
1464
1465#StoreSwitcher a.store-switcher__link.active {
1466  border-color: #cc071f;
1467  background: linear-gradient(90deg, rgba(204, 7, 31, 0.06), #fff 55%);
1468}
1469
1470#StoreSwitcher a.store-switcher__link .country-icon {
1471  display: inline-block;
1472  flex: 0 0 30px;
1473  width: 30px;
1474  height: 30px;
1475  border-radius: 999px;
1476  background-repeat: no-repeat;
1477  background-size: cover;
1478  background-position: center;
1479  box-shadow: 0 0 0 1px rgba(46, 42, 57, 0.08);
1480}
1481
1482.store-switcher__text {
1483  display: flex;
1484  flex: 1;
1485  flex-direction: column;
1486  min-width: 0;
1487}
1488
1489.store-switcher__code {
1490  font-size: 17px;
1491  line-height: 1.1;
1492  font-weight: 700;
1493  letter-spacing: 0.01em;
1494}
1495
1496.store-switcher__name {
1497  margin-top: 2px;
1498  font-size: 12px;
1499  line-height: 1.25;
1500  color: rgba(46, 42, 57, 0.62);
1501}
1502
1503.store-switcher__brand-logo {
1504  flex: 0 0 34px;
1505  width: 34px;
1506  height: 34px;
1507  background-repeat: no-repeat;
1508  background-size: contain;
1509  background-position: center;
1510}
1511
1512#StoreSwitcher a.store-switcher__link.de .store-switcher__brand-logo,
1513#StoreSwitcher a.store-switcher__link.at .store-switcher__brand-logo {
1514  background-image: url("https://cdn.shopify.com/s/files/1/0556/1168/7117/files/WGS_Bubble.png?v=1750835004");
1515}
1516
1517#StoreSwitcher a.store-switcher__link.ch .store-switcher__brand-logo {
1518  background-image: url("https://cdn.shopify.com/s/files/1/0556/1168/7117/files/Wishcard_Bubble.svg?v=1759151771");
1519}
1520
1521#StoreSwitcher a.store-switcher__link.fr .store-switcher__brand-logo,
1522#StoreSwitcher a.store-switcher__link.uk .store-switcher__brand-logo,
1523#StoreSwitcher a.store-switcher__link.be .store-switcher__brand-logo {
1524  background-image: url("https://cdn.shopify.com/s/files/1/0556/1168/7117/files/Everywish_Logo_mitEffekt_4c_2023-03_Bubble.svg?v=1759151770");
1525}
1526
1527#StoreSwitcher a.store-switcher__link.de .country-icon {
1528  background-image: url(//shop.wunschgutschein.at/cdn/shop/t/38/assets/flagge-deutschland.png?v=143093450125448682881764247604);
1529}
1530
1531#StoreSwitcher a.store-switcher__link.at .country-icon {
1532  background-image: url(//shop.wunschgutschein.at/cdn/shop/t/38/assets/Flagge-Oesterreich.png?v=180260876562921254421764247604);
1533}
1534
1535#StoreSwitcher a.store-switcher__link.ch .country-icon {
1536  background-image: url(//shop.wunschgutschein.at/cdn/shop/t/38/assets/flagge-schweiz.png?v=16024234758772254611764247604);
1537}
1538
1539#StoreSwitcher a.store-switcher__link.fr .country-icon {
1540  background-image: url(//shop.wunschgutschein.at/cdn/shop/t/38/assets/flagge-Frankreich.png?v=28858470362471209931764247604);
1541}
1542
1543#StoreSwitcher a.store-switcher__link.uk .country-icon {
1544  background-image: url(//shop.wunschgutschein.at/cdn/shop/t/38/assets/Flagge-United_Kingdom.png?v=78381789718156253091764247604);
1545}
1546
1547#StoreSwitcher a.store-switcher__link.be .country-icon {
1548  background-image: url(//shop.wunschgutschein.at/cdn/shop/t/38/assets/Flagge-Belgium.png?v=29699016411168304141764247604);
1549}
1550
1551@media screen and (max-width: 749px) {
1552  #StoreSwitcher {
1553    width: calc(100vw - 42px);
1554    max-width: none;
1555    padding: 22px 16px 18px;
1556  }
1557
1558  #StoreSwitcher h2 {
1559    font-size: 19px;
1560    max-width: 250px;
1561  }
1562
1563  #StoreSwitcher a.store-switcher__link {
1564    min-height: 56px;
1565    padding: 9px 10px;
1566  }
1567
1568  #StoreSwitcher a.store-switcher__link .country-icon {
1569    flex-basis: 28px;
1570    width: 28px;
1571    height: 28px;
1572  }
1573
1574  .store-switcher__brand-logo {
1575    flex-basis: 32px;
1576    width: 32px;
1577    height: 32px;
1578  }
1579}
1580</style>
1581
1582<script type="text/javascript">
1583document.addEventListener("DOMContentLoaded", function() {
1584  var wrapper = document.getElementById("StoreSwitcher-Wrapper");
1585  var switcher = document.getElementById("StoreSwitcher");
1586
1587  if (!wrapper || !switcher) {
1588    return;
1589  }
1590
1591  /*
1592    Den Wrapper aus dem Header/App-Block lösen.
1593    Dadurch bleibt das Off-Canvas unabhängig von Header-Grid,
1594    Sticky-Header und Collection/Product-spezifischen Header-Styles.
1595  */
1596  if (wrapper.parentElement !== document.body) {
1597    document.body.appendChild(wrapper);
1598  }
1599
1600  var closeButton = document.getElementById("closeSwitcher");
1601  var status = document.getElementById("store-switcher-status");
1602  var triggers = document.querySelectorAll("a.store-switcher");
1603  var lastFocusedElement = null;
1604
1605  function openSwitcher(trigger) {
1606    lastFocusedElement = trigger || document.activeElement;
1607
1608    wrapper.classList.add("open");
1609    switcher.classList.add("open");
1610    wrapper.setAttribute("aria-hidden", "false");
1611    document.documentElement.classList.add("store-switcher-is-open");
1612    document.body.classList.add("store-switcher-is-open");
1613
1614    triggers.forEach(function(button) {
1615      button.setAttribute("aria-expanded", "true");
1616      button.setAttribute("aria-controls", "StoreSwitcher");
1617    });
1618
1619    if (status) {
1620      status.textContent = "Store-Auswahl geöffnet";
1621    }
1622
1623    window.setTimeout(function() {
1624      var firstLink = switcher.querySelector(".store-switcher__link");
1625
1626      if (firstLink) {
1627        firstLink.focus();
1628      }
1629    }, 250);
1630  }
1631
1632  function closeSwitcher() {
1633    wrapper.classList.remove("open");
1634    switcher.classList.remove("open");
1635    wrapper.setAttribute("aria-hidden", "true");
1636    document.documentElement.classList.remove("store-switcher-is-open");
1637    document.body.classList.remove("store-switcher-is-open");
1638
1639    triggers.forEach(function(button) {
1640      button.setAttribute("aria-expanded", "false");
1641    });
1642
1643    if (status) {
1644      status.textContent = "Store-Auswahl geschlossen";
1645    }
1646
1647    if (
1648      lastFocusedElement &&
1649      typeof lastFocusedElement.focus === "function" &&
1650      document.contains(lastFocusedElement)
1651    ) {
1652      lastFocusedElement.focus();
1653    }
1654  }
1655
1656  triggers.forEach(function(button) {
1657    button.setAttribute("aria-haspopup", "dialog");
1658    button.setAttribute("aria-expanded", "false");
1659
1660    button.addEventListener("click", function(e) {
1661      e.preventDefault();
1662      openSwitcher(button);
1663    });
1664  });
1665
1666  if (closeButton) {
1667    closeButton.addEventListener("click", function(e) {
1668      e.preventDefault();
1669      closeSwitcher();
1670    });
1671  }
1672
1673  wrapper.addEventListener("click", function(e) {
1674    if (e.target === wrapper) {
1675      closeSwitcher();
1676    }
1677  });
1678
1679  document.addEventListener("keydown", function(e) {
1680    if (e.key === "Escape" && wrapper.classList.contains("open")) {
1681      closeSwitcher();
1682    }
1683  });
1684});
1685</script>
1685
1686    
1687    <!-- BEGIN sections: header-group -->
1688<div id="shopify-section-sections--24141630734604__header" class="shopify-section shopify-section-group-header-group section-header"><link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-list-menu.css?v=151968516119678728991764247604" media="print" onload="this.media='all'">
1689<link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-search.css?v=165164710990765432851764247604" media="print" onload="this.media='all'">
1690<link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-menu-drawer.css?v=85170387104997277661764247604" media="print" onload="this.media='all'">
1691<link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-cart-notification.css?v=53243703774888764991764247604" media="print" onload="this.media='all'">
1692<link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-cart-items.css?v=91196790295029714991764247604" media="print" onload="this.media='all'">
1693<link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/header-custom.css?v=73424094265113818161764247604"><link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-price.css?v=168707297944429602851764247604" media="print" onload="this.media='all'"><noscript><link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-list-menu.css?v=151968516119678728991764247604" rel="stylesheet" type="text/css" media="all" /></noscript>
1694<noscript><link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-search.css?v=165164710990765432851764247604" rel="stylesheet" type="text/css" media="all" /></noscript>
1695<noscript><link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-menu-drawer.css?v=85170387104997277661764247604" rel="stylesheet" type="text/css" media="all" /></noscript>
1696<noscript><link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-cart-notification.css?v=53243703774888764991764247604" rel="stylesheet" type="text/css" media="all" /></noscript>
1697<noscript><link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-cart-items.css?v=91196790295029714991764247604" rel="stylesheet" type="text/css" media="all" /></noscript><style data-shopify>.header {
1698    padding: 0px 3rem 0px 3rem;
1699  }
1700
1701  .section-header {
1702    position: sticky; /* This is for fixing a Safari z-index issue. PR #2147 */
1703    margin-bottom: 0px;
1704  }
1705
1706  @media screen and (min-width: 750px) {
1707    .section-header {
1708      margin-bottom: 0px;
1709    }
1710  }
1711
1712  @media screen and (min-width: 990px) {
1713    .header {
1714      padding-top: 0px;
1715      padding-bottom: 0px;
1716    }
1717  }</style>
1717<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/details-disclosure.js?v=13653116266235556501764247604" defer="defer"></script>
vendor: 1 bytes, line 1717
1717
1718<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/details-modal.js?v=25581673532751508451764247604" defer="defer"></script>
vendor: 1 bytes, line 1718
1718
1719<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/cart-notification.js?v=133508293167896966491766572443" defer="defer"></script>
vendor: 1 bytes, line 1719
1719
1720<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/search-form.js?v=133129549252120666541764247604" defer="defer"></script>
1720<svg xmlns="http://www.w3.org/2000/svg" class="hidden">
1721  <symbol id="icon-search" viewbox="0 0 18 19" fill="none">
1722    <path fill-rule="evenodd" clip-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 112.85 3.5a5.784 5.784 0 018.18 8.18zm.26 1.12a6.78 6.78 0 11.72-.7l5.4 5.4a.5.5 0 11-.71.7l-5.41-5.4z" fill="currentColor"/>
1723  </symbol>
1724
1725  <symbol id="icon-reset" class="icon icon-close"  fill="none" viewBox="0 0 18 18" stroke="currentColor">
1726    <circle r="8.5" cy="9" cx="9" stroke-opacity="0.2"/>
1727    <path d="M6.82972 6.82915L1.17193 1.17097" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
1728    <path d="M1.22896 6.88502L6.77288 1.11523" stroke-linecap="round" stroke-linejoin="round" transform="translate(5 5)"/>
1729  </symbol>
1730
1731  <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17">
1732    <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
1733  </symbol>
1734</svg><div class="header-wrapper color-scheme-1 gradient"><header class="header header--top-center header--mobile-center page-width header--has-menu header--has-social">
1735
1736<div class="header-drawer-wrapper">
1737  <header-drawer data-breakpoint="tablet">
1738    <details id="Details-menu-drawer-container" class="menu-drawer-container">
1739      <summary
1740        class="header__icon header__icon--menu header__icon--summary link focus-inset"
1741        aria-label="Menü"
1742      >
1743        <span>
1744          <svg
1745  xmlns="http://www.w3.org/2000/svg"
1746  aria-hidden="true"
1747  focusable="false"
1748  class="icon icon-hamburger"
1749  fill="none"
1750  viewBox="0 0 18 16"
1751>
1752  <path d="M1 .5a.5.5 0 100 1h15.71a.5.5 0 000-1H1zM.5 8a.5.5 0 01.5-.5h15.71a.5.5 0 010 1H1A.5.5 0 01.5 8zm0 7a.5.5 0 01.5-.5h15.71a.5.5 0 010 1H1a.5.5 0 01-.5-.5z" fill="currentColor">
1753</svg>
1754
1755          <svg
1756  xmlns="http://www.w3.org/2000/svg"
1757  aria-hidden="true"
1758  focusable="false"
1759  class="icon icon-close"
1760  fill="none"
1761  viewBox="0 0 18 17"
1762>
1763  <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
1764</svg>
1765
1766        </span>
1767      </summary>
1768      <div id="menu-drawer" class="gradient menu-drawer motion-reduce color-scheme-1">
1769        <div class="menu-drawer__inner-container">
1770          <div class="menu-drawer__navigation-container">
1771            <nav class="menu-drawer__navigation">
1772              <ul class="menu-drawer__menu has-submenu list-menu" role="list"><li><a
1773                        id="HeaderDrawer-gutschein-kaufen"
1774                        href="/collections/all"
1775                        class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
1776                        
1777                      >
1778                        Gutschein kaufen
1779                      </a></li><li><a
1780                        id="HeaderDrawer-gutschein-einlosen"
1781                        href="https://app.wunschgutschein.at/"
1782                        class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
1783                        
1784                      >
1785                        Gutschein einlösen
1786                      </a></li><li><a
1787                        id="HeaderDrawer-gutschein-aufladen"
1788                        href="https://app.wunschgutschein.at/prepaid/"
1789                        class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
1790                        
1791                      >
1792                        Gutschein aufladen
1793                      </a></li><li><a
1794                        id="HeaderDrawer-fur-unternehmen"
1795                        href="/pages/b2b"
1796                        class="menu-drawer__menu-item list-menu__item link link--text focus-inset"
1797                        
1798                      >
1799                        Für Unternehmen
1800                      </a></li></ul>
1801            </nav>
1802            <div class="menu-drawer__utility-links"><div class="menu-drawer__localization header-localization"><noscript><form method="post" action="/localization" id="HeaderCountryMobileFormNoScriptDrawer" accept-charset="UTF-8" class="localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/products/motiv-wunscherfueller" /><div class="localization-form__select">
1803                          <h2 class="visually-hidden" id="HeaderCountryMobileLabelNoScriptDrawer">
1804                            Land/Region
1805                          </h2>
1806                          <select
1807                            class="localization-selector link"
1808                            name="country_code"
1809                            aria-labelledby="HeaderCountryMobileLabelNoScriptDrawer"
1810                          ><option
1811                                value="DE"
1812                              >
1813                                Deutschland (EUR
1814                                €)
1815                              </option><option
1816                                value="AT"
1817                                  selected
1818                                
1819                              >
1820                                Österreich (EUR
1821                                €)
1822                              </option><option
1823                                value="CH"
1824                              >
1825                                Schweiz (EUR
1826                                €)
1827                              </option></select>
1828                          <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
1829  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
1830</svg>
1831
1832                        </div>
1833                        <button class="button button--tertiary">Land/Region aktualisieren</button></form></noscript>
1834
1835                    <localization-form class="no-js-hidden"><form method="post" action="/localization" id="HeaderCountryMobileForm" accept-charset="UTF-8" class="localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/products/motiv-wunscherfueller" /><div>
1836                          <h2 class="visually-hidden" id="HeaderCountryMobileLabel">
1837                            Land/Region
1838                          </h2>
1839
1840<div class="disclosure">
1841  <button
1842    type="button"
1843    class="disclosure__button localization-form__select localization-selector link link--text caption-large"
1844    aria-expanded="false"
1845    aria-controls="HeaderCountryMobile-country-results"
1846    aria-describedby="HeaderCountryMobileLabel"
1847  >
1848    <span>Österreich |
1849      EUR
1850      €</span>
1851    <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
1852  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
1853</svg>
1854
1855  </button>
1856  <div class="disclosure__list-wrapper country-selector" hidden>
1857    <div class="country-filter country-filter--no-padding">
1858      
1859      <button
1860        class="country-selector__close-button button--small link"
1861        type="button"
1862        aria-label="Schließen"
1863      >
1864        <svg
1865  xmlns="http://www.w3.org/2000/svg"
1866  aria-hidden="true"
1867  focusable="false"
1868  class="icon icon-close"
1869  fill="none"
1870  viewBox="0 0 18 17"
1871>
1872  <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
1873</svg>
1874
1875      </button>
1876    </div>
1877    <div id="sr-country-search-results" class="visually-hidden" aria-l
1877ive="polite"></div>
1878    <div
1879      class="disclosure__list country-selector__list"
1880      id="HeaderCountryMobile-country-results"
1881    >
1882      
1883      <ul role="list" class="list-unstyled countries"><li class="disclosure__item" tabindex="-1">
1884            <a
1885              class="link link--text disclosure__link caption-large focus-inset"
1886              href="#"
1887              
1888              data-value="DE"
1889              id="Deutschland"
1890            >
1891              <span
1892                
1893                  class="visibility-hidden"
1894                
1895              ><svg
1896  class="icon icon-checkmark"
1897  aria-hidden="true"
1898  focusable="false"
1899  xmlns="http://www.w3.org/2000/svg"
1900  viewBox="0 0 12 9"
1901  fill="none"
1902>
1903  <path fill-rule="evenodd" clip-rule="evenodd" d="M11.35.643a.5.5 0 01.006.707l-6.77 6.886a.5.5 0 01-.719-.006L.638 4.845a.5.5 0 11.724-.69l2.872 3.011 6.41-6.517a.5.5 0 01.707-.006h-.001z" fill="currentColor"/>
1904</svg>
1905</span>
1906              <span class="country">Deutschland</span>
1907              <span class="localization-form__currency motion-reduce hidden">
1908                EUR
1909                €</span>
1910            </a>
1911          </li><li class="disclosure__item" tabindex="-1">
1912            <a
1913              class="link link--text disclosure__link caption-large focus-inset"
1914              href="#"
1915              
1916                aria-current="true"
1917              
1918              data-value="AT"
1919              id="Österreich"
1920            >
1921              <span
1922                
1923              ><svg
1924  class="icon icon-checkmark"
1925  aria-hidden="true"
1926  focusable="false"
1927  xmlns="http://www.w3.org/2000/svg"
1928  viewBox="0 0 12 9"
1929  fill="none"
1930>
1931  <path fill-rule="evenodd" clip-rule="evenodd" d="M11.35.643a.5.5 0 01.006.707l-6.77 6.886a.5.5 0 01-.719-.006L.638 4.845a.5.5 0 11.724-.69l2.872 3.011 6.41-6.517a.5.5 0 01.707-.006h-.001z" fill="currentColor"/>
1932</svg>
1933</span>
1934              <span class="country">Österreich</span>
1935              <span class="localization-form__currency motion-reduce hidden">
1936                EUR
1937                €</span>
1938            </a>
1939          </li><li class="disclosure__item" tabindex="-1">
1940            <a
1941              class="link link--text disclosure__link caption-large focus-inset"
1942              href="#"
1943              
1944              data-value="CH"
1945              id="Schweiz"
1946            >
1947              <span
1948                
1949                  class="visibility-hidden"
1950                
1951              ><svg
1952  class="icon icon-checkmark"
1953  aria-hidden="true"
1954  focusable="false"
1955  xmlns="http://www.w3.org/2000/svg"
1956  viewBox="0 0 12 9"
1957  fill="none"
1958>
1959  <path fill-rule="evenodd" clip-rule="evenodd" d="M11.35.643a.5.5 0 01.006.707l-6.77 6.886a.5.5 0 01-.719-.006L.638 4.845a.5.5 0 11.724-.69l2.872 3.011 6.41-6.517a.5.5 0 01.707-.006h-.001z" fill="currentColor"/>
1960</svg>
1961</span>
1962              <span class="country">Schweiz</span>
1963              <span class="localization-form__currency motion-reduce hidden">
1964                EUR
1965                €</span>
1966            </a>
1967          </li></ul>
1968    </div>
1969  </div>
1970  <div class="country-selector__overlay"></div>
1971</div>
1972<input type="hidden" name="country_code" value="AT">
1973</div></form></localization-form>
1974                  
1975</div><ul class="list list-social list-unstyled" role="list"><li class="list-social__item">
1976                    <a href="https://twitter.com/wunschgutschein" class="list-social__link link"><svg aria-hidden="true" focusable="false" class="icon icon-twitter" viewBox="0 0 20 20">
1977  <path fill="currentColor" d="M18.608 4.967a7.364 7.364 0 0 1-1.758 1.828c0 .05 0 .13.02.23l.02.232a10.014 10.014 0 0 1-1.697 5.565 11.023 11.023 0 0 1-2.029 2.29 9.13 9.13 0 0 1-2.832 1.607 10.273 10.273 0 0 1-8.94-.985c.342.02.613.04.834.04 1.647 0 3.114-.502 4.4-1.506a3.616 3.616 0 0 1-3.315-2.46c.528.128 1.08.107 1.597-.061a3.485 3.485 0 0 1-2.029-1.216 3.385 3.385 0 0 1-.803-2.23v-.03c.462.242.984.372 1.587.402A3.465 3.465 0 0 1 2.116 5.76c0-.612.14-1.205.452-1.798a9.723 9.723 0 0 0 3.214 2.612A10.044 10.044 0 0 0 9.88 7.649a3.013 3.013 0 0 1-.13-.804c0-.974.34-1.808 1.034-2.49a3.466 3.466 0 0 1 2.561-1.035 3.505 3.505 0 0 1 2.551 1.104 6.812 6.812 0 0 0 2.24-.853 3.415 3.415 0 0 1-1.547 1.948 7.732 7.732 0 0 0 2.02-.542v-.01
1977Z"/>
1978</svg>
1979<span class="visually-hidden">Twitter</span>
1980                    </a>
1981                  </li><li class="list-social__item">
1982                    <a href="https://www.facebook.com/wunschgutschein/" class="list-social__link link"><svg aria-hidden="true" focusable="false" class="icon icon-facebook" viewBox="0 0 20 20">
1983  <path fill="currentColor" d="M18 10.049C18 5.603 14.419 2 10 2c-4.419 0-8 3.603-8 8.049C2 14.067 4.925 17.396 8.75 18v-5.624H6.719v-2.328h2.03V8.275c0-2.017 1.195-3.132 3.023-3.132.874 0 1.79.158 1.79.158v1.98h-1.009c-.994 0-1.303.621-1.303 1.258v1.51h2.219l-.355 2.326H11.25V18c3.825-.604 6.75-3.933 6.75-7.951Z"/>
1984</svg>
1985<span class="visually-hidden">Facebook</span>
1986                    </a>
1987                  </li><li class="list-social__item">
1988                    <a href="https://www.instagram.com/wunschgutschein/" class="list-social__link link"><svg aria-hidden="true" focusable="false" class="icon icon-instagram" viewBox="0 0 20 20">
1989  <path fill="currentColor" fill-rule="evenodd" d="M13.23 3.492c-.84-.037-1.096-.046-3.23-.046-2.144 0-2.39.01-3.238.055-.776.027-1.195.164-1.487.273a2.43 2.43 0 0 0-.912.593 2.486 2.486 0 0 0-.602.922c-.11.282-.238.702-.274 1.486-.046.84-.046 1.095-.046 3.23 0 2.134.01 2.39.046 3.229.004.51.097 1.016.274 1.495.145.365.319.639.602.913.282.282.538.456.92.602.474.176.974.268 1.479.273.848.046 1.103.046 3.238.046 2.134 0 2.39-.01 3.23-.046.784-.036 1.203-.164 1.486-.273.374-.146.648-.329.921-.602.283-.283.447-.548.602-.922.177-.476.27-.979.274-1.486.037-.84.046-1.095.046-3.23 0-2.134-.01-2.39-.055-3.229-.027-.784-.164-1.204-.274-1.495a2.43 2.43 0 0 0-.593-.913 2.604 2.604 0 0 0-.92-.602c-.284-.11-.703-.237-1.488-.273ZM6.697 2.05c.857-.036 1.131-.045 3.302-.045 1.1-.014 2.202.001 3.302.045.664.014 1.321.14 1.943.374a3.968 3.968 0 0 1 1.414.922c.41.397.728.88.93 1.414.23.622.354 1.279.365 1.942C18 7.56 18 7.824 18 10.005c0 2.17-.01 2.444-.046 3.292-.036.858-.173 1.442-.374 1.943-.2.53-.474.976-.92 1.423a3.896 3.896 0 0 1-1.415.922c-.51.191-1.095.337-1.943.374-.857.036-1.122.045-3.302.045-2.171 0-2.445-.009-3.302-.055-.849-.027-1.432-.164-1.943-.364a4.152 4.152 0 0 1-1.414-.922 4.128 4.128 0 0 1-.93-1.423c-.183-.51-.329-1.085-.365-1.943C2.009 12.45 2 12.167 2 10.004c0-2.161 0-2.435.055-3.302.027-.848.164-1.432.365-1.942a4.44 4.44 0 0 1 .92-1.414 4.18 4.18 0 0 1 1.415-.93c.51-.183 1.094-.33 1.943-.366Zm.427 4.806a4.105 4.105 0 1 1 5.805 5.805 4.105 4.105 0 0 1-5.805-5.805Zm1.882 5.371a2.668 2.668 0 1 0 2.042-4.93 2.668 2.668 0 0 0-2.042 4.93Zm5.922-5.942a.958.958 0 1 1-1.355-1.355.958.958 0 0 1 1.355 1.355Z" clip-rule="evenodd"/>
1990</svg>
1991<span class="visually-hidden">Instagram</span>
1992                    </a>
1993                  </li></ul>
1994            </div>
1995          </div>
1996        </div>
1997      </div>
1998    </details>
1999  </header-drawer>
2000  
2001  <a href="#" id="StoreSwitcher__medium-down" class="store-switcher"><img src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/globe.svg?v=35267916335136864491764247604" height="20" alt="Store Switcher" /></a>
2002</div>
2003
2004
2005<details-modal class="header__search">
2006  <details>
2007    <summary
2008      class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle"
2009      aria-haspopup="dialog"
2010      aria-label="Suchen"
2011    >
2012      <span>
2013        <svg class="modal__toggle-open icon icon-search" aria-hidden="true" focusable="false">
2014          <use href="#icon-search">
2015        </svg>
2016        <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false">
2017          <use href="#icon-close">
2018        </svg>
2019      </span>
2020    </summary>
2021    <div
2022      class="search-modal modal__content gradient"
2023      role="dialog"
2024      aria-modal="true"
2025      aria-label="Suchen"
2026    >
2027      <div class="modal-overlay"></div>
2028      <div
2029        class="search-modal__content search-modal__content-bottom"
2030        tabindex="-1"
2031      ><predictive-search class="search-modal__form" data-loading-text="Wird geladen ..."><form action="/search" method="get" role="search" class="search search-modal__form">
2032          <div class="field">
2033            <input
2034              class="search__input field__input"
2035              id="Search-In-Modal-1"
2036              type="search"
2037              name="q"
2038              value=""
2039              placeholder="Suchen"role="combobox"
2040                aria-expanded="false"
2041                aria-owns="predictive-search-results"
2042                aria-controls="predictive-search-results"
2043                aria-haspopup="listbox"
2044                aria-autocomplete="list"
2045                autocorrect="off"
2046                autocomplete="off"
2047                autocapitalize="off"
2048                spellcheck="false">
2049            <label class="field__label" for="Search-In-Modal-1">Suchen</label>
2050            <input type="hidden" name="options[prefix]" value="last">
2051            <button
2052              type="reset"
2053              class="reset__button field__button hidden"
2054              aria-label="Suchbegriff zurücksetzen"
2055            >
2056              <svg class="icon icon-close" aria-hidden="true" focusable="false">
2057                <use xlink:href="#icon-reset">
2058              </svg>
2059            </button>
2060            <button class="search__button field__button" aria-label="Suchen">
2061              <svg class="icon icon-search" aria-hidden="true" focusable="false">
2062                <use href="#icon-search">
2063              </svg>
2064            </button>
2065          </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search>
2066
2067<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
2068
2069<div class="predictive-search__loading-state">
2070  <svg
2071    aria-hidden="true"
2072    focusable="false"
2073    class="spinner"
2074    viewBox="0 0 66 66"
2075    xmlns="http://www.w3.org/2000/svg"
2076  >
2077    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
2078  </svg>
2079</div>
2080</div>
2081
2082            <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search><button
2083          type="button"
2084          class="search-modal__close-button modal__close-button link link--text focus-inset"
2085          aria-label="Schließen"
2086        >
2087          <svg class="icon icon-close" aria-hidden="true" focusable="false">
2088            <use href="#icon-close">
2089          </svg>
2090        </button>
2091      </div>
2092    </div>
2093  </details>
2094
2095  
2096  
2097  <a href="#" id="StoreSwitcher__medium-up" class="store-switcher"><img src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/globe.svg?v=35267916335136864491764247604" height="20" alt="Store Switcher" /> &nbsp; Österreich</a>
2098</details-modal>
2099<a href="/" class="header__heading-link link link--text focus-inset"><div class="header__heading-logo-wrapper">
2100                
2101                <img src="//shop.wunschgutschein.at/cdn/shop/files/WGS_Bubble.png?v=1750835004&amp;width=600" alt="Wunschgutschein Österreich" srcset="//shop.wunschgutschein.at/cdn/shop/files/WGS_Bubble.png?v=1750835004&amp;width=90 90w, //shop.wunschgutschein.at/cdn/shop/files/WGS_Bubble.png?v=1750835004&amp;width=135 135w, //shop.wunschgutschein.at/cdn/shop/files/WGS_Bubble.png?v=1750835004&amp;width=180 180w" width="90" height="90.0" loading="eager" class="header__heading-logo motion-reduce" sizes="(max-width: 180px) 50vw, 90px">
2102              </div></a>
2103
2104<nav class="header__inline-menu">
2105  <ul class="list-menu list-menu--inline" role="list"><li><a
2106            id="HeaderMenu-gutschein-kaufen"
2107            href="/collections/all"
2108            class="header__menu-item list-menu__item link link--text focus-inset"
2109            
2110          >
2111            <span
2112            >Gutschein kaufen</span>
2113          </a></li><li><a
2114            id="HeaderMenu-gutschein-einlosen"
2115            href="https://app.wunschgutschein.at/"
2116            class="header__menu-item list-menu__item link link--text focus-inset"
2117            
2118          >
2119            <span
2120            >Gutschein einlösen</span>
2121          </a></li><li><a
2122            id="HeaderMenu-gutschein-aufladen"
2123            href="https://app.wunschgutschein.at/prepaid/"
2124            class="header__menu-item list-menu__item link link--text focus-inset"
2125            
2126          >
2127            <span
2128            >Gutschein aufladen</span>
2129          </a></li><li><a
2130            id="HeaderMenu-fur-unternehmen"
2131            href="/pages/b2b"
2132            class="header__menu-item list-menu__item link link--text focus-inset"
2133            
2134          >
2135            <span
2136            >Für Unternehmen</span>
2137          </a></li></ul>
2138</nav>
2139
2140<div class="header__icons header__icons--localization header-localization">
2141      <div class="desktop-localization-wrapper">
2142</div>
2143      
2144
2145<details-modal class="header__search">
2146  <details>
2147    <summary
2148      class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle"
2149      aria-haspopup="dialog"
2150      aria-label="Suchen"
2151    >
2152      <span>
2153        <svg class="modal__toggle-open icon icon-search" aria-hidden="true" focusable="false">
2154          <use href="#icon-search">
2155        </svg>
2156        <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false">
2157          <use href="#icon-close">
2158        </svg>
2159      </span>
2160    </summary>
2161    <div
2162      class="search-modal modal__content gradient"
2163      role="dialog"
2164      aria-modal="true"
2165      aria-label="Suchen"
2166    >
2167      <div class="modal-overlay"></div>
2168      <div
2169        class="search-modal__content search-modal__content-bottom"
2170        tabindex="-1"
2171      ><predictive-search class="search-modal__form" data-loading-text="Wird geladen ..."><form action="/search" method="get" role="search" class="search search-modal__form">
2172          <div class="field">
2173            <input
2174              class="search__input field__input"
2175              id="Search-In-Modal"
2176              type="search"
2177              name="q"
2178              value=""
2179              placeholder="Suchen"role="combobox"
2180                aria-expanded="false"
2181                aria-owns="predictive-search-results"
2182                aria-controls="predictive-search-results"
2183                aria-haspopup="listbox"
2184                aria-autocomplete="list"
2185                autocorrect="off"
2186                autocomplete="off"
2187                autocapitalize="off"
2188                spellcheck="false">
2189            <label class="field__label" for="Search-In-Modal">Suchen</label>
2190            <input type="hidden" name="options[prefix]" value="last">
2191            <button
2192              type="reset"
2193              class="reset__button field__button hidden"
2194              aria-label="Suchbegriff zurücksetzen"
2195            >
2196              <svg class="icon icon-close" aria-hidden="true" focusable="false">
2197                <use xlink:href="#icon-reset">
2198              </svg>
2199            </button>
2200            <button class="search__button field__button" aria-label="Suchen">
2201              <svg class="icon icon-search" aria-hidden="true" focusable="false">
2202                <use href="#icon-search">
2203              </svg>
2204            </button>
2205          </div><div class="predictive-search predictive-search--header" tabindex="-1" data-predictive-search>
2206
2207<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
2208
2209<div class="predictive-search__loading-state">
2210  <svg
2211    aria-hidden="true"
2212    focusable="false"
2213    class="spinner"
2214    viewBox="0 0 66 66"
2215    xmlns="http://www.w3.org/2000/svg"
2216  >
2217    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
2218  </svg>
2219</div>
2220</div>
2221
2222            <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span></form></predictive-search><button
2223          type="button"
2224          class="search-modal__close-button modal__close-button link link--text focus-inset"
2225          aria-label="Schließen"
2226        >
2227          <svg class="icon icon-close" aria-hidden="true" focusable="false">
2228            <use href="#icon-close">
2229          </svg>
2230        </button>
2231      </div>
2232    </div>
2233  </details>
2234
2235  
2236  
2237  <a href="#" id="StoreSwitcher__medium-up" class="store-switcher"><img src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/globe.svg?v=35267916335136864491764247604" height="20" alt="Store Switcher" /> &nbsp; Österreich</a>
2238</details-modal>
2239
2240<a href="/cart" class="header__cart-label small-hide">Warenkorb</a>
2241      <a href="/cart" class="header__icon header__icon--cart link focus-inset" id="cart-icon-bubble">
2242        <svg
2243  class="icon icon-cart-empty"
2244  aria-hidden="true"
2245  focusable="false"
2246  xmlns="http://www.w3.org/2000/svg"
2247  viewBox="0 0 40 40"
2248  fill="none"
2249>
2250  <path d="m15.75 11.8h-3.16l-.77 11.6a5 5 0 0 0 4.99 5.34h7.38a5 5 0 0 0 4.99-5.33l-.78-11.61zm0 1h-2.22l-.71 10.67a4 4 0 0 0 3.99 4.27h7.38a4 4 0 0 0 4-4.27l-.72-10.67h-2.22v.63a4.75 4.75 0 1 1 -9.5 0zm8.5 0h-7.5v.63a3.75 3.75 0 1 0 7.5 0z" fill="currentColor" fill-rule="evenodd"/>
2251</svg><span class="visually-hidden">Warenkorb</span>
2252      </a>
2253    </div>
2254  </header>
2255</div>
2256
2257      
2258
2259  <!-- Phase: Ausgeblendet -->
2260
2261
2262<script>
2263  
2264  
2265  
2266</script>
2266
2267
2268  
2269
2270  <style data-shopify>
2271    #shopify-section-header {
2272      margin-bottom: 0px;
2273    }
2274    nav.breadcrumb a.home-url span{
2275      display: inline-block;
2276      width: 16px;
2277      vertical-align: middle;
2278    }
2279    nav.breadcrumb .container-breadcrumb {
2280      padding-top: 30px;
2281    }
2282    nav.breadcrumb a,
2283    nav.breadcrumb span {
2284      color: rgba(var(--color-foreground), 0.75);
2285      text-transform: capitalize;
2286      font-size: 13px;
2287    }
2288    nav.breadcrumb a:link { text-decoration: none; }
2289    nav.breadcrumb a:visited { text-decoration: none; }
2290    nav.breadcrumb a:hover { text-decoration: none; }
2291    nav.breadcrumb a:active { text-decoration: none; }
2292  </style>
2293  
2294  <nav class="breadcrumb page-width" role="navigation" aria-label="breadcrumbs">
2295    <div class="container-breadcrumb">
2296      <a class="home-url" href="/" title="Zurück zur Startseite">
2297        <span><svg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" role="presentation" class="icon icon-home" fill="none">
2298    <path d="M18 7.261V17.5c0 .841-.672 1.5-1.5 1.5h-2c-.828 0-1.5-.659-1.5-1.5V13H7v4.477C7 18.318 6.328 19 5.5 19h-2c-.828 0-1.5-.682-1.5-1.523V7.261a1.5 1.5 0 01.615-1.21l6.59-4.82a1.481 1.481 0 011.59 0l6.59 4.82A1.5 1.5 0 0118 7.26z" fill="#5C5F62"/>
2299</svg></span></a>
2300      
2301        
2302            <span class="breadcrumb__divider product-url" aria-hidden="true">&gt;</span>
2303            <a class="product-url" id="bridge-url" href="#"></a>
2304          <span class="breadcrumb__divider" aria-hidden="true" class="">&gt;</span>
2305          
2305<script>
2306            document.getElementById("bridge-url").innerHTML = sessionStorage.getItem("handleName");
2307            document.getElementById("bridge-url").href = sessionStorage.getItem("handleUrl");
2308            if (sessionStorage.getItem("handleName") == null || sessionStorage.getItem("handleName") == "" ) {
2309              document.getElementById("bridge-url").innerHTML = "Alle Gutscheinmotive";
2310              document.getElementById("bridge-url").href = "/collections/all";
2311            }
2312          </script>
2312
2313          <span>Dein Wunscherfüller </span>
2314        
2315      
2316    </div>
2317  </nav>
2318
2319
2320
2321
2322<cart-notification>
2323  <div class="cart-notification-wrapper page-width">
2324    <div
2325      id="cart-notification"
2326      class="cart-notification focus-inset color-scheme-1 gradient"
2327      aria-modal="true"
2328      aria-label="Artikel wurde in den Warenkorb gelegt"
2329      role="dialog"
2330      tabindex="-1"
2331    >
2332      <div class="cart-notification__header">
2333        <h2 class="cart-notification__heading caption-large text-body"><svg
2334  class="icon icon-checkmark"
2335  aria-hidden="true"
2336  focusable="false"
2337  xmlns="http://www.w3.org/2000/svg"
2338  viewBox="0 0 12 9"
2339  fill="none"
2340>
2341  <path fill-rule="evenodd" clip-rule="evenodd" d="M11.35.643a.5.5 0 01.006.707l-6.77 6.886a.5.5 0 01-.719-.006L.638 4.845a.5.5 0 11.724-.69l2.872 3.011 6.41-6.517a.5.5 0 01.707-.006h-.001z" fill="currentColor"/>
2342</svg>
2343Artikel wurde in den Warenkorb gelegt
2344        </h2>
2345        <button
2346          type="button"
2347          class="cart-notification__close modal__close-button link link--text focus-inset"
2348          aria-label="Schließen"
2349        >
2350          <svg class="icon icon-close" aria-hidden="true" focusable="false">
2351            <use href="#icon-close">
2352          </svg>
2353        </button>
2354      </div>
2355      <div id="cart-notification-product" class="cart-notification-product"></div>
2356      <div class="cart-notification__links">
2357        <a
2358          href="/cart"
2359          id="cart-notification-button"
2360          class="button button--secondary button--full-width"
2361        >Warenkorb ansehen</a>
2362        <button type="button" class="link button-label">Weiter shoppen</button>
2363      </div>
2364    </div>
2365  </div>
2366</cart-notification>
2367
2368<style data-shopify>
2369:root{ --cn-radius: 4px; --header-offset: 16px; }
2370
2371/* Base container (desktop defaults) */
2372#cart-notification{
2373  position: fixed;
2374  top: var(--header-offset);
2375  right: max(16px, env(safe-area-inset-right,0));
2376  left: auto; bottom: auto;
2377  z-index: 1000;
2378
2379  width: min(420px, calc(100% - 32px));
2380  max-height: 85vh; height: auto; overflow: hidden;
2381
2382  background: #fff; color: #111;
2383  border: 1px solid rgba(0,0,0,.08);
2384  border-radius: var(--cn-radius);
2385  box-shadow: 0 12px 30px rgba(0,0,0,.16);
2386
2387  opacity: 0; /* Start: unsichtbar */
2388  background-image: none;
2389  mix-blend-mode: normal;
2390  -webkit-backdrop-filter: none; backdrop-filter: none;
2391
2392  transform: translateX(24px); /* etwas weiter „draußen“ */
2393  transition:
2394    transform .6s cubic-bezier(0.22, 0.61, 0.36, 1),
2395    opacity  .6s cubic-bezier(0.22, 0.61, 0.36, 1);
2396}
2397
2398#cart-notification::before,
2399#cart-notification::after{ content: none; }
2400#cart-notification *{ box-sizing: border-box; opacity: 1; mix-blend-mode: normal; }
2401
2402/* Header / Bestätigungszeile */
2403#cart-notification .cart-notification__header{
2404  display:flex; align-items:center; justify-content:space-between;
2405  flex-wrap: nowrap; gap:.5rem; padding:12px; border-bottom:1px solid rgba(0,0,0,.08);
2406}
2407#cart-notification .cart-notification__heading{
2408  margin:0;
2409  font-size: 1.45rem !important;
2410  font-weight: 600;
2411  line-height: 1.3;
2412  display:flex;
2413  align-items:center;
2414  gap:.5rem;
2415  flex:1 1 auto;
2416  text-align: left;
2417  white-space: normal;
2418  overflow: visible;
2419  text-overflow: unset;
2420}
2421
2422#cart-notification .cart-notification__heading svg{
2423  width:18px; height:18px; flex:0 0 auto; color:#16a34a; stroke:currentColor; fill:currentColor;
2424}
2425#cart-notification .cart-notification__close .icon-close {
2426  width: 14px !important;
2427  height: 14px !important;
2428}
2429#cart-notification .cart-notification__close{
2430  appearance:none; background:transparent; border:0; padding:6px; border-radius:var(--cn-radius);
2431}
2432/* Close-Button weiter oben rechts platzieren */
2433#cart-notification .cart-notification__close{
2434  position: absolute;
2435  top: -4px;      
2436  right: -2px;    
2437  padding: 6px;
2438  border-radius: var(--cn-radius);
2439}
2440#cart-notification .cart-notification__header{
2441  position: relative;
2442  padding-right: 40px; /* Platz für das X */
2443}
2444
2445#cart-notification .cart-notification__close:hover{ background:rgba(0,0,0,.05); }
2446
2447/* PRODUKTBEREICH */
2448#cart-notification #cart-notification-product{
2449  padding:12px;
2450  font-size: 1rem;              /* Basis etwas größer */
2451  line-height: 1.4;
2452}
2453#cart-notification #cart-notification-product *:not(svg){
2454  font-size: inherit; line-height: inherit;
2455}
2456
2457/* Produkttitel – jetzt noch größer */
2458#cart-notification #cart-notification-product .cart-notification-product__name,
2459#cart-notification #cart-notification-product .cart-notification-product__name a,
2460#cart-notification #cart-notification-product .cart-notification__product-name,
2461#cart-notification #cart-notification-product .cart-notification__product-name a,
2462#cart-notification #cart-notification-product .product-title,
2463#cart-notification #cart-notification-product a.product-title,
2464#cart-notification #cart-notification-product a[href*="/products/"],
2465#cart-notification #cart-notification-product h3,
2466#cart-notification #cart-notification-product h4,
2467#cart-notification #cart-notification-product .h3,
2468#cart-notification #cart-notification-product .h4{
2469  font-size: 1.35rem !important;
2470  font-weight: 700 !important;
2471  white-space: normal;
2472  overflow: visible;
2473  text-overflow: unset;
2474}
2475
2476/* Preis – noch größer */
2477#cart-notification #cart-notification-product .price,
2478#cart-notification #cart-notification-product [class*="price"]{
2479  font-size: 1.35rem !important;
2480  font-weight: 700 !important;
2481}
2482
2483/* Varianten / Meta (Wertstufe etc. größer) */
2484#cart-notification #cart-notification-product .product-option,
2485#cart-notification #cart-notification-product .product-option dt,
2486#cart-notification #cart-notification-product .product-option dd,
2487#cart-notification #cart-notification-product .product-options,
2488#cart-notification #cart-notification-product .product-variant,
2489#cart-notification #cart-notification-product .product-sku,
2490#cart-notification #cart-notification-product .variant{
2491  font-size: 1.15rem !important;
2492  line-height: 1.4 !important;
2493  opacity: .9;
2494}
2495
2496#cart-notification .cart-notification__links{
2497  display:flex;
2498  flex-direction: column;  
2499  gap:.75rem;            
2500  padding:12px;
2501  border-top:1px solid rgba(0,0,0,.08);
2502}
2503
2504#cart-notification .button{
2505  height:44px; border-radius:var(--cn-radius);
2506  border:1px solid rgba(0,0,0,.08);
2507  background:#f7f7f7; color:inherit;
2508}
2509#cart-notification .button.button--secondary{
2510  background: var(--color-button, #111);
2511  color: var(--color-button-text, #fff);
2512  border-color: transparent;
2513}
2514#cart-notification #cart-notification-button {
2515  font-size: 1.25rem !important;
2516  font-weight: 600;
2517  text-align: center;
2518  padding: 10px 14px;
2519  border-radius: 4px;
2520  background: #111;
2521  color: #fff !important;
2522  border: none;
2523  letter-spacing: 0.5px;
2524}
2525
2526/* "Einkauf fortsetzen" kleiner darstellen */
2527#cart-notification .cart-notification__links .button-label{
2528  font-size: 1.25rem !important;
2529  font-weight: 400;
2530  opacity: 0.9;
2531}
2532
2533#cart-notification[style*="display: block"],
2534#cart-notification.is-open,
2535#cart-notification.active,
2536#cart-notification[open]{
2537  display:block;
2538  transform: translateX(0);
2539  opacity: 1; /* weich einblenden */
2540}
2541
2542/* Theme-Varianten neutralisieren */
2543#cart-notification.gradient,
2544#cart-notification[class*="color-"]{ background:#fff; background-image:none; }
2545
2546#cart-notification.drawer,
2547#cart-notification[class*="drawer"]{
2548  all: unset;
2549  position: fixed;
2550  top: var(--header-offset); right: 16px; left: auto; bottom: auto;
2551  z-index: 9999; 
2552  display: block; transform: translateX(0);
2553  width: min(420px, calc(100% - 32px));
2554  max-height: 85vh; overflow: hidden;
2555  background:#fff; color:#111;
2556  border:1px solid rgba(0,0,0,.08); border-radius: var(--cn-radius);
2557  box-shadow:0 12px 30px rgba(0,0,0,.16);
2558}
2559
2560@media (max-width: 749px){
2561  #cart-notification{
2562    top: auto; right: 12px; left: 12px;
2563    bottom: calc(12px + env(safe-area-inset-bottom,0));
2564    width: auto; max-width: none;
2565
2566    transform: translateY(20px); /* etwas weiter unten starten */
2567    transition:
2568      transform .6s cubic-bezier(0.22, 0.61, 0.36, 1),
2569      opacity  .6s cubic-bezier(0.22, 0.61, 0.36, 1);
2570    box-shadow: 0 16px 36px rgba(0,0,0,.22);
2571  }
2572  #cart-notification[style*="display: block"],
2573  #cart-notification.is-open,
2574  #cart-notification.active,
2575  #cart-notification[open]{
2576    transform: translateY(0);
2577    /* opacity kommt schon aus dem globalen Block = 1 */
2578  }
2579}
2580
2581/* Reduced motion */
2582@media (prefers-reduced-motion: reduce){
2583  #cart-notification{ transition: none; }
2584}
2585
2586/* Mobile: Cart-Notification immer ganz vorne */
2587@media (max-width: 749px){
2588  #cart-notification {
2589    position: fixed !important;
2590    z-index: 999999 !important;
2591  }
2592}
2593</style>
2594
2595<script>
2596document.addEventListener('DOMContentLoaded', () => {
2597  const cn = document.getElementById('cart-notification');
2598  if (!cn) return; // falls Snippet auf der Seite nicht existiert → sauber abbrechen
2599
2600  const AUTO_CLOSE_DELAY = 5000;
2601
2602  const closeNotification = () => {
2603    // 1. Erst versuchen, die bestehende Theme-Logik zu verwenden
2604    const closeBtn = cn.querySelector('.cart-notification__close');
2605    if (closeBtn) {
2606      closeBtn.click();
2607      return;
2608    }
2609
2610    // 2. Fallback: nur Klassen/Attribute aufräumen, nicht hart verstecken
2611    cn.classList.remove('is-open', 'active');
2612    cn.removeAttribute('open');
2613    cn.style.removeProperty('display');
2614  };
2615
2616  const observer = new MutationObserver(() => {
2617    const isOpen =
2618      cn.classList.contains('is-open') ||
2619      cn.classList.contains('active') ||
2620      cn.hasAttribute('open') ||
2621      cn.style.display === 'block';
2622
2623    if (!isOpen) return;
2624
2625    clearTimeout(cn._autoCloseTimer);
2626    cn._autoCloseTimer = setTimeout(closeNotification, AUTO_CLOSE_DELAY);
2627  });
2628
2629  observer.observe(cn, { attributes: true, attributeFilter: ['class', 'style', 'open'] });
2630});
2631</script>
2631
2632
2633
2634<script type="application/ld+json">
2635  {
2636    "@context": "http://schema.org",
2637    "@type": "Organization",
2638    "name": "Wunschgutschein Österreich",
2639    
2640      "logo": "https:\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/WGS_Bubble.png?v=1750835004\u0026width=500",
2641    
2642    "sameAs": [
2643      "https:\/\/twitter.com\/wunschgutschein",
2644      "https:\/\/www.facebook.com\/wunschgutschein\/",
2645      "",
2646      "https:\/\/www.instagram.com\/wunschgutschein\/",
2647      "",
2648      "",
2649      "",
2650      "",
2651      ""
2652    ],
2653    "url": "https:\/\/shop.wunschgutschein.at"
2654  }
2655</script>
2655
2656</div><section id="shopify-section-sections--24141630734604__custom_liquid_B6dFgc" class="shopify-section shopify-section-group-header-group section"><style data-shopify>.section-sections--24141630734604__custom_liquid_B6dFgc-padding {
2657    padding-top: calc(0px * 0.75);
2658    padding-bottom: calc(0px  * 0.75);
2659  }
2660
2661  @media screen and (min-width: 750px) {
2662    .section-sections--24141630734604__custom_liquid_B6dFgc-padding {
2663      padding-top: 0px;
2664      padding-bottom: 0px;
2665    }
2666  }</style><div class="color-scheme-1 gradient">
2667  <div class="section-sections--24141630734604__custom_liquid_B6dFgc-padding">
2668    <style>
2669.shg-product-quantity-wrapper {
2670border: 0.2px solid rgba(0,0,0,0.07) !important;
2671border-radius: 4px !important;
2672padding: 4px 10px !important;
2673}
2674.shg-product-quantity-wrapper input {
2675border: 0;
2676}
2677.shg-product-quantity-button {
2678background: none;
2679font-size: 18px;
2680}
2681
2682.shg-product-variant-select {
2683
2684}
2685</style>
2686  </div>
2687</div>
2688
2689
2690</section>
2691<!-- END sections: header-group -->
2692
2693    <main id="MainContent" class="content-for-layout focus-none" role="main" tabindex="-1">
2694      <section id="shopify-section-template--24141640106252__main" class="shopify-section section"><section
2695  id="MainProduct-template--24141640106252__main"
2696  class="section-template--24141640106252__main-padding gradient color-scheme-1"
2697  data-section="template--24141640106252__main"
2698>
2699  <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/section-main-product.css?v=68102284424569991801764247604" rel="stylesheet" type="text/css" media="all" />
2700  <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-accordion.css?v=180964204318874863811764247604" rel="stylesheet" type="text/css" media="all" />
2701  <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-price.css?v=168707297944429602851764247604" rel="stylesheet" type="text/css" media="all" />
2702  <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-slider.css?v=165468452555025970701764247604" rel="stylesheet" type="text/css" media="all" />
2703  <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-rating.css?v=179577762467860590411764247604" rel="stylesheet" type="text/css" media="all" />
2704  <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-deferred-media.css?v=14096082462203297471764247604" rel="stylesheet" type="text/css" media="all" />
2705  <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/product-personalizer.css?v=160902701380973084391764247604" rel="stylesheet" type="text/css" media="all" />
2706  
2707    <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-product-variant-picker.css?v=81234103128702687341764247604" rel="stylesheet" type="text/css" media="all" />
2708    <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-swatch-input.css?v=184205075229120217711764247604" rel="stylesheet" type="text/css" media="all" />
2709    <link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-swatch.css?v=61896725941242793861764247604" rel="stylesheet" type="text/css" media="all" />
2710  
2711<style data-shopify>.section-template--24141640106252__main-padding {
2712      padding-top: 0px;
2713      padding-bottom: 18px;
2714    }
2715
2716    @media screen and (min-width: 750px) {
2717      .section-template--24141640106252__main-padding {
2718        padding-top: 0px;
2719        padding-bottom: 24px;
2720      }
2721    }</style>
2721<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/product-info.js?v=125122232605238659181764247604" defer="defer"></script>
2721
2722  
2722<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/product-form.js?v=96021079696123670171764247604" defer="defer"></script>
2722
2723  <link rel="stylesheet" href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/WUN-25.css?v=135274092415500482231764253287">
2724<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/WUN-25_.js?v=21719" defer="defer"></script>
2724
2725  
2726
2727    
2727<script id="EnableZoomOnHover-main" src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/magnify.js?v=137710018090829782941764247604" defer="defer"></script>
2727
2728  
2729
2730  <div class="page-width">
2731    <div class="product product--small product--left product--thumbnail product--mobile-show grid grid--1-col grid--2-col-tablet">
2732      <div class="grid__item product__media-wrapper">
2733        
2734<style>
2735  /* Counter ausblenden */
2736  #MediaGallery-template--24141640106252__main .slider-buttons .slider-counter {
2737    display: none;
2738  }
2739
2740  /* Hauptbild-Container für absolute Positionierung */
2741  #MediaGallery-template--24141640106252__main .custom-media-layout__main {
2742    position: relative;
2743  }
2744
2745  /* Pfeil-Container mittig */
2746  #MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-buttons {
2747    position: absolute;
2748    top: 50%;
2749    left: 0;
2750    width: 100%;
2751    transform: translateY(-50%);
2752    display: flex;
2753    justify-content: space-between;
2754    pointer-events: none;
2755    z-index: 3;
2756  }
2757
2758  /* Buttons selbst */
2759  #MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-buttons button {
2760    pointer-events: all;
2761    background: rgba(255,255,255,0.8);
2762    border: none;
2763    border-radius: 50%;
2764    width: 40px;
2765    height: 40px;
2766    display: flex;
2767    align-items: center;
2768    justify-content: center;
2769    box-shadow: 0 0 5px rgba(0,0,0,0.2);
2770    cursor: pointer;
2771  }
2772
2773  /* Linker Pfeil standardmäßig ausblenden */
2774  #MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-button--prev {
2775    visibility: hidden;
2776    transform: translateX(-28px);
2777  }
2778
2779    .custom-media-layout__main .slider-button--next {
2780    transform: translateX(28px);
2781  }
2782
2783  /* Klasse aktivieren, wenn schon einmal nach rechts geklickt wurde */
2784  #MediaGallery-template--24141640106252__main .custom-media-layout__main.slider-prev-active .slider-button--prev {
2785    visibility: visible;
2786  }
2787
2788  /* Linker Pfeil auf Desktop zunächst verstecken */
2789@media (min-width: 750px) {
2790  #MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-button--prev {
2791    visibility: hidden;
2792  }
2793
2794  #MediaGallery-template--24141640106252__main .slider-dots {
2795    display: none !important;
2796  }
2797  
2798  #MediaGallery-template--24141640106252__main .custom-media-layout__main.slider-prev-active .slider-button--prev {
2799    visibility: visible;
2800  }
2801}
2802</style>
2803
2804<style>
2805/* Pfeil-Container mittig im Bildbereich */
2806#MediaGallery-template--24141640106252__main .custom-media-layout__main {
2807  position: relative;
2808}
2809#MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-buttons {
2810  position: absolute;
2811  top: 50%;
2812  left: 0;
2813  width: 100%;
2814  transform: translateY(-50%);
2815  display: flex;
2816  justify-content: space-between;
2817  pointer-events: none;
2818  z-index: 3;
2819}
2820
2821/* Pfeile selbst – dezent */
2822#MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-buttons button {
2823  pointer-events: all;
2824  background: rgba(255,255,255,0.7);
2825  border: none;
2826  border-radius: 50%;
2827  width: 34px;
2828  height: 34px;
2829  display: flex;
2830  align-items: center;
2831  justify-content: center;
2832  box-shadow: 0 0 4px rgba(0,0,0,0.15);
2833  cursor: pointer;
2834}
2835
2836/* Linker Pfeil standardmäßig ausblenden */
2837#MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-button--prev {
2838  visibility: hidden;
2839}
2840/* Einblenden, sobald nach rechts geblättert wurde */
2841#MediaGallery-template--24141640106252__main .custom-media-layout__main.slider-prev-active .slider-button--prev {
2842  visibility: visible;
2843}
2844
2845/* Mobil: Pfeile anzeigen */
2846@media screen and (max-width: 749px) {
2847  #MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-buttons {
2848    display: flex !important;
2849    pointer-events: none;
2850    z-index: 5;
2851  }
2852  #MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-buttons button {
2853    pointer-events: all;
2854  }
2855  /* Dots unter dem Hauptbild sichtbar halten */
2856  #MediaGallery-template--24141640106252__main .slider-dots {
2857    display: flex;
2858    gap: 8px;
2859    justify-content: center;
2860    align-items: center;
2861    padding: 10px 0 0;
2862    margin-bottom: 24px;
2863    color: var(--color-foreground, #222);
2864  }
2865  #MediaGallery-template--24141640106252__main .slider-dots button {
2866    width: 22px;
2867    height: 3px;
2868    border: 0;
2869    border-radius: 2px;
2870    opacity: 0.35;
2871    background-color: #888;
2872    cursor: pointer;
2873  }
2874  #MediaGallery-template--24141640106252__main .slider-dots button.is-active {
2875    opacity: 1;
2876    background-color: #000;
2877  }
2878}
2879
2880/* Desktop bleibt unverändert */
2881@media screen and (min-width: 750px) {
2882  #MediaGallery-template--24141640106252__main .custom-media-layout__main .slider-buttons {
2883    pointer-events: auto;
2884  }
2885}
2886</style>
2887
2888<media-gallery
2889  id="MediaGallery-template--24141640106252__main"
2890  role="region"
2891  
2892  aria-label="Galerie-Viewer"
2893  data-desktop-layout="thumbnail"
2894>
2895  <div id="GalleryStatus-template--24141640106252__main" class="visually-hidden" role="status"></div>
2896  <div class="custom-media-layout">
2897
2898  <!-- Linke Spalte: Thumbnails -->
2899  <div class="custom-media-layout__thumbs">
2900    <slider-component
2901      id="GalleryThumbnails-template--24141640106252__main"
2902      class="thumbnail-slider slider-mobile-gutter quick-add-hidden"
2903    >
2904      <ul
2905        id="Slider-Thumbnails-template--24141640106252__main"
2906        class="thumbnail-list list-unstyled slider slider--mobile"
2907      ><li
2908              id="Slide-Thumbnails-template--24141640106252__main-1"
2909              class="thumbnail-list__item slider__slide"
2910              data-target="template--24141640106252__main-64412941582604"
2911              data-media-position="1"
2912            ><button
2913                class="thumbnail global-media-settings global-media-settings--no-shadow"
2914                aria-label="Bild 1 in Galerieansicht laden"
2915                
2916                  aria-current="true"
2917                
2918                aria-controls="GalleryViewer-template--24141640106252__main"
2919                aria-describedby="Thumbnail-template--24141640106252__main-1
2920"
2921              >
2922                <img src="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=416" alt="Dein Wunscherfüller - Schmetterling" srcset="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=54 54w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=74 74w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=104 104w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=162 162w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=208 208w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=324 324w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=416 416w" width="416" height="597" loading="lazy" id="Thumbnail-template--24141640106252__main-1
2923">
2924              </button>
2925            </li><li
2926              id="Slide-Thumbnails-template--24141640106252__main-2"
2927              class="thumbnail-list__item slider__slide"
2928              data-target="template--24141640106252__main-36848293544204"
2929              data-media-position="2"
2930            ><button
2931                class="thumbnail global-media-settings global-media-settings--no-shadow"
2932                aria-label="Bild 2 in Galerieansicht laden"
2933                
2934                aria-controls="GalleryViewer-template--24141640106252__main"
2935                aria-describedby="Thumbnail-template--24141640106252__main-2
2936"
2937              >
2938                <img src="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=416" alt="Dein Wunscherfüller - Schmetterling" srcset="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=54 54w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=74 74w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=104 104w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=162 162w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=208 208w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=324 324w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=416 416w" width="416" height="597" loading="lazy" id="Thumbnail-template--24141640106252__main-2
2939">
2940              </button>
2941            </li><li
2942              id="Slide-Thumbnails-template--24141640106252__main-3"
2943              class="thumbnail-list__item slider__slide"
2944              data-target="template--24141640106252__main-36848293576972"
2945              data-media-position="3"
2946            ><button
2947                class="thumbnail global-media-settings global-media-settings--no-shadow"
2948                aria-label="Bild 3 in Galerieansicht laden"
2949                
2950                aria-controls="GalleryViewer-template--24141640106252__main"
2951                aria-describedby="Thumbnail-template--24141640106252__main-3
2952"
2953              >
2954                <img src="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=416" alt="Dein Wunscherfüller - Schmetterling" srcset="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=54 54w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=74 74w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=104 104w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=162 162w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=208 208w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=324 324w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=416 416w" width="416" height="597" loading="lazy" id="Thumbnail-template--24141640106252__main-3
2955">
2956              </button>
2957            </li><li
2958              id="Slide-Thumbnails-template--24141640106252__main-4"
2959              class="thumbnail-list__item slider__slide"
2960              data-target="template--24141640106252__main-38396991275276"
2961              data-media-position="4"
2962            ><button
2963                class="thumbnail global-media-settings global-media-settings--no-shadow"
2964                aria-label="Bild 4 in Galerieansicht laden"
2965                
2966                aria-controls="GalleryViewer-template--24141640106252__main"
2967                aria-describedby="Thumbnail-template--24141640106252__main-4
2968"
2969              >
2970                <img src="//shop.wunschgutschein.at/cdn/shop/files/M
2970otiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=416" alt="Dein Wunscherfüller - Schmetterling" srcset="//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=54 54w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=74 74w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=104 104w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=162 162w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=208 208w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=324 324w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=416 416w" width="416" height="597" loading="lazy" id="Thumbnail-template--24141640106252__main-4
2971">
2972              </button>
2973            </li></ul>
2974    </slider-component>
2975  </div>
2976
2977  <!-- Rechte Spalte: Haupt-Viewer -->
2978  <div class="custom-media-layout__main">
2979    <slider-component id="GalleryViewer-template--24141640106252__main" class="slider-mobile-gutter"><a class="skip-to-content-link button visually-hidden quick-add-hidden" href="#ProductInfo-template--24141640106252__main">
2980          Zu Produktinformationen springen
2981        </a><ul
2982        id="Slider-Gallery-template--24141640106252__main"
2983        class="product__media-list contains-media grid grid--peek list-unstyled slider slider--mobile"
2984        role="list"
2985      ><li
2986              id="Slide-template--24141640106252__main-64412941582604"
2987              class="product__media-item grid__item slider__slide is-active"
2988              data-media-id="template--24141640106252__main-64412941582604"
2989            >
2990
2991<div
2992  class="product-media-container media-type-image media-fit-cover global-media-settings gradient"
2993  style="--ratio: 0.6967675731144176; --preview-ratio: 0.6967675731144176;"
2994>
2995  <noscript><div class="product__media media">
2996        <img src="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=246 246w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1946 1946w" width="1946" height="2793" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
2997      </div></noscript>
2998
2999  <modal-opener class="product__modal-opener product__modal-opener--image no-js-hidden" data-modal="#ProductModal-template--24141640106252__main">
3000    <span class="product__media-icon motion-reduce quick-add-hidden product__media-icon--hover" aria-hidden="true"><svg
3001  aria-hidden="true"
3002  focusable="false"
3003  class="icon icon-plus"
3004  width="19"
3005  height="19"
3006  viewBox="0 0 19 19"
3007  fill="none"
3008  xmlns="http://www.w3.org/2000/svg"
3009>
3010  <path fill-rule="evenodd" clip-rule="evenodd" d="M4.66724 7.93978C4.66655 7.66364 4.88984 7.43922 5.16598 7.43853L10.6996 7.42464C10.9758 7.42395 11.2002 7.64724 11.2009 7.92339C11.2016 8.19953 10.9783 8.42395 10.7021 8.42464L5.16849 8.43852C4.89235 8.43922 4.66793 8.21592 4.66724 7.93978Z" fill="currentColor"/>
3011  <path fill-rule="evenodd" clip-rule="evenodd" d="M7.92576 4.66463C8.2019 4.66394 8.42632 4.88723 8.42702 5.16337L8.4409 10.697C8.44159 10.9732 8.2183 11.1976 7.94215 11.
30111983C7.66601 11.199 7.44159 10.9757 7.4409 10.6995L7.42702 5.16588C7.42633 4.88974 7.64962 4.66532 7.92576 4.66463Z" fill="currentColor"/>
3012  <path fill-rule="evenodd" clip-rule="evenodd" d="M12.8324 3.03011C10.1255 0.323296 5.73693 0.323296 3.03011 3.03011C0.323296 5.73693 0.323296 10.1256 3.03011 12.8324C5.73693 15.5392 10.1255 15.5392 12.8324 12.8324C15.5392 10.1256 15.5392 5.73693 12.8324 3.03011ZM2.32301 2.32301C5.42035 -0.774336 10.4421 -0.774336 13.5395 2.32301C16.6101 5.39361 16.6366 10.3556 13.619 13.4588L18.2473 18.0871C18.4426 18.2824 18.4426 18.599 18.2473 18.7943C18.0521 18.9895 17.7355 18.9895 17.5402 18.7943L12.8778 14.1318C9.76383 16.6223 5.20839 16.4249 2.32301 13.5395C-0.774335 10.4421 -0.774335 5.42035 2.32301 2.32301Z" fill="currentColor"/>
3013</svg>
3014</span>
3015
3016<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
3017
3018<div class="loading__spinner hidden">
3019  <svg
3020    aria-hidden="true"
3021    focusable="false"
3022    class="spinner"
3023    viewBox="0 0 66 66"
3024    xmlns="http://www.w3.org/2000/svg"
3025  >
3026    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
3027  </svg>
3028</div>
3029<div class="product__media media media--transparent">
3030      <img src="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=246 246w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&amp;width=1946 1946w" width="1946" height="2793" class="image-magnify-hover" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
3031    </div>
3032    <button class="product__media-toggle quick-add-hidden product__media-zoom-hover" type="button" aria-haspopup="dialog" data-media-id="64412941582604">
3033      <span class="visually-hidden">
3034        Medien 1 in Modal öffnen
3035      </span>
3036    </button>
3037  </modal-opener></div>
3038
3039            </li><li
3040              id="Slide-template--24141640106252__main-36848293544204"
3041              class="product__media-item grid__item slider__slide"
3042              data-media-id="template--24141640106252__main-36848293544204"
3043            >
3044
3045<div
3046  class="product-media-container media-type-image media-fit-cover global-media-settings gradient"
3047  style="--ratio: 0.6967675731144176; --preview-ratio: 0.6967675731144176;"
3048>
3049  <noscript><div class="product__media media">
3050        <img src="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=246 246w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1946 1946w" width="1946" height="2793" loading="lazy" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
3051      </div></noscript>
3052
3053  <modal-opener class="product__modal-opener product__modal-opener--image no-js-hidden" data-modal="#ProductModal-template--24141640106252__main">
3054    <span class="product__media-icon motion-reduce quick-add-hidden product__media-icon--hover" aria-hidden="true"><svg
3055  aria-hidden="true"
3056  focusable="false"
3057  class="icon icon-plus"
3058  width="19"
3059  height="19"
3060  viewBox="0 0 19 19"
3061  fill="none"
3062  xmlns="http://www.w3.org/2000/svg"
3063>
3064  <path fill-rule="evenodd" clip-rule="evenodd" d="M4.66724 7.93978C4.66655 7.66364 4.88984 7.43922 5.16598 7.43853L10.6996 7.42464C10.9758 7.42395 11.2002 7.64724 11.2009 7.92339C11.2016 8.19953 10.9783 8.42395 10.7021 8.42464L5.16849 8.43852C4.89235 8.43922 4.66793 8.21592 4.66724 7.93978Z" fill="currentColor"/>
3065  <path fill-rule="evenodd" clip-rule="evenodd" d="M7.92576 4.66463C8.2019 4.66394 8.42632 4.88723 8.42702 5.16337L8.4409 10.697C8.44159 10.9732 8.2183 11.1976 7.94215 11.
30651983C7.66601 11.199 7.44159 10.9757 7.4409 10.6995L7.42702 5.16588C7.42633 4.88974 7.64962 4.66532 7.92576 4.66463Z" fill="currentColor"/>
3066  <path fill-rule="evenodd" clip-rule="evenodd" d="M12.8324 3.03011C10.1255 0.323296 5.73693 0.323296 3.03011 3.03011C0.323296 5.73693 0.323296 10.1256 3.03011 12.8324C5.73693 15.5392 10.1255 15.5392 12.8324 12.8324C15.5392 10.1256 15.5392 5.73693 12.8324 3.03011ZM2.32301 2.32301C5.42035 -0.774336 10.4421 -0.774336 13.5395 2.32301C16.6101 5.39361 16.6366 10.3556 13.619 13.4588L18.2473 18.0871C18.4426 18.2824 18.4426 18.599 18.2473 18.7943C18.0521 18.9895 17.7355 18.9895 17.5402 18.7943L12.8778 14.1318C9.76383 16.6223 5.20839 16.4249 2.32301 13.5395C-0.774335 10.4421 -0.774335 5.42035 2.32301 2.32301Z" fill="currentColor"/>
3067</svg>
3068</span>
3069
3070<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
3071
3072<div class="loading__spinner hidden">
3073  <svg
3074    aria-hidden="true"
3075    focusable="false"
3076    class="spinner"
3077    viewBox="0 0 66 66"
3078    xmlns="http://www.w3.org/2000/svg"
3079  >
3080    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
3081  </svg>
3082</div>
3083<div class="product__media media media--transparent">
3084      <img src="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=246 246w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&amp;width=1946 1946w" width="1946" height="2793" loading="lazy" class="image-magnify-hover" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
3085    </div>
3086    <button class="product__media-toggle quick-add-hidden product__media-zoom-hover" type="button" aria-haspopup="dialog" data-media-id="36848293544204">
3087      <span class="visually-hidden">
3088        Medien 2 in Modal öffnen
3089      </span>
3090    </button>
3091  </modal-opener></div>
3092
3093            </li><li
3094              id="Slide-template--24141640106252__main-36848293576972"
3095              class="product__media-item grid__item slider__slide"
3096              data-media-id="template--24141640106252__main-36848293576972"
3097            >
3098
3099<div
3100  class="product-media-container media-type-image media-fit-cover global-media-settings gradient"
3101  style="--ratio: 0.6967675731144176; --preview-ratio: 0.6967675731144176;"
3102>
3103  <noscript><div class="product__media media">
3104        <img src="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=246 246w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1946 1946w" width="1946" height="2793" loading="lazy" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
3105      </div></noscript>
3106
3107  <modal-opener class="product__modal-opener product__modal-opener--image no-js-hidden" data-modal="#ProductModal-template--24141640106252__main">
3108    <span class="product__media-icon motion-reduce quick-add-hidden product__media-icon--hover" aria-hidden="true"><svg
3109  aria-hidden="true"
3110  focusable="false"
3111  class="icon icon-plus"
3112  width="19"
3113  height="19"
3114  viewBox="0 0 19 19"
3115  fill="none"
3116  xmlns="http://www.w3.org/2000/svg"
3117>
3118  <path fill-rule="evenodd" clip-rule="evenodd" d="M4.66724 7.93978C4.66655 7.66364 4.88984 7.43922 5.16598 7.43853L10.6996 7.42464C10.9758 7.42395 11.2002 7.64724 11.2009 7.92339C11.2016 8.19953 10.9783 8.42395 10.7021 8.42464L5.16849 8.43852C4.89235 8.43922 4.66793 8.21592 4.66724 7.93978Z" fill="currentColor"/>
3119  <path fill-rule="evenodd" clip-rule="evenodd" d="M7.92576 4.66463C8.2019 4.66394 8.42632 4.88723 8.42702 5.16337L8.4409 10.697C8.44159 10.9732 8.2183 11.1976 7.94215 11.
31191983C7.66601 11.199 7.44159 10.9757 7.4409 10.6995L7.42702 5.16588C7.42633 4.88974 7.64962 4.66532 7.92576 4.66463Z" fill="currentColor"/>
3120  <path fill-rule="evenodd" clip-rule="evenodd" d="M12.8324 3.03011C10.1255 0.323296 5.73693 0.323296 3.03011 3.03011C0.323296 5.73693 0.323296 10.1256 3.03011 12.8324C5.73693 15.5392 10.1255 15.5392 12.8324 12.8324C15.5392 10.1256 15.5392 5.73693 12.8324 3.03011ZM2.32301 2.32301C5.42035 -0.774336 10.4421 -0.774336 13.5395 2.32301C16.6101 5.39361 16.6366 10.3556 13.619 13.4588L18.2473 18.0871C18.4426 18.2824 18.4426 18.599 18.2473 18.7943C18.0521 18.9895 17.7355 18.9895 17.5402 18.7943L12.8778 14.1318C9.76383 16.6223 5.20839 16.4249 2.32301 13.5395C-0.774335 10.4421 -0.774335 5.42035 2.32301 2.32301Z" fill="currentColor"/>
3121</svg>
3122</span>
3123
3124<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
3125
3126<div class="loading__spinner hidden">
3127  <svg
3128    aria-hidden="true"
3129    focusable="false"
3130    class="spinner"
3131    viewBox="0 0 66 66"
3132    xmlns="http://www.w3.org/2000/svg"
3133  >
3134    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
3135  </svg>
3136</div>
3137<div class="product__media media media--transparent">
3138      <img src="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=246 246w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&amp;width=1946 1946w" width="1946" height="2793" loading="lazy" class="image-magnify-hover" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
3139    </div>
3140    <button class="product__media-toggle quick-add-hidden product__media-zoom-hover" type="button" aria-haspopup="dialog" data-media-id="36848293576972">
3141      <span class="visually-hidden">
3142        Medien 3 in Modal öffnen
3143      </span>
3144    </button>
3145  </modal-opener></div>
3146
3147            </li><li
3148              id="Slide-template--24141640106252__main-38396991275276"
3149              class="product__media-item grid__item slider__slide"
3150              data-media-id="template--24141640106252__main-38396991275276"
3151            >
3152
3153<div
3154  class="product-media-container media-type-image media-fit-cover global-media-settings gradient"
3155  style="--ratio: 0.6967675731144176; --preview-ratio: 0.6967675731144176;"
3156>
3157  <noscript><div class="product__media media">
3158        <img src="//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/files/M
3158otiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=246 246w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1946 1946w" width="1946" height="2793" loading="lazy" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
3159      </div></noscript>
3160
3161  <modal-opener class="product__modal-opener product__modal-opener--image no-js-hidden" data-modal="#ProductModal-template--24141640106252__main">
3162    <span class="product__media-icon motion-reduce quick-add-hidden product__media-icon--hover" aria-hidden="true"><svg
3163  aria-hidden="true"
3164  focusable="false"
3165  class="icon icon-plus"
3166  width="19"
3167  height="19"
3168  viewBox="0 0 19 19"
3169  fill="none"
3170  xmlns="http://www.w3.org/2000/svg"
3171>
3172  <path fill-rule="evenodd" clip-rule="evenodd" d="M4.66724 7.93978C4.66655 7.66364 4.88984 7.43922 5.16598 7.43853L10.6996 7.42464C10.9758 7.42395 11.2002 7.64724 11.2009 7.92339C11.2016 8.19953 10.9783 8.42395 10.7021 8.42464L5.16849 8.43852C4.89235 8.43922 4.66793 8.21592 4.66724 7.93978Z" fill="currentColor"/>
3173  <path fill-rule="evenodd" clip-rule="evenodd" d="M7.92576 4.66463C8.2019 4.66394 8.42632 4.88723 8.42702 5.16337L8.4409 10.697C8.44159 10.9732 8.2183 11.1976 7.94215 11.1983C7.66601 11.199 7.44159 10.9757 7.4409 10.6995L7.42702 5.16588C7.42633 4.88974 7.64962 4.66532 7.92576 4.66463Z" fill="currentColor"/>
3174  <path fill-rule="evenodd" clip-rule="evenodd" d="M12.8324 3.03011C10.1255 0.323296 5.73693 0.323296 3.03011 3.03011C0.323296 5.73693 0.323296 10.1256 3.03011 12.8324C5.73693 15.5392 10.1255 15.5392 12.8324 12.8324C15.5392 10.1256 15.5392 5.73693 12.8324 3.03011ZM2.32301 2.32301C5.42035 -0.774336 10.4421 -0.774336 13.5395 2.32301C16.6101 5.39361 16.6366 10.3556 13.619 13.4588L18.2473 18.0871C18.4426 18.2824 18.4426 18.599 18.2473 18.7943C18.0521 18.9895 17.7355 18.9895 17.5402 18.7943L12.8778 14.1318C9.76383 16.6223 5.20839 16.4249 2.32301 13.5395C-0.774335 10.4421 -0.774335 5.42035 2.32301 2.32301Z" fill="currentColor"/>
3175</svg>
3176</span>
3177
3178<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
3179
3180<div class="loading__spinner hidden">
3181  <svg
3182    aria-hidden="true"
3183    focusable="false"
3184    class="spinner"
3185    viewBox="0 0 66 66"
3186    xmlns="http://www.w3.org/2000/svg"
3187  >
3188    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
3189  </svg>
3190</div>
3191<div class="product__media media media--transparent">
3192      <img src="//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1946" alt="" srcset="//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;
3192width=246 246w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=493 493w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=600 600w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=713 713w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=823 823w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=990 990w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1100 1100w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1206 1206w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1346 1346w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1426 1426w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1646 1646w, //shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&amp;width=1946 1946w" width="1946" height="2793" loading="lazy" class="image-magnify-hover" sizes="(min-width: 1000px) 405px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
3193    </div>
3194    <button class="product__media-toggle quick-add-hidden product__media-zoom-hover" type="button" aria-haspopup="dialog" data-media-id="38396991275276">
3195      <span class="visually-hidden">
3196        Medien 4 in Modal öffnen
3197      </span>
3198    </button>
3199  </modal-opener></div>
3200
3201            </li></ul><div class="slider-buttons no-js-hidden quick-add-hidden small-hide">
3202          <button
3203            type="button"
3204            class="slider-button slider-button--prev"
3205            name="previous"
3206            aria-label="Nach links schieben"
3207          >
3208            <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
3209  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
3210</svg>
3211
3212          </button>
3213          <div class="slider-counter caption">
3214            <span class="slider-counter--current">1</span>
3215            <span aria-hidden="true"> / </span>
3216            <span class="visually-hidden">von</span>
3217            <span class="slider-counter--total">4</span>
3218          </div>
3219          <button
3220            type="button"
3221            class="slider-button slider-button--next"
3222            name="next"
3223            aria-label="Nach rechts schieben"
3224          >
3225            <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
3226  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
3227</svg>
3228
3229          </button>
3230        </div></slider-component><div class="slider-dots" aria-hidden="true"><button type="button" class="is-active" data-index="0"></button><button type="button" class="" data-index="1"></button><button type="button" class="" data-index="2"></button><button type="button" class="" data-index="3"></button></div></div>
3231
3232</div></media-gallery>
3233
3234<script>
3235document.addEventListener('DOMContentLoaded', function() {
3236  var viewer = document.querySelector('#GalleryViewer-template--24141640106252__main');
3237  if (!viewer) return;
3238
3239  var gallery = viewer.querySelector('.product__media-list');
3240  if (!gallery) return;
3241
3242  var slides = Array.from(gallery.querySelectorAll('.product__media-item'));
3243
3244  var mainWrap = document.querySelector('#MediaGallery-template--24141640106252__main .custom-media-layout__main');
3245  var dotsWrap = mainWrap ? mainWrap.querySelector('.slider-dots') : null;
3246  var dots = dotsWrap ? Array.from(dotsWrap.querySelectorAll('button')) : [];
3247
3248  // Thumbnail-Buttons sammeln
3249var thumbsWrap = document.querySelector('#Slider-Thumbnails-template--24141640106252__main');
3250var thumbs = thumbsWrap ? Array.from(thumbsWrap.querySelectorAll('.thumbnail')) : [];
3251
3252// Immer wenn ein Slide aktiv gesetzt wird, prüfen wir den Index
3253function setActive(index) {
3254  activeIndex = Math.max(0, Math.min(index, slides.length - 1));
3255  slides.forEach(function(s, i){ s.classList.toggle('is-active', i === activeIndex); });
3256  dots.forEach(function(d, i){ d.classList.toggle('is-active', i === activeIndex); });
3257
3258  // Thumbnails-Highlight aktualisieren
3259  thumbs.forEach(function(t, i){
3260    t.setAttribute('aria-current', i === activeIndex ? 'true' : 'false');
3261  });
3262
3263  // Klasse für linken Pfeil setzen/entfernen
3264  if (mainContainer) {
3265    mainContainer.classList.toggle('slider-prev-active', activeIndex > 0);
3266  }
3267}
3268
3269  // Aktuellen Index aus is-active ableiten (Fallback 0)
3270  var activeIndex = slides.findIndex(function(s){ return s.classList.contains('is-active'); });
3271  if (activeIndex < 0) activeIndex = 0;
3272
3273  function setActive(index) {
3274    activeIndex = Math.max(0, Math.min(index, slides.length - 1));
3275    slides.forEach(function(s, i){ s.classList.toggle('is-active', i === activeIndex); });
3276    dots.forEach(function(d, i){ d.classList.toggle('is-active', i === activeIndex); });
3277  }
3278
3279  function scrollToIndex(index) {
3280    var target = slides[index];
3281    if (!target) return;
3282    target.scrollIntoView({ behavior: 'smooth', inline: 'center', block: 'nearest' });
3283    setActive(index);
3284  }
3285
3286  // Container-Element, das die Pfeile enthält
3287var mainContainer = mainWrap;
3288
3289// Immer wenn ein Slide aktiv gesetzt wird, prüfen wir den Index
3290function setActive(index) {
3291  activeIndex = Math.max(0, Math.min(index, slides.length - 1));
3292
3293  // Slides
3294  slides.forEach(function(s, i){ s.classList.toggle('is-active', i === activeIndex); });
3295
3296  // Dots
3297  dots.forEach(function(d, i){ d.classList.toggle('is-active', i === activeIndex); });
3298
3299  // Thumbnails: Highlight korrekt setzen
3300  // (Wenn dein Theme auf [aria-current] statt [aria-current="true"] stylt,
3301  // ist removeAttribute die sicherste Variante.)
3302  thumbs.forEach(function(t, i){
3303    if (i === activeIndex) {
3304      t.setAttribute('aria-current', 'true');
3305    } else {
3306      t.removeAttribute('aria-current');
3307    }
3308  });
3309
3310  // Linken Pfeil nur ab Index > 0 zeigen
3311  if (mainContainer) {
3312    mainContainer.classList.toggle('slider-prev-active', activeIndex > 0);
3313  }
3314}
3315
3316  // Thumbnails klickbar machen → mit Slider koppeln
3317  thumbs.forEach(function(btn, i) {
3318    btn.addEventListener('click', function(e) {
3319      e.preventDefault();
3320      scrollToIndex(i);   // setzt activeIndex + is-active + dots + slider-prev-active
3321    });
3322  });
3323
3324  function updateActiveByPosition() {
3325    // Nächsten „zentralen“ Slide finden und Status synchronisieren
3326    var center = gallery.getBoundingClientRect().left + gallery.clientWidth / 2;
3327    var closestIndex = 0, minDist = Infinity;
3328    slides.forEach(function(slide, i) {
3329      var rect = slide.getBoundingClientRect();
3330      var slideCenter = rect.left + rect.width / 2;
3331      var dist = Math.abs(slideCenter - center);
3332      if (dist < minDist) { minDist = dist; closestIndex = i; }
3333    });
3334    setActive(closestIndex);
3335  }
3336
3337  // Initial
3338  requestAnimationFrame(updateActiveByPosition);
3339
3340  // Beim Wischen/Scrollen Dots + is-active nachführen
3341  var ticking = false;
3342  gallery.addEventListener('scroll', function() {
3343    if (ticking) return;
3344    requestAnimationFrame(function(){
3345      updateActiveByPosition();
3346      ticking = false;
3347    });
3348    ticking = true;
3349  }, { passive: true });
3350
3351  // Dots klickbar machen
3352  dots.forEach(function(dot) {
3353    dot.addEventListener('click', function() {
3354      var index = parseInt(this.getAttribute('data-index'), 10) || 0;
3355      scrollToIndex(index);
3356    });
3357  });
3358
3359  // Pfeile wieder ankoppeln
3360  var nextBtn = viewer.querySelector('.slider-button--next');
3361  var prevBtn = viewer.querySelector('.slider-button--prev');
3362
3363  if (nextBtn) {
3364    nextBtn.addEventListener('click', function() {
3365      scrollToIndex(activeIndex + 1);
3366    });
3367  }
3368  if (prevBtn) {
3369    prevBtn.addEventListener('click', function() {
3370      scrollToIndex(activeIndex - 1);
3371    });
3372  }
3373
3374  // Rotation/Resize -> Neu berechnen
3375  window.addEventListener('resize', function() {
3376    requestAnimationFrame(updateActiveByPosition);
3377  });
3378});
3379</script>
3379
3380      </div>
3381      <div class="product__info-wrapper grid__item"><product-info
3382  id="ProductInfo-template--24141640106252__main"
3383  data-section="template--24141640106252__main"
3384  data-url="/products/motiv-wunscherfueller"
3385  data-giftcard-second-product="true"
3386  class="product__info-container"
3387>
3388    <input type="hidden" name="giftcard_second_product_metafield" value="gid://shopify/Product/11700351598860" style="display:none;" />
3389  
3390<div class="product__title" >
3391                  <h1>Dein Wunscherfüller - Schmetterling</h1>
3392                  <a href="/products/motiv-wunscherfueller" class="product__title">
3393                    <h2 class="h1">
3394                      Dein Wunscherfüller - Schmetterling
3395                    </h2>
3396                  </a>
3397                </div><div class="no-js-hidden" id="price-template--24141640106252__main" role="status" >
3398<div
3399  class="
3400    price price--large"
3401>
3402  <div class="price__container"><div class="price__regular"><span class="visually-hidden visually-hidden--inline">Normaler Preis</span>
3403        <span class="price-item price-item--regular">
3404          15,00 €
3405        </span></div>
3406    <div class="price__sale">
3407        <span class="visually-hidden visually-hidden--inline">Normaler Preis</span>
3408        <span>
3409          <s class="price-item price-item--regular">
3410            
3411              
3412            
3413          </s>
3414        </span><span class="visually-hidden visually-hidden--inline">Verkaufspreis</span>
3415      <span class="price-item price-item--sale price-item--last">
3416        15,00 €
3417      </span>
3418    </div>
3419    <small class="unit-price caption hidden">
3420      <span class="visually-hidden">Stückpreis</span>
3421      <span class="price-item price-item--last">
3422        <span></span>
3423        <span aria-hidden="true">/</span>
3424        <span class="visually-hidden">&nbsp;pro&nbsp;</span>
3425        <span>
3426        </span>
3427      </span>
3428    </small>
3429  </div></div>
3430</div><div class="product__tax caption rte">inkl. MwSt.
3431
3432                        und kostenlosem <a href="/policies/shipping-policy">Versand</a><sup>1</sup>
3433                      
3434</div><div ><form method="post" action="/cart/add" id="product-form-installment-template--24141640106252__main" accept-charset="UTF-8" class="installment caption-large" enctype="multipart/form-data"><input type="hidden" name="form_type" value="product" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="id" value="39353929793741" disabled>
3435                    
3436<input type="hidden" name="product-id" value="6558715412685" /><input type="hidden" name="section-id" value="template--24141640106252__main" /></form></div>
3437<variant-selects
3438    id="variant-selects-template--24141640106252__main"
3439    class="no-js-hidden"
3440    data-section="template--24141640106252__main"
3441    data-url="/products/motiv-wunscherfueller"
3442    
3443    
3444  ><div class="product-form__input product-form__input--dropdown">
3445          <label class="form__label" for="Option-template--24141640106252__main-0">
3446            Wertstufe
3447          </label>
3448          <div class="select"><select
3449              id="Option-template--24141640106252__main-0"
3450              class="select__select"
3451              name="options[Wertstufe]"
3452              form="product-form-template--24141640106252__main"
3453            >
3454              
3455
3456<option
3457      value="15 €"
3458      
3459        selected="selected"
3460      
3461      
3462    >
3463      15 €
3464    </option>
3465<option
3466      value="25 €"
3467      
3468      
3469    >
3470      25 €
3471    </option>
3472<option
3473      value="50 €"
3474      
3475      
3476    >
3477      50 €
3478    </option>
3479<option
3480      value="100 €"
3481      
3482      
3483    >
3484      100 €
3485    </option>
3486<option
3487      value="150 €"
3488      
3489      
3490    >
3491      150 €
3492    </option>
3493            </select>
3494            <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
3495  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
3496</svg>
3497
3498          </div>
3499        </div>
3499<script type="application/json">
3500      [{"id":39353929793741,"title":"15 €","option1":"15 €","option2":null,"option3":null,"sku":"20001311015","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 15 €","public_title":"15 €","options":["15 €"],"price":1500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929662669,"title":"25 €","option1":"25 €","option2":null,"option3":null,"sku":"20001311025","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 25 €","public_title":"25 €","options":["25 €"],"price":2500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929695437,"title":"50 €","option1":"50 €","option2":null,"option3":null,"sku":"20001311050","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 50 €","public_title":"50 €","options":["50 €"],"price":5000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929728205,"title":"100 €","option1":"100 €","option2":null,"option3":null,"sku":"20001311100","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 100 €","public_title":"100 €","options":["100 €"],"price":10000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929760973,"title":"150 €","option1":"150 €","option2":null,"option3":null,"sku":"20001311150","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 150 €","public_title":"150 €","options":["150 €"],"price":15000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}]
3501    </script>
3501
3502  </variant-selects><noscript class="product-form__noscript-wrapper-template--24141640106252__main">
3503  <div class="product-form__input">
3504    <label class="form__label" for="Variants-template--24141640106252__main">Produktvarianten</label>
3505    <div class="select">
3506      <select
3507        name="id"
3508        id="Variants-template--24141640106252__main"
3509        class="select__select"
3510        form="product-form-template--24141640106252__main"
3511      ><option
3512            
3513              selected="selected"
3514            
3515            
3516            value="39353929793741"
3517          >15 € - 15,00 €</option><option
3518            
3519            
3520            value="39353929662669"
3521          >25 € - 25,00 €</option><option
3522            
3523            
3524            value="39353929695437"
3525          >50 € - 50,00 €</option><option
3526            
3527            
3528            value="39353929728205"
3529          >100 € - 100,00 €</option><option
3530            
3531            
3532            value="39353929760973"
3533          >150 € - 150,00 €</option></select>
3534      <svg aria-hidden="true" focusable="false" class="icon icon-caret" viewBox="0 0 10 6">
3535  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
3536</svg>
3537
3538    </div>
3539  </div>
3540</noscript>
3541
3542<div
3543                  id="Quantity-Form-template--24141640106252__main"
3544                  class="product-form__input product-form__quantity"
3545                  
3546                >
3547                  
3548                  
3549
3550                  <label class="quantity__label form__label" for="Quantity-template--24141640106252__main">
3551                    Anzahl
3552                    <span class="quantity__rules-cart no-js-hidden hidden">
3553
3554<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
3555
3556<div class="loading__spinner hidden">
3557  <svg
3558    aria-hidden="true"
3559    focusable="false"
3560    class="spinner"
3561    viewBox="0 0 66 66"
3562    xmlns="http://www.w3.org/2000/svg"
3563  >
3564    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
3565  </svg>
3566</div>
3567<span
3568                        >(<span class="quantity-cart">0</span> im Warenkorb)</span
3569                      >
3570                    </span>
3571                  </label>
3572                  <div class="price-per-item__container">
3573                    <quantity-input class="quantity" data-url="/products/motiv-wunscherfueller" data-section="template--24141640106252__main">
3574                      <button class="quantity__button no-js-hidden" name="minus" type="button">
3575                        <span class="visually-hidden">Verringere die Menge für Dein Wunscherfüller - Schmetterling</span>
3576                        <svg
3577  xmlns="http://www.w3.org/2000/svg"
3578  aria-hidden="true"
3579  focusable="false"
3580  class="icon icon-minus"
3581  fill="none"
3582  viewBox="0 0 10 2"
3583>
3584  <path fill-rule="evenodd" clip-rule="evenodd" d="M.5 1C.5.7.7.5 1 .5h8a.5.5 0 110 1H1A.5.5 0 01.5 1z" fill="currentColor">
3585</svg>
3586
3587                      </button>
3588                      <input
3589                        class="quantity__input"
3590                        type="number"
3591                        name="quantity"
3592                        id="Quantity-template--24141640106252__main"
3593                        data-cart-quantity="0"
3594                        data-min="1"
3595                        min="1"
3596                        
3597                        step="1"
3598                        value="1"
3599                        form="product-form-template--24141640106252__main"
3600                      >
3601                      <button class="quantity__button no-js-hidden" name="plus" type="button">
3602                        <span class="visually-hidden">Erhöhe die Menge für Dein Wunscherfüller - Schmetterling</span>
3603                        <svg
3604  xmlns="http://www.w3.org/2000/svg"
3605  aria-hidden="true"
3606  focusable="false"
3607  class="icon icon-plus"
3608  fill="none"
3609  viewBox="0 0 10 10"
3610>
3611  <path fill-rule="evenodd" clip-rule="evenodd" d="M1 4.51a.5.5 0 000 1h3.5l.01 3.5a.5.5 0 001-.01V5.5l3.5-.01a.5.5 0 00-.01-1H5.5L5.49.99a.5.5 0 00-1 .01v3.5l-3.5.01H1z" fill="currentColor">
3612</svg>
3613
3614                      </button>
3615                    </quantity-input></div>
3616                  <div class="quantity__rules caption no-js-hidden" id="Quantity-Rules-template--24141640106252__main"></div></div><div style="display: flex; align-items: center; font-size: 12px; color: #008000; font-weight: 400; margin-top: 8px;">
3617  <span style="display: inline-block; width: 6px; height: 6px; background-color: #00C853; border-radius: 50%; margin-right: 6px;"></span>
3618  Sofort digital oder in 3–5 Werktagen per Post
3619</div>
3620
3621<div ><product-form
3622      class="product-form"
3623      data-hide-errors="false"
3624      data-section-id="template--24141640106252__main"
3625    >
3626      <div class="product-form__error-message-wrapper" role="alert" hidden>
3627        <svg
3628          aria-hidden="true"
3629          focusable="false"
3630          class="icon icon-error"
3631          viewBox="0 0 13 13"
3632        >
3633          <circle cx="6.5" cy="6.50049" r="5.5" stroke="white" stroke-width="2"/>
3634          <circle cx="6.5" cy="6.5" r="5.5" fill="#EB001B" stroke="#EB001B" stroke-width="0.7"/>
3635          <path d="M5.87413 3.52832L5.97439 7.57216H7.02713L7.12739 3.52832H5.87413ZM6.50076 9.66091C6.88091 9.66091 7.18169 9.37267 7.18169 9.00504C7.18169 8.63742 6.88091 8.34917 6.50076 8.34917C6.12061 8.34917 5.81982 8.63742 5.81982 9.00504C5.81982 9.37267 6.12061 9.66091 6.50076 9.66091Z" fill="white"/>
3636          <path d="M5.87413 3.17832H5.51535L5.52424 3.537L5.6245 7.58083L5.63296 7.92216H5.97439H7.02713H7.36856L7.37702 7.58083L7.47728 3.537L7.48617 3.17832H7.12739H5.87413ZM6.50076 10.0109C7.06121 10.0109 7.5317 9.57872 7.5317 9.00504C7.5317 8.43137 7.06121 7.99918 6.50076 7.99918C5.94031 7.99918 5.46982 8.43137 5.46982 9.00504C5.46982 9.57872 5.94031 10.0109 6.50076 10.0109Z" fill="white" stroke="#EB001B" stroke-width="0.7">
3637        </svg>
3638        <span class="product-form__error-message"></span>
3639      </div><form method="post" action="/cart/add" id="product-form-template--24141640106252__main" accept-charset="UTF-8" class="form" enctype="multipart/form-data" novalidate="novalidate" data-type="add-to-cart-form"><input type="hidden" name="form_type" value="product" /><input type="hidden" name="utf8" value="✓" />
3640
3641        <input class="product-variant-id" type="hidden" name="id" value="39353929793741" ><div class="product-form__buttons"><button
3642            id="ProductSubmitButton-template--24141640106252__main"
3643            type="submit"
3644            name="add"
3645            class="product-form__submit button button--full-width button--secondary"
3646            
3647          >
3648            <span>In den Warenkorb legen
3649</span>
3650
3651<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-loading-spinner.css?v=116724955567955766481764247604" rel="stylesheet" type="text/css" media="all" />
3652
3653<div class="loading__spinner hidden">
3654  <svg
3655    aria-hidden="true"
3656    focusable="false"
3657    class="spinner"
3658    viewBox="0 0 66 66"
3659    xmlns="http://www.w3.org/2000/svg"
3660  >
3661    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33" r="30"></circle>
3662  </svg>
3663</div>
3664</button><div data-shopify="payment-button" class="shopify-payment-button"> <shopify-accelerated-checkout recommended="{&quot;supports_subs&quot;:false,&quot;supports_def_opts&quot;:false,&quot;name&quot;:&quot;paypal&quot;,&quot;wallet_params&quot;:{&quot;shopId&quot;:55611687117,&quot;countryCode&quot;:&quot;DE&quot;,&quot;merchantName&quot;:&quot;Wunschgutschein Österreich&quot;,&quot;phoneRequired&quot;:false,&quot;companyRequired&quot;:false,&quot;shippingType&quot;:&quot;shipping&quot;,&quot;shopifyPaymentsEnabled&quot;:true,&quot;hasManagedSellingPlanState&quot;:null,&quot;requiresBillingAgreement&quot;:false,&quot;gatewayType&quot;:&quot;CONNECTED&quot;,&quot;merchantId&quot;:&quot;KMMEGN8X8R65U&quot;,&quot;sdkUrl&quot;:&quot;https://www.paypal.com/sdk/js?components=buttons\u0026commit=false\u0026currency=EUR\u0026locale=de_DE\u0026client-id=AexZEtAxk09Ncgj6FSWFFyGKbxxAZ_LTyJ2DPdJWl1YUlecinmc5AfIaRF2qYjWlusWahlzz6SVkY5Ci\u0026merchant-id=KMMEGN8X8R65U\u0026intent=capture&quot;,&quot;serviceableCountryCodes&quot;:[&quot;AT&quot;,&quot;CH&quot;,&quot;DE&quot;]}}" fallback="{&quot;supports_subs&quot;:true,&quot;supports_def_opts&quot;:true,&quot;name&quot;:&quot;buy_it_now&quot;,&quot;wallet_params&quot;:{}}" access-token="bd14440b8b513840e6c9d26b711e5cac" buyer-country="AT" buyer-locale="de" buyer-currency="EUR" variant-params="[{&quot;id&quot;:39353929793741,&quot;requiresShipping&quot;:true},{&quot;id&quot;:39353929662669,&quot;requiresShipping&quot;:true},{&quot;id&quot;:39353929695437,&quot;requiresShipping&quot;:true},{&quot;id&quot;:39353929728205,&quot;requiresShipping&quot;:true},{&quot;id&quot;:39353929760973,&quot;requiresShipping&quot;:true}]" shop-id="55611687117" enabled-flags="[&quot;1172c16a&quot;,&quot;a1d1f9a1&quot;,&quot;f5afabb3&quot;,&quot;370070f3&quot;]" > <div class="shopify-payment-button__button" role="button" disabled aria-hidden="true" style="background-color: transparent; border: none"> <div class="shopify-payment-button__skeleton">&nbsp;</div> </div> <div class="shopify-payment-button__more-options shopify-payment-button__skeleton" role="button" disabled aria-hidden="true">&nbsp;</div> </shopify-accelerated-checkout> </div>
3665</div><input type="hidden" name="product-id" value="6558715412685" /><input type="hidden" name="section-id" value="template--24141640106252__main" /></form></product-form>
3666
3667    
3667<script>
3668      const relatedCover = null;
3669      function checkIfElementLoaded(selector, timeout = 5000) {
3670          return new Promise((resolve, reject) => {
3671              const interval = 100; // Check every 100ms
3672              let elapsed = 0;
3673
3674              const checkInterval = setInterval(() => {
3675                  const element = document.querySelector(selector);
3676
3677                  if (element) {
3678                      clearInterval(checkInterval);
3679                      resolve(element);
3680                  }
3681
3682                  elapsed += interval;
3683
3684                  if (elapsed >= timeout) {
3685                      clearInterval(checkInterval);
3686                      reject(new Error('Element not found within timeout'));
3687                  }
3688              }, interval);
3689          });
3690      }
3691
3692      // Append Motiv prodcut ID + Price to the product personalizer form
3693      checkIfElementLoaded('.product-personalizer button')
3694      .then(element => {
3695        element.addEventListener("click", () => {
3696          const customizationForm = document.querySelector(`.pplr_form.pplr_atc_form`);
3697          if (customizationForm) {            
3698            const formProperties = document.createElement("div");
3699            let properties = `<input type="hidden" name="properties[_has_customizations]" value="true" />`;
3700            if (relatedCover) {
3701              properties = properties + `<input type="hidden" name="properties[_related_cover]" value="${relatedCover?.variants[0]?.id}" />`;
3702            }
3703            formProperties.innerHTML = properties;
3704            customizationForm.appendChild(formProperties);
3705          }
3706        })
3707        
3708      })
3709      .catch(error => {
3710          console.error(error.message);
3711      });
3712    </script>
3712<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-pickup-availability.css?v=34645222959864780961764247604" rel="stylesheet" type="text/css" media="all" />
3713<pickup-availability
3714      class="product__pickup-availabilities no-js-hidden quick-add-hidden"
3715      
3716      data-root-url="/"
3717      data-variant-id="39353929793741"
3718      data-has-only-default-variant="false"
3719      data-product-page-color-scheme="gradient color-scheme-1"
3720    >
3721      <template>
3722        <pickup-availability-preview class="pickup-availability-preview">
3723          <svg
3724  xmlns="http://www.w3.org/2000/svg"
3725  fill="none"
3726  aria-hidden="true"
3727  focusable="false"
3728  class="icon icon-unavailable"
3729  fill="none"
3730  viewBox="0 0 20 20"
3731>
3732  <path fill="#DE3618" stroke="#fff" d="M13.94 3.94L10 7.878l-3.94-3.94A1.499 1.499 0 103.94 6.06L7.88 10l-3.94 3.94a1.499 1.499 0 102.12 2.12L10 12.12l3.94 3.94a1.497 1.497 0 002.12 0 1.499 1.499 0 000-2.12L12.122 10l3.94-3.94a1.499 1.499 0 10-2.121-2.12z"/>
3733</svg>
3734
3735          <div class="pickup-availability-info">
3736            <p class="caption-large">Verfügbarkeit für Abholungen konnte nicht geladen werden</p>
3737            <button class="pickup-availability-button link link--text underlined-link">
3738              Aktualisieren
3739            </button>
3740          </div>
3741        </pickup-availability-preview>
3742      </template>
3743    </pickup-availability>
3744
3745    
3745<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/pickup-availability.js?v=66138958121968076331764247604" defer="defer"></script>
3745</div>
3746<style>
3747  .payment-methods-wrapper {
3748    margin-top: -12px;
3749margin-bottom: 30px;
3750    text-align: left;
3751    padding-left: 0;
3752  }
3753
3754  .payment-methods-heading {
3755    font-size: 14px;
3756    margin-bottom: 4px;
3757    color: #333;
3758  }
3759
3760  .payment-methods {
3761    display: flex;
3762    justify-content: flex-start;
3763    flex-wrap: nowrap;
3764    width: 100%;
3765    padding-left: 0;
3766    margin-left: -4px; /* gleicht das linke margin der Kacheln aus */
3767  }
3768
3769  .payment-method {
3770    border: 1px solid #ccc;
3771    border-radius: 4px;
3772    padding: 2px 6px;
3773    background-color: #fff;
3774    display: flex;
3775    align-items: center;
3776    justify-content: center;
3777    height: 22px;
3778    margin: 0 4px;
3779    width: 40px;
3780    box-sizing: border-box;
3781  }
3782
3783  .payment-method img {
3784    height: 14px;
3785    display: block;
3786    max-width: 100%;
3787  }
3788
3789  /* Desktop: mehr Abstand zwischen Kacheln */
3790  @media (min-width: 768px) {
3791    .payment-method {
3792      margin: 0 6px;
3793    }
3794
3795    .payment-methods {
3796      margin-left: -8px; /* gleicht neuen Abstand optisch aus */
3797    }
3798  }
3799</style>
3800
3801<div class="payment-methods-wrapper">
3802  <div class="payment-methods-heading">Alle Bezahlmöglichkeiten</div>
3803  <div class="payment-methods">
3804    <div class="payment-method">
3805      <img src="https://cdn.shopify.com/s/files/1/0556/1168/7117/files/PayPal.svg?v=1756132041" alt="PayPal" />
3806    </div>
3807    <div class="payment-method">
3808      <img src="https://cdn.shopify.com/s/files/1/0556/1168/7117/files/ApplePay.svg?v=1756132041" alt="Apple Pay" />
3809    </div>
3810    <div class="payment-method">
3811      <img src="https://cdn.shopify.com/s/files/1/0556/1168/7117/files/GooglePay.svg?v=1756132041" alt="Google Pay" />
3812    </div>
3813    <div class="payment-method">
3814      <img src="https://cdn.shopify.com/s/files/1/0556/1168/7117/files/Mastercard.svg?v=1756132041" alt="Mastercard" />
3815    </div>
3816    <div class="payment-method">
3817      <img src="https://cdn.shopify.com/s/files/1/0556/1168/7117/files/Maestro.svg?v=1756132041" alt="Maestro" />
3818    </div>
3819    <div class="payment-method">
3820      <img src="https://cdn.shopify.com/s/files/1/0556/1168/7117/files/visa-logo.svg?v=1756132041" alt="Visa" />
3821    </div>
3822  </div>
3823</div>
3824<!-- Unsichtbarer, aber SEO-sichtbarer Contentblock -->
3825<div style="position:absolute; left:-9999px; height:1px; width:1px; overflow:hidden;">
3826  <h2>Versandarten bei Wunschgutschein</h2>
3827  <p>Bei Wunschgutschein kannst du zwischen folgenden Versandarten wählen:</p>
3828  <ul>
3829    <li><strong>PDF zum Ausdrucken:</strong> kostenlos, innerhalb von 15 Minuten per E-Mail</li>
3830    <li><strong>Standard-Postversand:</strong> 1,90 €, Lieferzeit: 3–5 Werktage</li>
3831  </ul>
3832
3833  <h2>Produktdetails zum Wunschgutschein</h2>
3834  <p>
3835    Der Wunschgutschein ist das perfekte Geschenk für Geburtstag, Weihnachten, Hochzeit und viele weitere Anlässe.  
3836    Er ist bei über 100 Top-Partnern einlösbar – darunter Amazon, Zalando, Adidas und viele weitere bekannte Marken.  
3837    Erhältlich in den Beträgen 15, 25, 50, 100 und 150 Euro.  
3838    Die Gutscheine sind 10 Jahre gültig – ab dem Ende des Kaufjahres.
3839  </p>
3840
3841  <h2>Individualisierung</h2>
3842  <p>
3843    Auf Wunsch kannst du den Gutschein mit einem persönlichen Grußtext individualisieren.  
3844    Im Bestellprozess einfach „Mit Innentext“ wählen und den gewünschten Text eingeben.  
3845    Der Druck erfolgt exakt so, wie er in der Vorschau angezeigt wird.
3846  </p>
3847</div>
3848
3849<!-- Akkordeon Wrapper -->
3850<div class="accordion-wrapper">
3851
3852  <!-- Versandoptionen -->
3853  <div class="accordion-item">
3854    <div onclick="toggleAccordion('shipping')" class="accordion-header">
3855      <div style="display: flex; align-items: center; gap: 8px;">
3856        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#1e1b29" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
3857          <path d="M3 9.5V17a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V9.5M12 22v-6M3 9.5L12 3l9 6.5" />
3858        </svg>
3859        <span style="font-size: 15px; color: #1e1b29;">Versandoptionen</span>
3860      </div>
3861      <svg id="arrow-shipping" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="#1e1b29" stroke-width="2" viewBox="0 0 24 24" style="transition: transform 0.3s ease;"><path d="M6 9l6 6 6-6" /></svg>
3862    </div>
3863    <div id="content-shipping" class="accordion-content">
3864      <p style="color:#555; font-size:13px; margin-bottom:20px;">Deine bevorzugte Versandart wählst du später ganz einfach im Schritt „Zur Kasse“ aus.</p>
3865      <ul style="list-style:none; padding:0; margin:0; font-size:13px;">
3866        <li style="margin-bottom:16px; display:flex; align-items:flex-start; gap:10px;">
3867          <span style="color:green; font-size:17px;">✓</span>
3868          <div><strong>PDF zum Ausdrucken</strong> – <span style="color:green; font-weight:500;">kostenlos</span><br><span style="color:#666;">max. 15 min per E‑Mail</span></div>
3869        </li>
3870        <li style="margin-bottom:16px; display:flex; align-items:flex-start; gap:10px;">
3871          <span style="color:green; font-size:17px;">✓</span>
3872          <div><strong>Standard Postversand</strong> – <span style="font-weight:500;">1,90 €</span><br><span style="color:#666;">3–5 Werktage</span></div>
3873      </ul>
3874    </div>
3875  </div>
3876
3877  <!-- Produktdetails -->
3878  <div class="accordion-item">
3879    <div onclick="toggleAccordion('product')" class="accordion-header">
3880      <div style="display: flex; align-items: center; gap: 8px;">
3881        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#1e1b29" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
3882          <rect x="2" y="7" width="20" height="14" rx="2" ry="2"/>
3883          <path d="M12 7V21"/><path d="M2 12h20"/><path d="M12 7a3 3 0 1 0-3-3c0 1.5 3 3 3 3z"/><path d="M12 7a3 3 0 1 1 3-3c0 1.5-3 3-3 3z"/>
3884        </svg>
3885        <span style="font-size: 15px; color: #1e1b29;">Produktdetails</span>
3886      </div>
3887      <svg id="arrow-product" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="#1e1b29" stroke-width="2" viewBox="0 0 24 24" style="transition: transform 0.3s ease;"><path d="M6 9l6 6 6-6" /></svg>
3888    </div>
3889    <div id="content-product" class="accordion-content">
3890      <div style="background: #f2f2f2; padding: 15px 25px; margin-bottom: 15px; font-size:13px;">
3891        ✓ <strong>Kostenloser Postversand<sup>1</sup></strong><br>
3892        ✓ <strong>Kostenloser Briefumschlag</strong><br>
3893        ✓ Möglichkeiten zur Individualisierung
3894      </div>
3895      <p style="font-size:13px; color:#333; line-height:1.6;">
3896        WUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei <strong>über 150 Online-Shops</strong> einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.
3897      </p>
3898<p style="font-size:11px; color:#666; line-height:1.4; margin-bottom:12px;">
3899  <em>
3900    Die Auswahl an Partner-Shops hängt von deinem Wunschgutschein Produkt ab. 
3901    Die finale Auswahl an Einlösepartnern für deinen persönlichen Gutschein 
3902    sind nach der Code-Eingabe zu sehen. 
3903    <a href="https://app.wunschgutschein.at/" target="_parent" style="text-decoration:none; color:#CC211E;">
3904      Hier zur Übersicht aller unserer aktuellen Einlösepartner.
3905    </a>
3906    <br><br>
3907    Einlösen kannst du deinen Wunschgutschein ganz einfach durch Eingabe des erhaltenen Codes 
3908    im dafür vorgesehenen Feld im Bereich „GUTSCHEIN EINLÖSEN“. 
3909    Anschließend werden die finalen Einlösepartner angezeigt. 
3910    Du kannst deinen Wunschgutschein gegen die Wertgutscheine dieser Partner umtauschen. 
3911    <a href="https://app.wunschgutschein.at/" target="_parent" style="text-decoration:none; color:#CC211E;">
3912      Hier zur Übersicht aller unserer aktuellen Einlösepartner.
3913    </a>
3914    <br><br>
3915    Gültigkeit: Wunschgutscheine verfallen zehn Jahre nach ihrer Bestellung 
3916    beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.<br>
3917    <sup>1</sup>*Ab einem Bestellwert von 40 €. 
3918    Bei Standardversand innerhalb Deutschlands, Österreich und Schweiz.
3919  </em>
3920</p>
3921    </div>
3922  </div>
3923
3924  <!-- Individualisierung -->
3925  <div class="accordion-item">
3926    <div onclick="toggleAccordion('custom')" class="accordion-header">
3927      <div style="display: flex; align-items: center; gap: 8px;">
3928        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#1e1b29" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
3929          <path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 1 1 3 3L7 19l-4 1 1-4Z"/>
3930        </svg>
3931        <span style="font-size: 15px; color: #1e1b29;">Individualisierung</span>
3932      </div>
3933      <svg id="arrow-custom" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="#1e1b29" stroke-width="2" viewBox="0 0 24 24" style="transition: transform 0.3s ease;"><path d="M6 9l6 6 6-6" /></svg>
3934    </div>
3935    <div id="content-custom" class="accordion-content">
3936      <p style="font-size:13px; color:#333; line-height:1.6;">Wir können deinen <strong>persönlichen Grußtext</strong> direkt in die Karte drucken.</p>
3937      <p style="font-size:13px; color:#333; line-height:1.6;">So einfach funktioniert es:</p>
3938      <ol style="padding-left: 20px; margin-bottom: 15px; font-size:13px; color:#333;">
3939        <li>Den Gutscheinwert auswählen.</li>
3940        <li>Auf den Button <strong>„Jetzt personalisieren“</strong> oder <strong>„Innentext hinzufügen“</strong> klicken.</li>
3941        <li>Die Zusatzoption <strong>„Mit Innentext“</strong> auswählen.</li>
3942        <li>Den gewünschten Text in das entsprechende Feld schreiben.</li>
3943        <li>In den Warenkorb legen.</li>
3944      </ol>
3945      <p style="font-size:11px; color:#666;"><em>Hinweis: Der Druck der Innenseite erfolgt 1:1 wie in der Vorschau.</em></p>
3946    </div>
3947  </div>
3948</div>
3949
3950<!-- Styles -->
3951<style>
3952.accordion-wrapper {
3953  margin: 0;
3954  padding: 0;
3955}
3956
3957.accordion-item {
3958  border-bottom: 1px solid #e6e6e6;
3959  transition: border 0.3s ease;
3960}
3961
3962.accordion-item + .accordion-item {
3963  margin-top: -1px;
3964}
3965
3966.accordion-header {
3967  cursor: pointer;
3968  border-top: 1px solid #e6e6e6;
3969  background: #fff;
3970  padding: 16px 20px;
3971  display: flex;
3972  align-items: center;
3973  justify-content: space-between;
3974  transition: background 0.3s ease;
3975}
3976
3977.accordion-header:hover {
3978  background: #f7f7f7;
3979}
3980
3981.accordion-item.open {
3982  border-bottom: none;
3983}
3984
3985.accordion-content {
3986  max-height: 0;
3987  overflow: hidden;
3988  transition: max-height 0.4s ease, padding 0.3s ease;
3989  padding: 0 20px;
3990}
3991
3992.accordion-content.open {
3993  padding-top: 10px;
3994  padding-bottom: 14px;
3995  max-height: 1000px;
3996}
3997</style>
3998
3999<!-- Script -->
4000<script>
4001function toggleAccordion(id) {
4002  const content = document.getElementById("content-" + id);
4003  const arrow = document.getElementById("arrow-" + id);
4004  const item = content.closest(".accordion-item");
4005  const isOpen = content.classList.contains("open");
4006
4007  document.querySelectorAll(".accordion-content").forEach(el => el.classList.remove("open"));
4008  document.querySelectorAll(".accordion-item").forEach(el => el.classList.remove("open"));
4009  document.querySelectorAll(".accordion-header svg:last-child").forEach(el => el.style.transform = "rotate(0deg)");
4010
4011  if (!isOpen) {
4012    content.classList.add("open");
4013    item.classList.add("open");
4014    arrow.style.transform = "rotate(180deg)";
4015  }
4016}
4017</script>
4017
4018<div id="shopify-block-ATVBHUmxpbkN4V1hQe__garan_eu_guarantee_notice_eugl_notice_bkDPMD" class="shopify-block shopify-app-block">
4019<div class="eugl eugl--notice-block eugl--align-left" ><!-- BEGIN app snippet: eugl_notice_render --><div class="eugl-notice" style="--eugl-notice-width: 595px"><details class="eugl-notice__disclosure">
4020          <summary class="eugl-notice__trigger">Rechte bei der gesetzlichen Gewährleistung</summary>
4021          <div class="eugl-notice__body"><img
4022              class="eugl-notice__image"
4023              src="https://cdn.shopify.com/s/files/1/0556/1168/7117/files/eugl-notice-de-colour.svg?v=1790442290"
4024              alt="GESETZLICHE GEWÄHRLEISTUNG Mindestens zwei Jahre gesetzliche Gewährleistung der Vertragsmäßigkeit für Waren, die in der Europäischen Union verkauft werden. Verbraucherinnen und Verbraucher können ihre Rechte im Rahmen des gesetzlichen Gewährleistungsrechts geltend machen, z. B. wenn die Waren nicht der Beschreibung entsprechen, nicht bestimmungsgemäß funktionieren. Verkäufer haften für jede Vertragswidrigkeit, die zum Zeitpunkt der Lieferung der Waren bestand und innerhalb des Zeitraums der gesetzlichen Gewährleistung erkennbar wird. Verkäufer müssen in solchen Fällen Folgendes anbieten: kostenlose Nachbesserung oder kostenlose Ersatzlieferung, in bestimmten Fällen eine Preisminderung oder eine vollständige Erstattung des Kaufpreises. In einigen Ländern gilt ein längerer Zeitraum für die gesetzliche Gewährleistung. Für gebrauchte Waren kann ein kürzerer Zeitraum gelten, jedoch nicht weniger als ein Jahr. Für weitere Informationen zu Ihren Rechten in einem bestimmten Land scannen Sie den nachstehenden QR-Code oder fragen Sie den Verkäufer. europa.eu/youreurope/garantien Was ist zu tun, wenn Sie vertragswidrige Waren erhalten? Melden Sie dem Verkäufer das Problem so bald wie möglich. Legen Sie einen Kaufnachweis vor, z. B. die Quittung, Rechnung oder einen Kontoauszug. Verkäufer und Hersteller können auch gewerbliche Garantien gewähren, die unabhängig von der gesetzlichen Gewährleistung gelten. Diese GARAN-Kennzeichnung zeigt beispielsweise, dass der Hersteller eine gewerbliche Haltbarkeitsgarantie ohne zusätzliche Kosten gewährt, die die gesamte Ware abdeckt. 1 2"
4025              width="595"
4026              height="842"
4027              loading="lazy"
4028              decoding="async"
4029            >
4030            <p class="eugl-notice__link">
4031              <a href="https://europa.eu/youreurope/garantien" target="_blank" rel="noopener nofollow">
4032                Amtliche Mitteilung im Your-Europe-Portal öffnen
4033              </a>
4034            </p>
4035          </div>
4036        </details></div><!-- BEGIN app snippet: eugl_garan_render --><!-- END app snippet --><!-- END app snippet --></div>
4037
4038
4039</div>
4040<a href="/products/motiv-wunscherfueller" class="link product__view-details animate-arrow">
4041            Vollständige Details anzeigen
4042            <svg
4043  viewBox="0 0 14 10"
4044  fill="none"
4045  aria-hidden="true"
4046  focusable="false"
4047  class="icon icon-arrow"
4048  xmlns="http://www.w3.org/2000/svg"
4049>
4050  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
4051</svg>
4052
4053          </a>
4054        </product-info>
4055      </div></div>
4056
4057    
4058
4059<product-modal id="ProductModal-template--24141640106252__main" class="product-media-modal media-modal">
4060  <div
4061    class="product-media-modal__dialog color-scheme-1 gradient"
4062    role="dialog"
4063    aria-label="Medien-Galerie"
4064    aria-modal="true"
4065    tabindex="-1"
4066  >
4067    <button
4068      id="ModalClose-template--24141640106252__main"
4069      type="button"
4070      class="product-media-modal__toggle"
4071      aria-label="Schließen"
4072    >
4073      <svg
4074  xmlns="http://www.w3.org/2000/svg"
4075  aria-hidden="true"
4076  focusable="false"
4077  class="icon icon-close"
4078  fill="none"
4079  viewBox="0 0 18 17"
4080>
4081  <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
4082</svg>
4083
4084    </button>
4085
4086    <div
4087      class="product-media-modal__content color-scheme-1 gradient"
4088      role="document"
4089      aria-label="Medien-Galerie"
4090      tabindex="0"
4091    >
4092<img
4093    class="global-media-settings global-media-settings--no-shadow"
4094    srcset="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&width=550 550w,//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&width=1100 1100w,//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377 1358w"
4095    sizes="(min-width: 750px) calc(100vw - 22rem), 1100px"
4096    src="//shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377&width=1445"
4097    alt="Dein Wunscherfüller - Schmetterling"
4098    loading="lazy"
4099    width="1100"
4100    height="1579"
4101    data-media-id="64412941582604"
4102  >
4103<img
4104    class="global-media-settings global-media-settings--no-shadow"
4105    srcset="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&width=550 550w,//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&width=1100 1100w,//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820 1358w"
4106    sizes="(min-width: 750px) calc(100vw - 22rem), 1100px"
4107    src="//shop.wunschgutschein.at/cdn/shop/products/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820&width=1445"
4108    alt="Dein Wunscherfüller - Schmetterling"
4109    loading="lazy"
4110    width="1100"
4111    height="1579"
4112    data-media-id="36848293544204"
4113  >
4114<img
4115    class="global-media-settings global-media-settings--no-shadow"
4116    srcset="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&width=550 550w,//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&width=1100 1100w,//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376 1358w"
4117    sizes="(min-width: 750px) calc(100vw - 22rem), 1100px"
4118    src="//shop.wunschgutschein.at/cdn/shop/products/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376&width=1445"
4119    alt="Dein Wunscherfüller - Schmetterling"
4120    loading="lazy"
4121    width="1100"
4122    height="1579"
4123    data-media-id="36848293576972"
4124  >
4125<img
4126    class="global-media-settings global-media-settings--no-shadow"
4127    srcset="//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&width=550 550w,//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&width=1100 1100w,//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813 1358w"
4128    sizes="(min-width: 750px) calc(100vw - 22rem), 1100px"
4129    src="//shop.wunschgutschein.at/cdn/shop/files/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813&width=1445"
4130    alt="Dein Wunscherfüller - Schmetterling"
4131    loading="lazy"
4132    width="1100"
4133    height="1579"
4134    data-media-id="38396991275276"
4135  ></div>
4136  </div>
4137</product-modal>
4138
4139
4140    
4141<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/product-modal.js?v=116616134454508949461764247604" defer="defer"></script>
4141
4142      
4142<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/media-gallery.js?v=48911661624497674881764247604" defer="defer"></script>
4142<script>
4143      document.addEventListener('DOMContentLoaded', function () {
4144        function isIE() {
4145          const ua = window.navigator.userAgent;
4146          const msie = ua.indexOf('MSIE ');
4147          const trident = ua.indexOf('Trident/');
4148
4149          return msie > 0 || trident > 0;
4150        }
4151
4152        if (!isIE()) return;
4153        const hiddenInput = document.querySelector('#product-form-template--24141640106252__main input[name="id"]');
4154        const noScriptInputWrapper = document.createElement('div');
4155        const variantPicker = document.querySelector('variant-selects[data-section="template--24141640106252__main"]');
4156        noScriptInputWrapper.innerHTML = document.querySelector(
4157          '.product-form__noscript-wrapper-template--24141640106252__main'
4158        ).textContent;
4159        variantPicker.outerHTML = noScriptInputWrapper.outerHTML;
4160
4161        document.querySelector('#Variants-template--24141640106252__main').addEventListener('change', function (event) {
4162          hiddenInput.value = event.currentTarget.value;
4163        });
4164      });
4165    </script>
4165<script type="application/ld+json">
4166      {
4167        "@context": "http://schema.org/",
4168        "@type": "Product",
4169        "name": "Dein Wunscherfüller - Schmetterling",
4170        "url": "https:\/\/shop.wunschgutschein.at\/products\/motiv-wunscherfueller",
4171        "image": [
4172            "https:\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377\u0026width=1920"
4173          ],
4174        "description": "\n✓ Kostenloser Postversand* ✓ Kostenloser Briefumschlag ✓ Individualisierungsmöglichkeiten\nWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei über 100 Online-Shops einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.\nGültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.\n*Ab einem Bestellwert von 40€. Bei Standardversand innerhalb Deutschlands, Österreich und Schweiz",
4175        "sku": "20001311015",
4176        "brand": {
4177          "@type": "Brand",
4178          "name": "Wunschgutschein-Austria"
4179        },
4180        "offers": [{
4181              "@type" : "Offer","sku": "20001311015","availability" : "http://schema.org/InStock",
4182              "price" : 15.0,
4183              "priceCurrency" : "EUR",
4184              "url" : "https:\/\/shop.wunschgutschein.at\/products\/motiv-wunscherfueller?variant=39353929793741"
4185            },
4186{
4187              "@type" : "Offer","sku": "20001311025","availability" : "http://schema.org/InStock",
4188              "price" : 25.0,
4189              "priceCurrency" : "EUR",
4190              "url" : "https:\/\/shop.wunschgutschein.at\/products\/motiv-wunscherfueller?variant=39353929662669"
4191            },
4192{
4193              "@type" : "Offer","sku": "20001311050","availability" : "http://schema.org/InStock",
4194              "price" : 50.0,
4195              "priceCurrency" : "EUR",
4196              "url" : "https:\/\/shop.wunschgutschein.at\/products\/motiv-wunscherfueller?variant=39353929695437"
4197            },
4198{
4199              "@type" : "Offer","sku": "20001311100","availability" : "http://schema.org/InStock",
4200              "price" : 100.0,
4201              "priceCurrency" : "EUR",
4202              "url" : "https:\/\/shop.wunschgutschein.at\/products\/motiv-wunscherfueller?variant=39353929728205"
4203            },
4204{
4205              "@type" : "Offer","sku": "20001311150","availability" : "http://schema.org/InStock",
4206              "price" : 150.0,
4207              "priceCurrency" : "EUR",
4208              "url" : "https:\/\/shop.wunschgutschein.at\/products\/motiv-wunscherfueller?variant=39353929760973"
4209            }
4210]
4211      }
4212    </script>
4212
4213  </div>
4214</section>
4215
4216
4217</section>
4218    </main>
4219
4220    <!-- BEGIN sections: footer-group -->
4221<div id="shopify-section-sections--24141630669068__footer" class="shopify-section shopify-section-group-footer-group">
4222<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/section-footer.css?v=182785222258768616561764247604" rel="stylesheet" type="text/css" media="all" />
4223<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-newsletter.css?v=4727253280200485261764247604" rel="stylesheet" type="text/css" media="all" />
4224<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-list-menu.css?v=151968516119678728991764247604" rel="stylesheet" type="text/css" media="all" />
4225<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-list-payment.css?v=69253961410771838501764247604" rel="stylesheet" type="text/css" media="all" />
4226<link href="//shop.wunschgutschein.at/cdn/shop/t/38/assets/component-list-social.css?v=35792976012981934991764247604" rel="stylesheet" type="text/css" media="all" />
4227<style data-shopify>.footer {
4228    margin-top: 0px;
4229  }
4230
4231  .section-sections--24141630669068__footer-padding {
4232    padding-top: 15px;
4233    padding-bottom: 15px;
4234  }
4235
4236  @media screen and (min-width: 750px) {
4237    .footer {
4238      margin-top: 0px;
4239    }
4240
4241    .section-sections--24141630669068__footer-padding {
4242      padding-top: 20px;
4243      padding-bottom: 20px;
4244    }
4245  }</style><footer class="footer color-scheme-2 gradient section-sections--24141630669068__footer-padding"><div class="footer__content-top page-width"><div
4246            class="footer__blocks-wrapper grid grid--1-col grid--2-col grid--4-col-tablet "
4247            
4248          ><div
4249                class="footer-block grid__item footer-block--menu"
4250                
4251                
4252              ><h2 class="footer-block__heading inline-richtext">Service</h2><ul class="footer-block__details-content list-unstyled"><li>
4253                            <a
4254                              href="https://shop.wunschgutschein.at/pages/hilfe-und-kontakt"
4255                              class="link link--text list-menu__item list-menu__item--link"
4256                            >
4257                              FAQs
4258                            </a>
4259                          </li><li>
4260                            <a
4261                              href="/policies/shipping-policy"
4262                              class="link link--text list-menu__item list-menu__item--link"
4263                            >
4264                              Lieferung & Zahlung
4265                            </a>
4266                          </li><li>
4267                            <a
4268                              href="/pages/kontakt"
4269                              class="link link--text list-menu__item list-menu__item--link"
4270                            >
4271                              Kontakt
4272                            </a>
4273                          </li></ul></div><div
4274                class="footer-block grid__item footer-block--menu"
4275                
4276                
4277              ><h2 class="footer-block__heading inline-richtext">Über uns</h2><ul class="footer-block__details-content list-unstyled"><li>
4278                            <a
4279                              href="https://wunschgutschein.onapply.de/"
4280                              class="link link--text list-menu__item list-menu__item--link"
4281                            >
4282                              Karriere
4283                            </a>
4284                          </li></ul></div><div
4285                class="footer-block grid__item footer-block--menu"
4286                
4287                
4288              ><h2 class="footer-block__heading inline-richtext">WUNSCHGUTSCHEIN</h2><ul class="footer-block__details-content list-unstyled"><li>
4289                            <a
4290                              href="/policies/legal-notice"
4291                              class="link link--text list-menu__item list-menu__item--link"
4292                            >
4293                              Impressum
4294                            </a>
4295                          </li><li>
4296                            <a
4297                              href="/policies/refund-policy"
4298                              class="link link--text list-menu__item list-menu__item--link"
4299                            >
4300                              Widerrufsrecht
4301                            </a>
4302                          </li><li>
4303                            <a
4304                              href="https://shop.wunschgutschein.at/pages/widerruf"
4305                              class="link link--text list-menu__item list-menu__item--link"
4306                            >
4307                              Widerrufs-Formular
4308                            </a>
4309                          </li><li>
4310                            <a
4311                              href="/policies/terms-of-service"
4312                              class="link link--text list-menu__item list-menu__item--link"
4313                            >
4314                              AGB
4315                            </a>
4316                          </li><li>
4317                            <a
4318                              href="/pages/barrierefreiheitserklaerung"
4319                              class="link link--text list-menu__item list-menu__item--link"
4320                            >
4321                              Barrierefreiheitserklärung
4322                            </a>
4323                          </li><li>
4324                            <a
4325                              href="/policies/privacy-policy"
4326                              class="link link--text list-menu__item list-menu__item--link"
4327                            >
4328                              Datenschutzerklärung
4329                            </a>
4330                          </li><li>
4331                            <a
4332                              href="/pages/partnerschaft"
4333                              class="link link--text list-menu__item list-menu__item--link"
4334                            >
4335                              Partner werden
4336                            </a>
4337                          </li></ul></div></div><div
4338          class="footer-block--newsletter"
4339          
4340        >
4341
4342<ul class="list-unstyled list-social footer__list-social" role="list"><li class="list-social__item">
4343      <a href="https://www.facebook.com/wunschgutschein/" class="link list-social__link"><svg aria-hidden="true" focusable="false" class="icon icon-facebook" viewB
4343ox="0 0 20 20">
4344  <path fill="currentColor" d="M18 10.049C18 5.603 14.419 2 10 2c-4.419 0-8 3.603-8 8.049C2 14.067 4.925 17.396 8.75 18v-5.624H6.719v-2.328h2.03V8.275c0-2.017 1.195-3.132 3.023-3.132.874 0 1.79.158 1.79.158v1.98h-1.009c-.994 0-1.303.621-1.303 1.258v1.51h2.219l-.355 2.326H11.25V18c3.825-.604 6.75-3.933 6.75-7.951Z"/>
4345</svg>
4346<span class="visually-hidden">Facebook</span>
4347      </a>
4348    </li><li class="list-social__item">
4349      <a href="https://www.instagram.com/wunschgutschein/" class="link list-social__link"><svg aria-hidden="true" focusable="false" class="icon icon-instagram" viewBox="0 0 20 20">
4350  <path fill="currentColor" fill-rule="evenodd" d="M13.23 3.492c-.84-.037-1.096-.046-3.23-.046-2.144 0-2.39.01-3.238.055-.776.027-1.195.164-1.487.273a2.43 2.43 0 0 0-.912.593 2.486 2.486 0 0 0-.602.922c-.11.282-.238.702-.274 1.486-.046.84-.046 1.095-.046 3.23 0 2.134.01 2.39.046 3.229.004.51.097 1.016.274 1.495.145.365.319.639.602.913.282.282.538.456.92.602.474.176.974.268 1.479.273.848.046 1.103.046 3.238.046 2.134 0 2.39-.01 3.23-.046.784-.036 1.203-.164 1.486-.273.374-.146.648-.329.921-.602.283-.283.447-.548.602-.922.177-.476.27-.979.274-1.486.037-.84.046-1.095.046-3.23 0-2.134-.01-2.39-.055-3.229-.027-.784-.164-1.204-.274-1.495a2.43 2.43 0 0 0-.593-.913 2.604 2.604 0 0 0-.92-.602c-.284-.11-.703-.237-1.488-.273ZM6.697 2.05c.857-.036 1.131-.045 3.302-.045 1.1-.014 2.202.001 3.302.045.664.014 1.321.14 1.943.374a3.968 3.968 0 0 1 1.414.922c.41.397.728.88.93 1.414.23.622.354 1.279.365 1.942C18 7.56 18 7.824 18 10.005c0 2.17-.01 2.444-.046 3.292-.036.858-.173 1.442-.374 1.943-.2.53-.474.976-.92 1.423a3.896 3.896 0 0 1-1.415.922c-.51.191-1.095.337-1.943.374-.857.036-1.122.045-3.302.045-2.171 0-2.445-.009-3.302-.055-.849-.027-1.432-.164-1.943-.364a4.152 4.152 0 0 1-1.414-.922 4.128 4.128 0 0 1-.93-1.423c-.183-.51-.329-1.085-.365-1.943C2.009 12.45 2 12.167 2 10.004c0-2.161 0-2.435.055-3.302.027-.848.164-1.432.365-1.942a4.44 4.44 0 0 1 .92-1.414 4.18 4.18 0 0 1 1.415-.93c.51-.183 1.094-.33 1.943-.366Zm.427 4.806a4.105 4.105 0 1 1 5.805 5.805 4.105 4.105 0 0 1-5.805-5.805Zm1.882 5.371a2.668 2.668 0 1 0 2.042-4.93 2.668 2.668 0 0 0-2.042 4.93Zm5.922-5.942a.958.958 0 1 1-1.355-1.355.958.958 0 0 1 1.355 1.355Z" clip-rule="evenodd"/>
4351</svg>
4352<span class="visually-hidden">Instagram</span>
4353      </a>
4354    </li><li class="list-social__item">
4355      <a href="https://twitter.com/wunschgutschein" class="link list-social__link"><svg aria-hidden="true" focusable="false" class="icon icon-twitter" viewBox="0 0 20 20">
4356  <path fill="currentColor" d="M18.608 4.967a7.364 7.364 0 0 1-1.758 1.828c0 .05 0 .13.02.23l.02.232a10.014 10.014 0 0 1-1.697 5.565 11.023 11.023 0 0 1-2.029 2.29 9.13 9.13 0 0 1-2.832 1.607 10.273 10.273 0 0 1-8.94-.985c.342.02.613.04.834.04 1.647 0 3.114-.502 4.4-1.506a3.616 3.616 0 0 1-3.315-2.46c.528.128 1.08.107 1.597-.061a3.485 3.485 0 0 1-2.029-1.216 3.385 3.385 0 0 1-.803-2.23v-.03c.462.242.984.372 1.587.402A3.465 3.465 0 0 1 2.116 5.76c0-.612.14-1.205.452-1.798a9.723 9.723 0 0 0 3.214 2.612A10.044 10.044 0 0 0 9.88 7.649a3.013 3.013 0 0 1-.13-.804c0-.974.34-1.808 1.034-2.49a3.466 3.466 0 0 1 2.561-1.035 3.505 3.505 0 0 1 2.551 1.104 6.812 6.812 0 0 0 2.24-.853 3.415 3.415 0 0 1-1.547 1.948 7.732 7.732 0 0 0 2.02-.542v-.01Z"/>
4357</svg>
4358<span class="visually-hidden">Twitter</span>
4359      </a>
4360    </li></ul>
4361</div>
4362      </div><div
4363    class="footer__content-bottom"
4364    
4365  >
4366    <div class="footer__content-bottom-wrapper page-width">
4367      <div class="footer__column footer__localization isolate"></div>
4368      <div class="footer__column footer__column--info"><div class="footer__payment">
4369            <span class="visually-hidden">Zahlungsmethoden</span>
4370            <ul class="list list-payment" role="list"><li class="list-payment__item">
4371                  <svg class="icon icon--full-color" version="1.1" xmlns="http://www.w3.org/2000/svg" role="img" x="0" y="0" width="38" height="24" viewBox="0 0 165.521 105.965" xml:space="preserve" aria-labelledby="pi-apple_pay"><title id="pi-apple_pay">Apple Pay</title><path fill="#000" d="M150.698 0H14.823c-.566 0-1.133 0-1.698.003-.477.004-.953.009-1.43.022-1.039.028-2.087.09-3.113.274a10.51 10.51 0 0 0-2.958.975 9.932 9.932 0 0 0-4.35 4.35 10.463 10.463 0 0 0-.975 2.96C.113 9.611.052 10.658.024 11.696a70.22 70.22 0 0 0-.022 1.43C0 13.69 0 14.256 0 14.823v76.318c0 .567 0 1.132.002 1.699.003.476.009.953.022 1.43.028 1.036.09 2.084.275 3.11a10.46 10.46 0 0 0 .974 2.96 9.897 9.897 0 0 0 1.83 2.52 9.874 9.874 0 0 0 2.52 1.83c.947.483 1.917.79 2.96.977 1.025.183 2.073.245 3.112.273.477.011.953.017 1.43.02.565.004 1.132.004 1.698.004h135.875c.565 0 1.132 0 1.697-.004.476-.002.952-.009 1.431-.02 1.037-.028 2.085-.09 3.113-.273a10.478 10.478 0 0 0 2.958-.977 9.955 9.955 0 0 0 4.35-4.35c.483-.947.789-1.917.974-2.96.186-1.026.246-2.074.274-3.11.013-.477.02-.954.022-1.43.004-.567.004-1.132.004-1.699V14.824c0-.567 0-1.133-.004-1.699a63.067 63.067 0 0 0-.022-1.429c-.028-1.038-.088-2.085-.274-3.112a10.4 10.4 0 0 0-.974-2.96 9.94 9.94 0 0 0-4.35-4.35A10.52 10.52 0 0 0 156.939.3c-1.028-.185-2.076-.246-3.113-.274a71.417 71.417 0 0 0-1.431-.022C151.83 0 151.263 0 150.698 0z" /><path fill="#FFF" d="M150.698 3.532l1.672.003c.452.003.905.008 1.36.02.793.022 1.719.065 2.583.22.75.135 1.38.34 1.984.648a6.392 6.392 0 0 1 2.804 2.807c.306.6.51 1.226.645 1.983.154.854.197 1.783.218 2.58.013.45.019.9.02 1.36.005.557.005 1.113.005 1.671v76.318c0 .558 
43710 1.114-.004 1.682-.002.45-.008.9-.02 1.35-.022.796-.065 1.725-.221 2.589a6.855 6.855 0 0 1-.645 1.975 6.397 6.397 0 0 1-2.808 2.807c-.6.306-1.228.511-1.971.645-.881.157-1.847.2-2.574.22-.457.01-.912.017-1.379.019-.555.004-1.113.004-1.669.004H14.801c-.55 0-1.1 0-1.66-.004a74.993 74.993 0 0 1-1.35-.018c-.744-.02-1.71-.064-2.584-.22a6.938 6.938 0 0 1-1.986-.65 6.337 6.337 0 0 1-1.622-1.18 6.355 6.355 0 0 1-1.178-1.623 6.935 6.935 0 0 1-.646-1.985c-.156-.863-.2-1.788-.22-2.578a66.088 66.088 0 0 1-.02-1.355l-.003-1.327V14.474l.002-1.325a66.7 66.7 0 0 1 .02-1.357c.022-.792.065-1.717.222-2.587a6.924 6.924 0 0 1 .646-1.981c.304-.598.7-1.144 1.18-1.623a6.386 6.386 0 0 1 1.624-1.18 6.96 6.96 0 0 1 1.98-.646c.865-.155 1.792-.198 2.586-.22.452-.012.905-.017 1.354-.02l1.677-.003h135.875" /><g><g><path fill="#000" d="M43.508 35.77c1.404-1.755 2.356-4.112 2.105-6.52-2.054.102-4.56 1.355-6.012 3.112-1.303 1.504-2.456 3.959-2.156 6.266 2.306.2 4.61-1.152 6.063-2.858" /><path fill="#000" d="M45.587 39.079c-3.35-.2-6.196 1.9-7.795 1.9-1.6 0-4.049-1.8-6.698-1.751-3.447.05-6.645 2-8.395 5.1-3.598 6.2-.95 15.4 2.55 20.45 1.699 2.5 3.747 5.25 6.445 5.151 2.55-.1 3.549-1.65 6.647-1.65 3.097 0 3.997 1.65 6.696 1.6 2.798-.05 4.548-2.5 6.247-5 1.95-2.85 2.747-5.6 2.797-5.75-.05-.05-5.396-2.101-5.446-8.251-.05-5.15 4.198-7.6 4.398-7.751-2.399-3.548-6.147-3.948-7.447-4.048" /></g><g><path fill="#000" d="M78.973 32.11c7.278 0 12.347 5.017 12.347 12.321 0 7.33-5.173 12.373-12.529 12.373h-8.058V69.62h-5.822V32.11h14.062zm-8.24 19.807h6.68c5.07 0 7.954-2.729 7.954-7.46 0-4.73-2.885-7.434-7.928-7.434h-6.706v14.894z" /><path fill="#000" d="M92.764 61.847c0-4.809 3.665-7.564 10.423-7.98l7.252-.442v-2.08c0-3.04-2.001-4.704-5.562-4.704-2.938 0-5.07 1.507-5.51 3.82h-5.252c.157-4.86 4.731-8.395 10.918-8.395 6.654 0 10.995 3.483 10.995 8.89v18.663h-5.38v-4.497h-.13c-1.534 2.937-4.914 4.782-8.579 4.782-5.406 0-9.175-3.222-9.175-8.057zm17.675-2.417v-2.106l-6.472.416c-3.64.234-5.536 1.585-5.536 3.95 0 2.288 1.975 3.77 5.068 3.77 3.95 0 6.94-2.522 6.94-6.03z" /><path fill="#000" d="M120.975 79.652v-4.496c.364.051 1.247.103 1.715.103 2.573 0 4.029-1.09 4.913-3.899l.52-1.663-9.852-27.293h6.082l6.863 22.146h.13l6.862-22.146h5.927l-10.216 28.67c-2.34 6.577-5.017 8.735-10.683 8.735-.442 0-1.872-.052-2.261-.157z" /></g></g></svg>
4372
4373                </li><li class="list-payment__item">
4374                  <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" aria-labelledby="pi-google_pay"><title id="pi-google_pay">Google Pay</title><path d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000" opacity=".07"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32" fill="#FFF"/><path d="M18.093 11.976v3.2h-1.018v-7.9h2.691a2.447 2.447 0 0 1 1.747.692 2.28 2.28 0 0 1 .11 3.224l-.11.116c-.47.447-1.098.69-1.747.674l-1.673-.006zm0-3.732v2.788h1.698c.377.012.741-.135 1.005-.404a1.391 1.391 0 0 0-1.005-2.354l-1.698-.03zm6.484 1.348c.65-.03 1.286.188 1.778.613.445.43.682 1.03.65 1.649v3.334h-.969v-.766h-.049a1.93 1.93 0 0 1-1.673.931 2.17 2.17 0 0 1-1.496-.533 1.667 1.667 0 0 1-.613-1.324 1.606 1.606 0 0 1 .613-1.336 2.746 2.746 0 0 1 1.698-.515c.517-.02 1.03.093 1.49.331v-.208a1.134 1.134 0 0 0-.417-.901 1.416 1.416 0 0 0-.98-.368 1.545 1.545 0 0 0-1.319.717l-.895-.564a2.488 2.488 0 0 1 2.182-1.
437406zM23.29 13.52a.79.79 0 0 0 .337.662c.223.176.5.269.785.263.429-.001.84-.17 1.146-.472.305-.286.478-.685.478-1.103a2.047 2.047 0 0 0-1.324-.374 1.716 1.716 0 0 0-1.03.294.883.883 0 0 0-.392.73zm9.286-3.75l-3.39 7.79h-1.048l1.281-2.728-2.224-5.062h1.103l1.612 3.885 1.569-3.885h1.097z" fill="#5F6368"/><path d="M13.986 11.284c0-.308-.024-.616-.073-.92h-4.29v1.747h2.451a2.096 2.096 0 0 1-.9 1.373v1.134h1.464a4.433 4.433 0 0 0 1.348-3.334z" fill="#4285F4"/><path d="M9.629 15.721a4.352 4.352 0 0 0 3.01-1.097l-1.466-1.14a2.752 2.752 0 0 1-4.094-1.44H5.577v1.17a4.53 4.53 0 0 0 4.052 2.507z" fill="#34A853"/><path d="M7.079 12.05a2.709 2.709 0 0 1 0-1.735v-1.17H5.577a4.505 4.505 0 0 0 0 4.075l1.502-1.17z" fill="#FBBC04"/><path d="M9.629 8.44a2.452 2.452 0 0 1 1.74.68l1.3-1.293a4.37 4.37 0 0 0-3.065-1.183 4.53 4.53 0 0 0-4.027 2.5l1.502 1.171a2.715 2.715 0 0 1 2.55-1.875z" fill="#EA4335"/></svg>
4375
4376                </li><li class="list-payment__item">
4377                  <svg class="icon icon--full-color" viewBox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" width="38" height="24" role="img" aria-labelledby="pi-maestro"><title id="pi-maestro">Maestro</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><circle fill="#EB001B" cx="15" cy="12" r="7"/><circle fill="#00A2E5" cx="23" cy="12" r="7"/><path fill="#7375CF" d="M22 12c0-2.4-1.2-4.5-3-5.7-1.8 1.3-3 3.4-3 5.7s1.2 4.5 3 5.7c1.8-1.2 3-3.3 3-5.7z"/></svg>
4378                </li><li class="list-payment__item">
4379                  <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-master"><title id="pi-master">Mastercard</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#1C1C1C" style="fill:#1C1C1C;fill:color(display-p3 0.1098 0.1098 0.1098);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#232323" style="fill:#232323;fill:color(display-p3 0.1373 0.1373 0.1373);fill-opacity:1;"/><path d="M14.6364 19.2727C18.8538 19.2727 22.2727 15.8538 22.2727 11.6364C22.2727 7.41892 18.8538 4 14.6364 4C10.4189 4 7 7.41892 7 11.6364C7 15.8538 10.4189 19.2727 14.6364 19.2727Z" fill="#EB001B" style="fill:#EB001B;fill:color(display-p3 0.9216 0.0000 0.1059);fill-opacity:1;"/><path d="M23.3637 19.2727C27.5811 19.2727 31 15.8538 31 11.6364C31 7.41892 27.5811 4 23.3637 4C19.1462 4 15.7273 7.41892 15.7273 11.6364C15.7273 15.8538 19.1462 19.2727 23.3637 19.2727Z" fill="#F79E1B" style="fill:#F79E1B;fill:color(display-p3 0.9686 0.6196 0.1059);fill-opacity:1;"/><path d="M22.2727 11.6362C22.2727 9.01797 20.9637 6.72706 19 5.41797C17.0364 6.83615 15.7273 9.12706 15.7273 11.6362C15.7273 14.1452 17.0364 16.5452 19 17.8543C20.9637 16.5452 22.2727 14.2543 22.2727 11.6362Z" fill="#FF5F00" style="fill:#FF5F00;fill:color(display-p3 1.0000 0.3725 0.0000);fill-opacity:1;"/></svg>
4380
4381                </li><li class="list-payment__item">
4382                  <svg class="icon icon--full-color" viewBox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" width="38" height="24" role="img" aria-labelledby="pi-paypal"><title id="pi-paypal">PayPal</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path fill="#003087" d="M23.9 8.3c.2-1 0-1.7-.6-2.3-.6-.7-1.7-1-3.1-1h-4.1c-.3 0-.5.2-.6.5L14 15.6c0 .2.1.4.3.4H17l.4-3.4 1.8-2.2 4.7-2.1z"/><path fill="#3086C8" d="M23.9 8.3l-.2.2c-.5 2.8-2.2 3.8-4.6 3.8H18c-.3 0-.5.2-.6.5l-.6 3.9-.2 1c0 .2.1.4.3.4H19c.3 0 .5-.2.5-.4v-.1l.4-2.4v-.1c0-.2.3-.4.5-.4h.3c2.1 0 3.7-.8 4.1-3.2.2-1 .1-1.8-.4-2.4-.1-.5-.3-.7-.5-.8z"/>
4382<path fill="#012169" d="M23.3 8.1c-.1-.1-.2-.1-.3-.1-.1 0-.2 0-.3-.1-.3-.1-.7-.1-1.1-.1h-3c-.1 0-.2 0-.2.1-.2.1-.3.2-.3.4l-.7 4.4v.1c0-.3.3-.5.6-.5h1.3c2.5 0 4.1-1 4.6-3.8v-.2c-.1-.1-.3-.2-.5-.2h-.1z"/></svg>
4383                </li><li class="list-payment__item">
4384                  <svg class="icon icon--full-color" xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-visa"><title id="pi-visa">Visa</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#142FBD" style="fill:#142FBD;fill:color(display-p3 0.0784 0.1843 0.7412);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#1532CB" style="fill:#1532CB;fill:color(display-p3 0.0824 0.1961 0.7961);fill-opacity:1;"/><path d="M29.5944 10.2167H29.2778C28.8556 11.2722 28.5389 11.8 28.2222 13.3833H30.2278C29.9111 11.8 29.9111 11.0611 29.5944 10.2167V10.2167ZM32.6556 16.4444H30.8611C30.7556 16.4444 30.7556 16.4444 30.65 16.3389L30.4389 15.3889L30.3333 15.1778H27.8C27.6944 15.1778 27.5889 15.1778 27.5889 15.3889L27.2722 16.3389C27.2722 16.4444 27.1667 16.4444 27.1667 16.4444H24.95L25.1611 15.9167L28.2222 8.73889C28.2222 8.21111 28.5389 8 29.0667 8H30.65C30.7556 8 30.8611 8 30.8611 8.21111L32.3389 15.0722C32.4444 15.4944 32.55 15.8111 32.55 16.2333C32.6556 16.3389 32.6556 16.3389 32.6556 16.4444V16.4444ZM18.5111 16.1278L18.9333 14.2278C19.0389 14.2278 19.1444 14.3333 19.1444 14.3333C19.8833 14.65 20.6222 14.8611 21.3611 14.7556C21.5722 14.7556 21.8889 14.65 22.1 14.5444C22.6278 14.3333 22.6278 13.8056 22.2056 13.3833C21.9944 13.1722 21.6778 13.0667 21.3611 12.8556C20.9389 12.6444 20.5167 12.4333 20.2 12.1167C18.9333 11.0611 19.3556 9.58333 20.0944 8.84444C20.7278 8.42222 21.0444 8 21.8889 8C23.1556 8 24.5278 8 25.1611 8.21111H25.2667C25.1611 8.84444 25.0556 9.37222 24.8444 10.0056C24.3167 9.79444 23.7889 9.58333 23.2611 9.58333C22.9444 9.58333 22.6278 9.58333 22.3111 9.68889C22.1 9.68889 21.9944 9.79444 21.8889 9.9C21.6778 10.1111 21.6778 10.4278 21.8889 10.6389L22.4167 11.0611C22.8389 11.2722 23.2611 11.4833 23.5778 11.6944C24.1056 12.0111 24.6333 12.5389 24.7389 13.1722C24.95 14.1222 24.6333 14.9667 23.7889 15.6C23.2611 16.0222 23.05 16.2333 22.3111 16.2333C20.8333 16.2333 19.6722 16.3389 18.7222 16.0222C18.6167 16.2333 18.6167 16.2333 18.5111 16.1278V16.1278ZM14.8167 16.4444C14.9222 15.7056 14.9222 15.7056 15.0278 15.3889C15.5556 13.0667 16.0833 10.6389 16.5056 8.31667C16.6111 8.10556 16.6111 8 16.8222 8H18.7222C18.5111 9.26667 18.3 10.2167 17.9833 11.3778C17.6667 12.9611 17.35 14.5444 16.9278 16.1278C16.9278 16.3389 16.8222 16.3389 16.6111 16.3389L14.8167 16.4444ZM5 8.21111C5 8.10556 5.21111 8 5.31667 8H8.90556C9.43333 8 9.85556 8.31667 9.96111 8.84444L10.9111 13.4889C10.9111 13.5944 10.9111 13.5944 11.0167 13.7C11.0167 13.5944 11.1222 13.5944 11.1222 13.5944L13.3389 8.21111C13.2333 8.10556 13.3389 8 13.4444 8H15.6611C15.6611 8.10556 15.6611 8.10556 15.5556 8.21111L12.2833 15.9167C12.1778 16.1278 12.1778 
438416.2333 12.0722 16.3389C11.9667 16.4444 11.7556 16.3389 11.5444 16.3389H9.96111C9.85556 16.3389 9.75 16.3389 9.75 16.1278L8.06111 9.58333C7.85 9.37222 7.53333 9.05556 7.11111 8.95C6.47778 8.63333 5.31667 8.42222 5.10556 8.42222L5 8.21111Z" fill="white" style="fill:white;fill-opacity:1;"/></svg>
4385
4386                </li></ul>
4387          </div></div>
4388    </div>
4389    <div class="footer__content-bottom-wrapper page-width footer__content-bottom-wrapper--center">
4390      <div class="footer__copyright caption">
4391        <small class="copyright__content"
4392          >&copy; 2026, <a href="/" title="">Wunschgutschein Österreich</a></small></div>
4393    </div>
4394  </div>
4395</footer>
4396
4397
4398</div>
4399<!-- END sections: footer-group -->
4400
4401    <ul hidden>
4402      <li id="a11y-refresh-page-message">Wenn du dich für eine Auswahl entscheidest, wird die Seite komplett aktualisiert.</li>
4403      <li id="a11y-new-window-message">Wird in einem neuen Fenster geöffnet.</li>
4404    </ul>
4405
4406    
4406<script>
4407      window.shopUrl = 'https://shop.wunschgutschein.at';
4408      window.routes = {
4409        cart_add_url: '/cart/add',
4410        cart_change_url: '/cart/change',
4411        cart_update_url: '/cart/update',
4412        cart_url: '/cart',
4413        predictive_search_url: '/search/suggest',
4414      };
4415
4416      window.cartStrings = {
4417        error: `Beim Aktualisieren deines Warenkorbs ist ein Fehler aufgetreten. Bitte versuche es erneut.`,
4418        quantityError: `Du kannst deinem Warenkorb nur [quantity] Stück dieses Artikels hinzufügen.`,
4419      };
4420
4421      window.variantStrings = {
4422        addToCart: `In den Warenkorb legen`,
4423        soldOut: `Ausverkauft`,
4424        unavailable: `Nicht verfügbar`,
4425        unavailable_with_option: `[value] – nicht verfügbar`,
4426      };
4427
4428      window.quickOrderListStrings = {
4429        itemsAdded: `[quantity] Artikel hinzugefügt`,
4430        itemAdded: `[quantity] Artikel hinzugefügt`,
4431        itemsRemoved: `[quantity] Artikel entfernt`,
4432        itemRemoved: `[quantity] Artikel entfernt`,
4433        viewCart: `Warenkorb ansehen`,
4434        each: `[money]/Stück`,
4435      };
4436
4437      window.accessibilityStrings = {
4438        imageAvailable: `Bild [index] ist nun in der Galerieansicht verfügbar`,
4439        shareSuccess: `Link in die Zwischenablage kopiert`,
4440        pauseSlideshow: `Slideshow pausieren`,
4441        playSlideshow: `Slideshow abspielen`,
4442        recipientFormExpanded: `Formular für den Empfänger des Geschenkgutscheins erweitert`,
4443        recipientFormCollapsed: `Formular für den Empfänger des Geschenkgutscheins minimiert`,
4444        countrySelectorSearchCount: `[count] Länder/Regionen gefunden`,
4445      };
4446    </script>
4446<script src="//shop.wunschgutschein.at/cdn/shop/t/38/assets/predictive-search.js?v=162273246065392412141764247604" defer="defer"></script>
4446
4447<style>.pplr_add_to_cart{display:none !important;}</style><div id="pplr-6558715412685" data-id="6558715412685" class="product-personalizer" data-handle="motiv-wunscherfueller"></div>
4448<script type='text/javascript'>
4449  
4450  if (typeof product_personalizer == 'undefined') {
4451  var product_personalizer = {"cstmfy_req":"1"};
4452  }
4453  if (typeof pplr_product == 'undefined') {
4454  var pplr_product = {"id":6558715412685,"title":"Dein Wunscherfüller - Schmetterling","handle":"motiv-wunscherfueller","description":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cdiv style=\"background: #f2f2f2; padding: 15px 25px;\"\u003e✓ \u003cstrong\u003eKostenloser Postversand\u003c\/strong\u003e*\u003cbr\u003e ✓ \u003cstrong\u003eKostenloser Briefumschlag\u003c\/strong\u003e\u003cbr\u003e ✓ Individualisierungsmöglichkeiten\u003c\/div\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003eWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei \u003cstrong\u003eüber 100 Online-Shops\u003c\/strong\u003e einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003eGültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.\u003c\/em\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003e*\u003cem data-mce-fragment=\"1\"\u003eAb einem Bestellwert von 40€. \u003c\/em\u003eBei Standardversand innerhalb Deutschlands, Österreich und Schweiz\u003c\/em\u003e\u003c\/p\u003e","published_at":"2021-03-22T12:12:14+01:00","created_at":"2021-03-22T12:11:02+01:00","vendor":"Wunschgutschein-Austria","type":"Gutscheine","tags":["Allgemein","motif_free","Post"],"price":1500,"price_min":1500,"price_max":15000,"available":true,"price_varies":true,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":39353929793741,"title":"15 €","option1":"15 €","option2":null,"option3":null,"sku":"20001311015","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 15 €","public_title":"15 €","options":["15 €"],"price":1500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929662669,"title":"25 €","option1":"25 €","option2":null,"option3":null,"sku":"20001311025","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 25 €","public_title":"25 €","options":["25 €"],"price":2500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929695437,"title":"50 €","option1":"50 €","option2":null,"option3":null,"sku":"20001311050","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 50 €","public_title":"50 €","options":["50 €"],"price":5000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929728205,"title":"100 €","option1":"100 €","option2":null,"option3":null,"sku":"20001311100","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 100 €","public_title":"100 €","options":["100 €"],"price":10000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929760973,"title":"150 €","option1":"150 €","option2":null,"option3":null,"sku":"20001311150","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 150 €","public_title":"150 €","options":["150 €"],"price":15000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377","\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820","\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376","\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813"],"featured_image":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377","options":["Wertstufe"],"media":[{"alt":null,"id":64412941582604,"position":1,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377","width":1358},{"alt":null,"id":36848293544204,"position":2,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820","width":1358},{"alt":null,"id":36848293576972,"position":3,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/products\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376","width":1358},{"alt":null,"id":38396991275276,"position":4,"preview_image":{"aspect_ratio":0.697,"height":1949,"width":1358,"src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813"},"aspect_ratio":0.697,"height":1949,"media_type":"image","src":"\/\/shop.wunschgutschein.at\/cdn\/shop\/files\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813","width":1358}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cdiv style=\"background: #f2f2f2; padding: 15px 25px;\"\u003e✓ \u003cstrong\u003eKostenloser Postversand\u003c\/strong\u003e*\u003cbr\u003e ✓ \u003cstrong\u003eKostenloser Briefumschlag\u003c\/strong\u003e\u003cbr\u003e ✓ Individualisierungsmöglichkeiten\u003c\/div\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003eWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei \u003cstrong\u003eüber 100 Online-Shops\u003c\/strong\u003e einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003eGültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.\u003c\/em\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\" class=\"p1\"\u003e\u003cem style=\"font-size: 10px; line-height: 11px;\"\u003e*\u003cem data-mce-fragment=\"1\"\u003eAb einem Bestellwert von 40€. \u003c\/em\u003eBei Standardversand innerhalb Deutschlands, Österreich und Schweiz\u003c\/em\u003e\u003c\/p\u003e"};
4455  }
4456  if (typeof pplr_shop_currency == 'undefined') {
4457  var pplr_shop_currency = "EUR";
4458  }
4459  if (typeof pplr_enabled_currencies_size == 'undefined') {
4460    var pplr_enabled_currencies_size = 1;
4461  }
4462  if (typeof pplr_money_formate == 'undefined') {
4463  var pplr_money_formate = "{{amount_with_comma_separator}} €";
4464  }
4465   if (typeof pplr_script_loaded == "undefined") {
4466     var pplr_script_loaded = true;
4467     var loadScript_p = function(url, callback) {
4468      var script = document.createElement("script");
4469      script.type = "text/javascript";
4470      if (script.readyState) {
4471        script.onreadystatechange = function() {
4472          if (script.readyState == "loaded" ||
4473              script.readyState == "complete") {
4474            script.onreadystatechange = null;
4475            callback();
4476          }
4477        };
4478      } else {
4479        script.onload = function() {
4480          callback();
4481        };
4482      }
4483      script.src = url;
4484      document.getElementsByTagName("head")[0].appendChild(script);
4485    };
4486  if(product_personalizer['cstmfy_req']>0){
4487     loadScript_p('//cdn-zeptoapps.com/product-personalizer/canvas-script.php?shop=wunschgutschein-austria.myshopify.com&prid=6558715412685&kkr=tomato', function() {})
4488   }
4489 }
4490</script>
4490
4491
4492    
4493    <!-- PickyStory snippet "main_widget_script", do not modify. Safe to remove after the app is uninstalled -->
4494    
4495    <!-- PickyStory end snippet "main_widget_script" -->
4496    
4497      <modal-dialog id="PopupModal-SwitchShop" class="switch-popup-modal">
4498    <div role="dialog" aria-label="Switch shop" aria-modal="true" class="switch-popup-modal__content" tabindex="-1">
4499        <button id="ModalClose-SwitchShop" type="button" class="switch-popup-modal__toggle" aria-label="Schließen"><svg
4500  xmlns="http://www.w3.org/2000/svg"
4501  aria-hidden="true"
4502  focusable="false"
4503  class="icon icon-close"
4504  fill="none"
4505  viewBox="0 0 18 17"
4506>
4507  <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
4508</svg>
4509</button>
4510        <div class="switch-popup-modal__content-info">
4511        <div class="switch-logo-container"><span class="h2">Wunschgutschein Österreich</span></div>
4512        <h1 class="h2">Bitte beachten: Du wechselst in den Shop für Firmen</h1>
4513        <p class="switch-content"> Die Artikel aus diesem Warenkorb bleiben hier erhalten und werden nicht in den anderen Shop übertragen. Möchtest du den Shop wechseln? </p>
4514        <switch-shop-btn>
4515            <button class="yes switchShop-btn">Ja, zum Shop für Firmen</button>
4516            <button class="no switchShop-btn">Abbrechen</button>  
4517        </switch-shop-btn>
4518        </div>
4519    </div>
4520</modal-dialog>
4521<script>
4522    window.addEventListener("click", (event) => {
4523        const originElement = event.target.closest(`a`);
4524        const b2cUrl = 'b2b.wunschgutschein.de';
4525        const windowUrl = "https://shop.wunschgutschein.at";
4526        if (originElement) {
4527          sessionStorage.setItem('switchTargetUrl', originElement.href)
4528          if ( originElement.href.includes(windowUrl)) {
4529            return
4530          } else if (originElement.href.includes(b2cUrl)){
4531            event.preventDefault();
4532            checkIfCartEmpty().then(isCartEmpty => {
4533              if (!isCartEmpty) {
4534                document.querySelector('.switch-content').innerHTML = "Die Artikel aus diesem Warenkorb bleiben hier erhalten und werden nicht in den anderen Shop übertragen. Möchtest du den Shop wechseln?";
4535                document.querySelector('#PopupModal-SwitchShop').show();
4536              } else {
4537                window.location.href = originElement.href;
4538              }
4539            });
4540          } else {
4541            return
4542          }
4543        } 
4544    });
4545    async function checkIfCartEmpty() {
4546      try {
4547        const response = await fetch(`${window.location.origin}/cart.js`);
4548        const res = await response.json();
4549        return !res.items.length;
4550      } catch (error) {
4551        console.error('Error fetching data:', error);
4552      }
4553    }
4554    class switchShopBtn extends HTMLElement {
4555      constructor() {
4556        super();
4557        const buttons = this.querySelectorAll('.switchShop-btn');
4558
4559        if (!buttons) return;
4560        buttons.forEach((button) => {
4561            button.addEventListener('click', () => {
4562            if (button.classList.contains('yes')){
4563              window.open(sessionStorage.getItem('switchTargetUrl'), '_self');
4564            } else {
4565              document.querySelector('#PopupModal-SwitchShop').hide();
4566            }
4567          });  
4568        })
4569      }
4570    }
4571    customElements.define('switch-shop-btn', switchShopBtn);
4572</script>
4572
4573  <style>
4574    /* switch-shop popup */
4575
4576    .switch-popup-modal__content {
4577      max-width: 850px;
4578    }
4579
4580    .switch-logo-container {
4581      width: 180px;
4582      margin-bottom: 30px;
4583    }
4584    .switch-popup-modal {
4585      box-sizing: border-box;
4586      opacity: 0;
4587      position: fixed;
4588      visibility: hidden;
4589      z-index: -1;
4590      margin: 0 auto;
4591      top: 0;
4592      left: 0;
4593      overflow: auto;
4594      width: 100%;
4595      background: rgba(var(--color-foreground), 0.2);
4596      height: 100%;
4597    }
4598
4599    .switch-popup-modal[open] {
4600      opacity: 1;
4601      visibility: visible;
4602      z-index: 101;
4603    }
4604
4605    .switch-popup-modal__content {
4606      border-radius: var(--popup-corner-radius);
4607      background-color: rgb(var(--color-background));
4608      overflow: auto;
4609      height: fit-content;
4610      text-align: center;
4611      margin: 0 auto;
4612      left: 50%;
4613      transform: translateX(-50%);
4614      margin-top: 5rem;
4615      width: 92%;
4616      position: absolute;
4617      top: 0;
4618      padding: 0 1.5rem 0 3rem;
4619      border-color: rgba(var(--color-foreground), var(--popup-border-opacity));
4620      border-style: solid;
4621      border-width: var(--popup-border-width);
4622      box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
4623    }
4624
4625    .switch-popup-modal__content.focused {
4626      box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
4627      0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3),
4628      var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
4629    }
4630
4631    .switch-popup-modal__content:focus-visible{
4632      box-shadow: 0 0 0 0.3rem rgb(var(--color-background)),
4633      0 0 0.5rem 0.4rem rgba(var(--color-foreground), 0.3),
4634      var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
4635    }
4636
4637    @media screen and (min-width: 750px) {
4638      .switch-popup-modal__content {
4639        padding-right: 1.5rem;
4640        margin-top: 10rem;
4641        width: 70%;
4642        padding: 0 3rem;
4643      }
4644
4645      .switch-media-modal__dialog .global-media-settings--no-shadow {
4646        overflow: visible !important;
4647      }
4648    }
4649
4650    .switch-popup-modal__content img {
4651      max-width: 180px;
4652      object-fit: cover;
4653      margin-bottom: 30px;
4654    }
4655
4656    @media screen and (max-width: 749px) {
4657      .switch-popup-modal__content table {
4658        display: block;
4659        max-width: fit-content;
4660        overflow-x: auto;
4661        white-space: nowrap;
4662        margin: 0;
4663      }
4664
4665      .switch-media-modal__dialog .global-media-settings,
4666      .switch-media-modal__dialog .global-media-settings video,
4667      .switch-media-modal__dialog .global-media-settings model-viewer,
4668      .switch-media-modal__dialog .global-media-settings iframe,
4669      .switch-media-modal__dialog .global-media-settings img {
4670        border: none;
4671        border-radius: 0;
4672      }
4673    }
4674
4675    .switch-popup-modal__opener {
4676      display: inline-block;
4677    }
4678
4679    .switch-popup-modal__button {
4680      font-size: 1.6rem;
4681      padding-right: 1.3rem;
4682      padding-left: 0;
4683      height: 4.4rem;
4684      text-underline-offset: 0.3rem;
4685      text-decoration-thickness: 0.1rem;
4686      transition: text-decoration-thickness var(--duration-short) ease;
4687    }
4688
4689    .switch-popup-modal__button:hover {
4690      text-decoration-thickness: 0.2rem;
4691    }
4692
4693    .switch-popup-modal__content-info {
4694      padding-bottom: 4rem;
4695    }
4696
4697    .switch-popup-modal__content-info > p {
4698      margin: 20px auto;
4699      max-width: 642px;
4700    }
4701
4702    .switch-popup-modal__content-info > * {
4703      height: auto;
4704      margin: 0 auto;
4705      max-width: 100%;
4706      width: 100%;
4707    }
4708
4709    @media screen and (max-width: 749px) {
4710      .switch-popup-modal__content-info > * {
4711        max-height: 100%;
4712      }
4713    }
4714
4715    .switch-popup-modal__toggle {
4716      background-color: rgb(var(--color-background));
4717      border: 0.1rem solid rgba(var(--color-foreground), 0.1);
4718      border-radius: 50%;
4719      color: rgba(var(--color-foreground), 0.55);
4720      display: flex;
4721      align-items: center;
4722      justify-content: center;
4723      cursor: pointer;
4724      position: sticky;
4725      padding: 1.2rem;
4726      z-index: 2;
4727      top: 1.5rem;
4728      width: 4rem;
4729      margin: 0 0 0 auto;
4730    }
4731
4732    .switch-popup-modal__toggle:hover {
4733      color: rgba(var(--color-foreground), 0.75);
4734    }
4735
4736    .switch-popup-modal__toggle .icon {
4737      height: auto;
4738      margin: 0;
4739      width: 2.2rem;
4740    }
4741
4742    .switchShop-btn {
4743      font-size: 14px;
4744      text-decoration: none;
4745      text-transform: uppercase;
4746      border: 1px solid #cc071f;
4747      padding: 8px 15px;
4748      margin-right: 10px;
4749      margin-bottom: 10px;
4750      display: inline-block;
4751      color: #cc071f;
4752      background-color: transparent;
4753      cursor: pointer;
4754    }
4755
4756  </style>
4757    
4758    <!-- **BEGIN** Hextom FSB Integration // Main Include - DO NOT MODIFY -->
4759    <!-- **BEGIN** Hextom FSB Integration // Main - DO NOT MODIFY -->
4760<script type="application/javascript">
4761    window.hextom_fsb_meta = {
4762        p1: [
4763            
4764                
4765                    "niemegllA"
4766                    ,
4767                
4768                    "eerf_fitom"
4769                    ,
4770                
4771                    "tsoP"
4772                    
4773                
4774            
4775        ],
4776        p2: {
4777            
4778        },
4779        p3: [
4780            
4781                
4782                    {
4783                      "v1": "true"
4784                    },
4785                
4786                    {
4787                      "v1": "true"
4788                    },
4789                
4790                    {
4791                      "v1": "true"
4792                    },
4793                
4794                    {
4795                      "v1": "true"
4796                    },
4797                
4798                    {
4799                      "v1": "true"
4800                    }
4801                
4802            
4803        ]
4804    };
4805</script>
4805
4806<!-- **END** Hextom FSB Integration // Main - DO NOT MODIFY -->
4807    <!-- **END** Hextom FSB Integration // Main Include - DO NOT MODIFY -->
4808    <!-- Start of wunschgutscheinhelp Zendesk Widget script -->
4809<script id="ze-snippet" src="https://static.zdassets.com/ekr/snippet.js?key=688c5608-15bb-4399-87bc-e38392786dc1"> </script>
4809
4810    <!-- End of wunschgutscheinhelp Zendesk Widget script -->
4811  
4811<script src="https://cdn.shopify.com/s/files/1/0668/6516/8692/files/bfree.js?v=1750857636"></script>
vendor: 1 bytes, line 4811
4811
4812<script>
4813  document.addEventListener("DOMContentLoaded", function () {
4814    if (typeof BFreeTTS !== "undefined") {
4815      BFreeTTS.init({ license: "46T2-APJF-NCMM-XQE1" });
4816    } else {
4817      console.warn("BFreeTTS konnte nicht geladen werden.");
4818    }
4819  });
4820</script>
4820
4821
4822  <div id="shopify-block-AcVNFMzZ6c2NvTGpQT__15079184273603081885" class="shopify-block shopify-app-block">
4823
4824
4825
4826
4827
4828
4829<script>
4830 
4831    window.essentialOrderValueBoosterConfigs = [{"id":"cl56j0b9s1508361q0853r1bwn5","name":"Mindestbestellwert","title":"Kostenloser Versand schon ab {order-value} Bestellwert!","progressTitle":"Nur noch {order-value-progress} bis zum kostenlosen Versand!","reachedTitle":"Glückwunsch! Für diese Bestellung ist der Versand kostenlos!","type":"cart-page","goal":"40","moneyFormat":"€{{amount_with_comma_separator}}","placement":"custom","published":true,"showOnProducts":[],"showOnCollections":[],"selectedProducts":[{"id":"gid:\/\/shopify\/Product\/6558715412685","image":"https:\/\/cdn.shopify.com\/s\/files\/1\/0556\/1168\/7117\/products\/result_7b39f98d-eb0d-41d4-964a-49dcf4d1b547.jpg?v=1690192933","price":"15.00","title":"Dein Wunscherfüller - Schmetterling","handle":"motiv-wunscherfueller","variants":[{"id":"gid:\/\/shopify\/ProductVariant\/39353929793741"}],"compareAtPrice":null}],"CTAType":"add-to-cart","CTALink":"","closeButton":false,"buttonText":"unseren Bestseller hinzufügen","updatedAt":"2023-07-25T07:41:28.487Z","style":{"font":"","titleSize":"14","borderSize":"1","titleColor":"#000000","borderColor":"#ebebeb","gradientEnd":"#FFFFFF","singleColor":"#f2f2f2","borderRadius":"0","buttonRadius":"4","gradientTurn":"90","gradientStart":"#DDDDDD","backgroundType":"singleBackground","buttonTextSize":"14","buttonTextColor":"#000000","insideTopSpacing":"16","productPriceSize":"14","productTitleSize":"14","buttonBorderColor":"#000000","outsideTopSpacing":"20","productPriceColor":"#cc071e","productTitleColor":"#cc071e","insideBottomSpacing":"16","outsideBottomSpacing":"20","progressBorderRadius":"4","progressBackgroundColor":"#ffffff","progressBarBackgroun
4831dColor":"#cc071e"},"showInCountries":[],"locationType":"","currency":"EUR","excludeProducts":[],"excludeProductTags":[],"upsellType":"products"},];
4832    window.essentialOrderValueBoosterProductsData = ["{\"id\": 6558715412685,\"title\": \"Dein Wunscherfüller - Schmetterling\",\"handle\": \"motiv-wunscherfueller\",\"price\": 1500,\"featured_image\": \"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377\",\"variants\": [{\"id\":39353929793741,\"title\":\"15 €\",\"option1\":\"15 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311015\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 15 €\",\"public_title\":\"15 €\",\"options\":[\"15 €\"],\"price\":1500,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}},{\"id\":39353929662669,\"title\":\"25 €\",\"option1\":\"25 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311025\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 25 €\",\"public_title\":\"25 €\",\"options\":[\"25 €\"],\"price\":2500,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}},{\"id\":39353929695437,\"title\":\"50 €\",\"option1\":\"50 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311050\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 50 €\",\"public_title\":\"50 €\",\"options\":[\"50 €\"],\"price\":5000,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}},{\"id\":39353929728205,\"title\":\"100 €\",\"option1\":\"100 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311100\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 100 €\",\"public_title\":\"100 €\",\"options\":[\"100 €\"],\"price\":10000,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}},{\"id\":39353929760973,\"title\":\"150 €\",\"option1\":\"150 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311150\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 150 €\",\"public_title\":\"150 €\",\"options\":[\"150 €\"],\"price\":15000,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}}]}"];
4833  
4834
4835  window.essentialOrderValueBoosterPageTemplate = "product"
4836  window.essentialOrderValueBoosterMeta = {
4837    productData: "{\"id\":6558715412685,\"title\":\"Dein Wunscherfüller - Schmetterling\",\"handle\":\"motiv-wunscherfueller\",\"description\":\"\\u003cmeta charset=\\\"utf-8\\\"\\u003e\\n\\u003cdiv style=\\\"background: #f2f2f2; padding: 15px 25px;\\\"\\u003e✓ \\u003cstrong\\u003eKostenloser Postversand\\u003c\\\/strong\\u003e*\\u003cbr\\u003e ✓ \\u003cstrong\\u003eKostenloser Briefumschlag\\u003c\\\/strong\\u003e\\u003cbr\\u003e ✓ Individualisierungsmöglichkeiten\\u003c\\\/div\\u003e\\n\\u003cp data-mce-fragment=\\\"1\\\" class=\\\"p1\\\"\\u003eWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei \\u003cstrong\\u003eüber 100 Online-Shops\\u003c\\\/strong\\u003e einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.\\u003cbr\\u003e\\u003c\\\/p\\u003e\\n\\u003cp data-mce-fragment=\\\"1\\\" class=\\\"p1\\\"\\u003e\\u003cem style=\\\"font-size: 10px; line-height: 11px;\\\"\\u003eGültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.\\u003c\\\/em\\u003e\\u003cbr\\u003e\\u003c\\\/p\\u003e\\n\\u003cp data-mce-fragment=\\\"1\\\" class=\\\"p1\\\"\\u003e\\u003cem style=\\\"font-size: 10px; line-height: 11px;\\\"\\u003e*\\u003cem data-mce-fragment=\\\"1\\\"\\u003eAb einem Bestellwert von 40€. \\u003c\\\/em\\u003eBei Standardversand innerhalb Deutschlands, Österreich und Schweiz\\u003c\\\/em\\u003e\\u003c\\\/p\\u003e\",\"published_at\":\"2021-03-22T12:12:14+01:00\",\"created_at\":\"2021-03-22T12:11:02+01:00\",\"vendor\":\"Wunschgutschein-Austria\",\"type\":\"Gutscheine\",\"tags\":[\"Allgemein\",\"motif_free\",\"Post\"],\"price\":1500,\"price_min\":1500,\"price_max\":15000,\"available\":true,\"price_varies\":true,\"compare_at_price\":null,\"compare_at_price_min\":0,\"compare_at_price_max\":0,\"compare_at_price_varies\":false,\"variants\":[{\"id\":39353929793741,\"title\":\"15 €\",\"option1\":\"15 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311015\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 15 €\",\"public_title\":\"15 €\",\"options\":[\"15 €\"],\"price\":1500,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}}
4837,{\"id\":39353929662669,\"title\":\"25 €\",\"option1\":\"25 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311025\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 25 €\",\"public_title\":\"25 €\",\"options\":[\"25 €\"],\"price\":2500,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}},{\"id\":39353929695437,\"title\":\"50 €\",\"option1\":\"50 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311050\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 50 €\",\"public_title\":\"50 €\",\"options\":[\"50 €\"],\"price\":5000,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}},{\"id\":39353929728205,\"title\":\"100 €\",\"option1\":\"100 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311100\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 100 €\",\"public_title\":\"100 €\",\"options\":[\"100 €\"],\"price\":10000,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}},{\"id\":39353929760973,\"title\":\"150 €\",\"option1\":\"150 €\",\"option2\":null,\"option3\":null,\"sku\":\"20001311150\",\"requires_shipping\":true,\"taxable\":false,\"featured_image\":null,\"available\":true,\"name\":\"Dein Wunscherfüller - Schmetterling - 150 €\",\"public_title\":\"150 €\",\"options\":[\"150 €\"],\"price\":15000,\"weight\":15,\"compare_at_price\":null,\"inventory_management\":null,\"barcode\":null,\"requires_selling_plan\":false,\"selling_plan_allocations\":[],\"quantity_rule\":{\"min\":1,\"max\":null,\"increment\":1}}],\"images\":[\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377\",\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/products\\\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820\",\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/products\\\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376\",\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813\"],\"featured_image\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377\",\"options\":[\"Wertstufe\"],\"media\":[{\"alt\":null,\"id\":64412941582604,\"position\":1,\"preview_image\":{\"aspect_ratio\":0.697,\"height\":1949,\"width\":1358,\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377\"},\"aspect_ratio\":0.697,\"height\":1949,\"media_type\":\"image\",\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377\",\"width\":1358},{\"alt\":null,\"id\":36848293544204,\"position\":2,\"preview_image\":{\"aspect_ratio\":0.697,\"height\":1949,\"width\":1358,\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/products\\\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820\"},\"aspect_ratio\":0.697,\"height\":1949,\"media_type\":\"image\",\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/products\\\/Motiv_3db021fb-9b7b-44bf-90fa-74e45ce7a00b.jpg?v=1771249820\",\"width\":1358},{\"alt\":null,\"id\":36848293576972,\"position\":3,\"preview_image\":{\"aspect_ratio\":0.697,\"height\":1949,\"width\":1358,\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/products\\\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376\"}
4837,\"aspect_ratio\":0.697,\"height\":1949,\"media_type\":\"image\",\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/products\\\/result_522e3101-1b98-40d6-8672-398f3dab8c74.jpg?v=1772795376\",\"width\":1358},{\"alt\":null,\"id\":38396991275276,\"position\":4,\"preview_image\":{\"aspect_ratio\":0.697,\"height\":1949,\"width\":1358,\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813\"},\"aspect_ratio\":0.697,\"height\":1949,\"media_type\":\"image\",\"src\":\"\\\/\\\/shop.wunschgutschein.at\\\/cdn\\\/shop\\\/files\\\/Motiv_PDF_a9665bbb-54cb-4744-a4ef-5e4a7a73e55c.jpg?v=1771249813\",\"width\":1358}],\"requires_selling_plan\":false,\"selling_plan_groups\":[],\"content\":\"\\u003cmeta charset=\\\"utf-8\\\"\\u003e\\n\\u003cdiv style=\\\"background: #f2f2f2; padding: 15px 25px;\\\"\\u003e✓ \\u003cstrong\\u003eKostenloser Postversand\\u003c\\\/strong\\u003e*\\u003cbr\\u003e ✓ \\u003cstrong\\u003eKostenloser Briefumschlag\\u003c\\\/strong\\u003e\\u003cbr\\u003e ✓ Individualisierungsmöglichkeiten\\u003c\\\/div\\u003e\\n\\u003cp data-mce-fragment=\\\"1\\\" class=\\\"p1\\\"\\u003eWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei \\u003cstrong\\u003eüber 100 Online-Shops\\u003c\\\/strong\\u003e einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.\\u003cbr\\u003e\\u003c\\\/p\\u003e\\n\\u003cp data-mce-fragment=\\\"1\\\" class=\\\"p1\\\"\\u003e\\u003cem style=\\\"font-size: 10px; line-height: 11px;\\\"\\u003eGültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.\\u003c\\\/em\\u003e\\u003cbr\\u003e\\u003c\\\/p\\u003e\\n\\u003cp data-mce-fragment=\\\"1\\\" class=\\\"p1\\\"\\u003e\\u003cem style=\\\"font-size: 10px; line-height: 11px;\\\"\\u003e*\\u003cem data-mce-fragment=\\\"1\\\"\\u003eAb einem Bestellwert von 40€. \\u003c\\\/em\\u003eBei Standardversand innerhalb Deutschlands, Österreich und Schweiz\\u003c\\\/em\\u003e\\u003c\\\/p\\u003e\"}",
4838    cartItems: [],
4839    cartProducts: [],
4840    mainCurrency: "EUR",
4841    productCollections: [{"id":263538409677,"handle":"all","updated_at":"2026-09-27T14:55:43+02:00","published_at":"2021-04-09T14:57:57+02:00","sort_order":"manual","template_suffix":"","published_scope":"global","title":"Alle Gutscheinmotive","body_html":""},{"id":478446747916,"handle":"allgemein","updated_at":"2026-09-27T14:55:45+02:00","published_at":"2022-07-05T15:17:28+02:00","sort_order":"manual","template_suffix":"","published_scope":"global","title":"Allgemeine Gutscheinmotive - für jeden Anlass","body_html":""},{"id":478446878988,"handle":"geburt","updated_at":"2026-09-27T14:55:50+02:00","published_at":"2022-07-05T15:18:12+02:00","sort_order":"manual","template_suffix":"","published_scope":"global","title":"Gutscheine zur Geburt","body_html":""},{"id":262475186381,"handle":"top-motive","updated_at":"2026-09-27T13:11:04+02:00","published_at":"2021-03-25T17:07:14+01:00","sort_order":"manual","template_suffix":"","published_scope":"global","title":"Top-Motive","body_html":""}],
4842  };
4843
4844  window.essentialOrderValueBoosterTranslations = {
4845    previousSlide: "Vorherige Folie",
4846    nextSlide: "Nächste Folie",
4847    regularPrice: "Regulärer Preis",
4848    salePrice: "Angebotspreis",
4849    slide: "Folie"
4850  };
4851</script>
4851
4852
4853
4854  <style type="text/css">
4855    .visually-hidden{position:absolute!important;overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);word-wrap:normal!important}.essential_product_slider_glide{position:relative;direction:ltr;width:100%;box-sizing:border-box;opacity:0;transition:opacity .3s}.essential_product_slider_glide.initialized{opacity:1}.essential_product_slider_glide *{box-sizing:inherit}.essential_product_slider_glide__track{overflow:hidden}.essential_product_slider_glide__slides{position:relative;width:100%;margin:0;list-style:none;backface-visibility:hidden;transform-style:preserve-3d;touch-action:pan-Y;overflow:hidden;padding:0;white-space:nowrap;display:flex;flex-wrap:nowrap;will-change:transform}.essential_product_slider_glide__slides--dragging{user-select:none}.essential_product_slider_glide__slide{width:100%;height:100%;padding:0 2px;flex-shrink:0;white-space:normal;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.essential_product_slider_glide__slide a{user-select:none;-webkit-user-drag:none;-moz-user-select:none;-ms-user-select:none}.essential_product_slider_glide__arrows,.essential_product_slider_glide__bullets{-webkit-touch-callout:none;user-select:none}.essential_product_slider_glide--rtl{direction:rtl}.essential_product_slider_glide{padding:0 20px}.essential_product_slider_glide__arrows{height:0}.essential_product_slider_glide__arrow--left,.essential_product_slider_glide__arrow--right{position:absolute;width:20px;height:20px;outline:0;display:flex;cursor:pointer;padding:0;background-color:transparent;top:0;bottom:0;margin:auto}.essential_product_slider_glide__arrow--left{left:-5px;align-items:center;border:0;border-radius:0}.essential_product_slider_glide__arrow--right{right:-5px;align-items:center;border:0;border-radius:0}.essential_product_slider_glide__arrow--right svg{transform:rotate(180deg)}
4856  </style>
4857  
4857<script>
4858    function prevArrowButtonIconSVG(_="#BBC0C4"){let $=document.createElementNS("http://www.w3.org/2000/svg","svg"),t=document.createElementNS("http://www.w3.org/2000/svg","path");return $.setAttribute("width",20),$.setAttribute("height",20),$.setAttribute("fill","none"),$.setAttribute("aria-hidden","true"),t.setAttribute("d","M12 16C11.744 16 11.488 15.902 11.293 15.707L6.29301 10.707C5.90201 10.316 5.90201 9.68401 6.29301 9.29301L11.293 4.29301C11.684 3.90201 12.316 3.90201 12.707 4.29301C13.098 4.68401 13.098 5.31601 12.707 5.70701L8.41401 10L12.707 14.293C13.098 14.684 13.098 15.316 12.707 15.707C12.512 15.902 12.256 16 12 16Z"),t.setAttribute("fill",_),$.append(t),$}
4859  </script>
4859
4860  
4860<script src="https://cdn.shopify.com/extensions/01a0e324-d4fe-7ea8-942e-1256f34b87e4/order-value-booster-355/assets/glide.min.js" defer></script>
4860
4861
4862
4863<script src="https://cdn.shopify.com/extensions/01a0e324-d4fe-7ea8-942e-1256f34b87e4/order-value-booster-355/assets/free_shipping_bar_essential_apps.min.js" defer crossorigin="anonymous"></script>
4863
4864
4865<script>
4866  
4867</script>
4867
4868
4869
4870
4871
4872</div><div id="shopify-block-AeWtjZE1LT2Irb3pva__7079518687644006178" class="shopify-block shopify-app-block">
4872<script>
4873  (function () {
4874    const cartAttributes = {};
4875
4876    // Helper function to retrieve the UTM from Url
4877    function getUTMFromUrl() {
4878      const url_string = window.location.href;
4879      const url = new URL(url_string);
4880
4881      const utm_id = url.searchParams.get("utm_id");
4882      const utm_source = url.searchParams.get("utm_source");
4883      const utm_medium = url.searchParams.get("utm_medium");
4884      const utm_campaign = url.searchParams.get("utm_campaign");
4885      const utm_term = url.searchParams.get("utm_term");
4886      const ref = url.searchParams.get("ref");
4887
4888      if (!utm_id && !utm_source && !utm_medium && !utm_campaign && !ref) {
4889        return null;
4890      }
4891
4892      let utmParameters = {};
4893      
4894        if (utm_id) {
4895          utmParameters.utm_id = utm_id;
4896        }
4897        if (utm_source) {
4898          utmParameters.utm_source = utm_source;
4899        }
4900        if (utm_medium) {
4901          utmParameters.utm_medium = utm_medium;
4902        }
4903        if (utm_campaign) {
4904          utmParameters.utm_campaign = utm_campaign;
4905        }
4906        if (utm_term) {
4907          utmParameters.utm_term = utm_term;
4908        }
4909
4910      return Object.keys(utmParameters).length === 0
4911        ? null
4912        : utmParameters;
4913    }
4914
4915    // Helper function to retrieve the UTM from Cookie
4916    function getUTMAttributes() {
4917      const urlUtmParams = getUTMFromUrl();
4918
4919      if (urlUtmParams) {
4920          return urlUtmParams;
4921      }
4922
4923      // No longer reading from deprecated Shopify cookies
4924      return undefined;
4925    }
4926
4927    function saveUtmParameters() {
4928      const utmParams = getUTMAttributes();
4929      if (utmParams) {
4930        const cartHasUtmAttributes = Object.keys(cartAttributes).find(attributeKey => attributeKey.startsWith("utm_") || attributeKey === "ref");
4931        if (cartHasUtmAttributes) {
4932          // Don't call API if it already contains our UTM parameters
4933          return;
4934        }
4935
4936        // Handle both Shopify.routes.root and routes.root_url for better compatibility
4937        var rootUrl = (window.Shopify && window.Shopify.routes && window.Shopify.routes.root) 
4938          || (window.routes && window.routes.root_url) 
4939          || '/';
4940        
4941        var updateCart = fetch(rootUrl + 'cart/update.js',
4942        {
4943          headers: {
4944            'Content-Type': 'application/json',
4945          },
4946          method: "POST",
4947          body: JSON.stringify({
4948            attributes: {
4949              ...utmParams
4950            },
4951          })
4952        })
4953        .then(response => response.json())
4954        .then(data => {
4955          return data
4956        });
4957      }
4958    }
4959
4960    saveUtmParameters();
4961  })();
4962</script>
4962
4963
4964
4965
4966
4967</div><div id="shopify-block-Ab3NWekVWZ0d1WEdmR__497739090016974244" class="shopify-block shopify-app-block insider-object-extension">
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989<script>
4990    window.insider_object = window.insider_object || {};
4991    window.shopifyIO = true;
4992</script>
4992
4993
4994
4995    
4996        
4997            
4997<script>
4998                window.insider_object.parsePrice = function (str) {
4999                    str = (str || '').toString();
5000                    let price = 0;
5001
5002                    price = str.replace(/[^0-9.,]/g, '');
5003
5004                    if (price.slice(-3).indexOf(',') !== -1) {
5005                        price = parseFloat(str.replace(/[^0-9,]/g, '').replace(',', '.')) || 0;
5006                    } else if (price.slice(-3).indexOf('.') !== -1) {
5007                        price = parseFloat(str.replace(/[^0-9.]/g, '')) || 0;
5008                    } else {
5009                        price = parseFloat(str.replace(/[^0-9]/g, '')) || 0;
5010                    }
5011
5012                    return price;
5013                }
5014            </script>
5014
5015            
5015<script>
5016                
5017                    
5018                    
5019                    
5020                    
5021
5022                    window.insider_object.page = {
5023                        "version": "2.0",
5024                        "type": "Product"
5025                    };
5026
5027                
5028
5029                window.insider_object.product = {
5030                    "id": "39353929793741",
5031                    "name": "Dein Wunscherfüller - Schmetterling",
5032                    "taxonomy": [
5033                        <!-- BEGIN app snippet: product-taxonomy -->
5034        
5035            "Alle Gutscheinmotive",
5036        
5037            "Allgemeine Gutscheinmotive - für jeden Anlass",
5038        
5039            "Gutscheine zur Geburt",
5040        
5041            "Top-Motive"
5042        
5043
5044    
5045
5046<!-- END app snippet -->
5047                    ],
5048                    "currency": "EUR",
5049                    
5050                    "unit_price": window.insider_object.parsePrice("15,00"),
5051                    "unit_sale_price": window.insider_object.parsePrice("15,00"),
5052                    
5053                    "url": "https://shop.wunschgutschein.at/products/motiv-wunscherfueller?variant=39353929793741",
5054                    "stock": 1,
5055                    "product_image_url":  "https://shop.wunschgutschein.at/cdn/shop/files/result_e7062526-0f38-4840-9efc-2cf87385bc4c.jpg?v=1772795377", 
5056                    "description": "✓ Kostenloser Postversand* ✓ Kostenloser Briefumschlag ✓ IndividualisierungsmöglichkeitenWUNSCHGUTSCHEIN ist das perfekte Geschenk: Verschenke den Gutschein, der bei über 100 Online-Shops einlösbar ist – Von A wie Amazon bis Z wie Zalando. Du liegst mit deinem Geschenk also immer richtig! WUNSCHGUTSCHEIN ist in den Wertstufen 15, 25, 50, 100 und 150 Euro erhältlich.Gültigkeit: Wunschgutscheine verfallen drei Jahre nach ihrer Bestellung beginnend ab dem Ende des Jahres, in dem der Wunschgutschein erworben wurde.*Ab einem Bestellwert von 40€. Bei Standardversand innerhalb Deutschlands, Österreich und Schweiz",
5057                    "groupcode": "6558715412685",
5058                    "quantity": 1,
5059                    "currency": "EUR",
5060                    "sku": "20001311015",
5061                    
5062                    "locale": "de_" + window.Shopify.country,
5063                    
5064                    "in_stock": 1,
5065                    "custom":{
5066                        "vendor": "Wunschgutschein-Austria",
5067                        "tags": ["Allgemein", "motif_free", "Post"],
5068                        "product_type": "Gutscheine",
5069                        "handle": "motiv-wunscherfueller",
5070                        "product_id": "6558715412685",
5071                        "barcode": "",
5072                        "weight": "15",
5073                        "weight_unit": "g",
5074                        "taxable": false,
5075                        "requires_shipping": true,
5076                        "inventory_management": "",
5077                        "inventory_policy": "continue"
5078                    },
5079                    "variants": [{"id":39353929793741,"title":"15 €","option1":"15 €","option2":null,"option3":null,"sku":"20001311015","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 15 €","public_title":"15 €","options":["15 €"],"price":1500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929662669,"title":"25 €","option1":"25 €","option2":null,"option3":null,"sku":"20001311025","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 25 €","public_title":"25 €","options":["25 €"],"price":2500,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929695437,"title":"50 €","option1":"50 €","option2":null,"option3":null,"sku":"20001311050","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 50 €","public_title":"50 €","options":["50 €"],"price":5000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929728205,"title":"100 €","option1":"100 €","option2":null,"option3":null,"sku":"20001311100","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 100 €","public_title":"100 €","options":["100 €"],"price":10000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":39353929760973,"title":"150 €","option1":"150 €","option2":null,"option3":null,"sku":"20001311150","requires_shipping":true,"taxable":false,"featured_image":null,"available":true,"name":"Dein Wunscherfüller - Schmetterling - 150 €","public_title":"150 €","options":["150 €"],"price":15000,"weight":15,"compare_at_price":null,"inventory_management":null,"barcode":null,"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],
5080                };
5081
5082                
5083                
5084                if ("wertstufe" === "size" ||
5085                    "wertstufe" === "color") {
5086                    window.insider_object.product["wertstufe"] = "15 €";
5087                } else {
5088                    window.insider_object.product.custom["wertstufe"] = "15 €";
5089                }
5090                
5091                
5092
5093                window.insider_object.visited_products = JSON.parse(window.localStorage.getItem('ins-shopify-products-info') || '{}').value || {};
5094                window.insider_object.visited_products["6558715412685"] = {
5095                    url: "https://shop.wunschgutschein.at/products/motiv-wunscherfueller",
5096                    taxonomy: [
5097                        <!-- BEGIN app snippet: product-taxonomy -->
5098        
5099            "Alle Gutscheinmotive",
5100        
5101            "Allgemeine Gutscheinmotive - für jeden Anlass",
5102        
5103            "Gutscheine zur Geburt",
5104        
5105            "Top-Motive"
5106        
5107
5108    
5109
5110<!-- END app snippet -->
5111                    ],
5112                };
5113                window.localStorage.setItem('ins-shopify-products-info', JSON.stringify({
5114                    value: window.insider_object.visited_products,
5115                    _expires: new Date().getTime() + 10*24*60*60*1000,
5116                }));
5117
5118                
5119            </script>
5119
5120            
5120<script>
5121                
5122                window.insider_object.user = {
5123                    "language" : "de".substring(0, 2) + "_DE",
5124                    "market_locale_id": "36115218700",
5125                    "market_locale_handle": "at",
5126                    "market_country_code": "AT",
5127                    "shop_locale": "de"
5128                };
5129                
5130
5131                window.localStorage.setItem('ins-shopify-user-language', JSON.stringify({
5132                    value: window.insider_object.user.language,
5133                    _expires: new Date().getTime() + 10*24*60*60*1000,
5134                }));
5135            </script>
5135
5136            
5137            
5137<script>
5138                
5139                window.insider_object.basket = {
5140                    "currency": "EUR"
5141                    
5142                };
5143            </script>
5143
5144            <!-- BEGIN app snippet: cart-token-collector -->
5144<script>
5145    function throttle(func, limit) {
5146        let inThrottle;
5147        return function executedFunction(...args) {
5148            if (!inThrottle) {
5149                func(...args);
5150                inThrottle = true;
5151                setTimeout(function() {
5152                    inThrottle = false;
5153                }, limit);
5154            }
5155        };
5156    }
5157
5158    async function handleUserInfoUpdate() {
5159        const userInfo = {
5160            oldCartToken: window.localStorage.getItem('ins-old-cart-token'),
5161            oldInsiderId: window.localStorage.getItem('ins-old-insider-id'),
5162            newInsiderId: Insider.getUserId(),
5163            newCartToken: await getCartToken(),
5164            insiderSessionId: Insider.getUserSession()
5165        };
5166        const isInfoChanged = userInfo.oldCartToken !== userInfo.newCartToken ||
5167            userInfo.oldInsiderId !== userInfo.newInsiderId
5168
5169        if (!userInfo.newInsiderId || !userInfo.newCartToken || !userInfo.insiderSessionId) {
5170          return;
5171        }
5172
5173        if (isInfoChanged) {
5174            sendUserInfoRequest(userInfo);
5175            // Persist the Insider id as a Shopify cart attribute so it propagates into checkout,
5176            // where the Checkout UI extension reads `_insider_iid` to personalise recommendations.
5177            writeInsiderIdCartAttribute(userInfo.newInsiderId);
5178        }
5179    }
5180
5181    function writeInsiderIdCartAttribute(insiderId) {
5182        // Best-effort: a failed attribute write must never break the storefront. Guarded by the
5183        // caller (non-null insiderId + non-empty cart) and throttled/deduped like the rest of the snippet.
5184        // .catch() swallows network rejections so they never surface as an unhandledrejection.
5185        fetch(window.Shopify.routes.root + 'cart/update.json', {
5186            method: 'POST',
5187            headers: { 'Content-Type': 'application/json' },
5188            body: JSON.stringify({ attributes: { _insider_iid: insiderId } })
5189        }).catch(function () {
5190            /* swallow: cart-attribute write is non-critical */
5191        });
5192    }
5193
5194    function sendUserInfoRequest(userInfo) {
5195        let url =
5196            'https://sfyapp.useinsider.com/cart-token-collector/v2/save/' +
5197            Shopify.shop +
5198            '?' +
5199            'iid=' + userInfo.newInsiderId +
5200            '&ct=' + userInfo.newCartToken +
5201            '&sid=' + userInfo.insiderSessionId +
5202            '&oldCt=' + (userInfo.oldCartToken || '');
5203
5204        let request = new XMLHttpRequest();
5205        request.onload = function() {
5206            if (this.status >= 200 && this.status < 300) {
5207                setUserInfos(userInfo);
5208            }
5209        };
5210        request.open('GET', url, true);
5211        request.send();
5212    }
5213
5214    function setUserInfos(userInfo) {
5215        window.localStorage.setItem('ins-old-cart-token', userInfo.newCartToken);
5216        window.localStorage.setItem('ins-old-insider-id', userInfo.newInsiderId);
5217    }
5218
5219    async function getCartToken() {
5220        const response = await fetch(window.Shopify.routes.root + 'cart.js');
5221        const data = await response.json();
5222
5223        return data.item_count > 0 ? data.token : null;
5224    }
5225
5226    window.addEventListener('insider:api-initialized', throttle(handleUserInfoUpdate, 2000));
5227    window.addEventListener('cart:amount:update', throttle(handleUserInfoUpdate, 2000));
5228</script>
5228
5229<!-- END app snippet -->
5230        
5231    
5232    
5233        
5234    
5235
5236
5237</div><div id="shopify-block-ARExFU25Wa0dyOGZGU__6251270934270006384" class="shopify-block shopify-app-block">
5237<script>
5238  console.log("Stape gtm: 1.0.4");
5239  window.lsData = {};
5240  window.dataLayer = window.dataLayer || [];
5241  window.addEventListener("message", (event) => {
5242    if (event.data?.event) {
5243      window.dataLayer.push(event.data);
5244    }
5245  });
5246  window.dataShopStape = {
5247    shop: "shop.wunschgutschein.at",
5248    shopId: "55611687117",
5249  }
5250</script>
5250
5251
5252
5253<script type="application/json" id="stape-product-data">{"id":6558715412685,"title":"Dein Wunscherfüller - Schmetterling","handle":"motiv-wunscherfueller","vendor":"Wunschgutschein-Austria","type":"Gutscheine","url":"\/products\/motiv-wunscherfueller","available":true,"price":1500,"compare_at_price":null,"tags":["Allgemein","motif_free","Post"],"category":"Nicht kategorisiert","collections":[{"id":263538409677,"title":"Alle Gutscheinmotive","handle":"all"},{"id":478446747916,"title":"Allgemeine Gutscheinmotive - für jeden Anlass","handle":"allgemein"},{"id":478446878988,"title":"Gutscheine zur Geburt","handle":"geburt"},{"id":262475186381,"title":"Top-Motive","handle":"top-motive"}],"metafields":{"custom":{"giftcard_second_product":{"id":11700351598860,"title":"Dein Wunscherfüller - Schmetterling PDF","handle":"motiv-wunscherfueller-pdf"},"ranking_score":629}},"variants":[]}</script>
vendor: 1 bytes, line 5253
5253
5254<script>
5255  (function () {
5256    try {
5257      window.productShopStape = JSON.parse(document.getElementById('stape-product-data').textContent);
5258    } catch (error) {
5259      console.warn('[ShopStape] productShopStape error', error);
5260    }
5261  })();
5262</script>
5262
5263
5264
5265
5266
5267
5268  
5268<script>
5269    console.log("⚠️ User not logged in");
5270    window.localStorage.removeItem('customerShopStape');
5271  </script>
5271
5272
5273
5274
5275
5276<script>
5277  window.currentShopifyMarketStapeId = null;
5278  window.currentShopifyMarketStapeCode = null;
5279  try {
5280    window.currentShopifyMarketStapeId = "36115218700";
5281    window.currentShopifyMarketStapeCode = "AT";
5282    // Checkout doesn't render theme app extension blocks, so this is the
5283    // only place the market/country code is ever set. Persisting it here
5284    // lets checkout-side field mapping (country_market_code) fall back to
5285    // the last known value instead of coming up empty.
5286    localStorage.setItem('marketShopStape', JSON.stringify({
5287      id: window.currentShopifyMarketStapeId,
5288      code: window.currentShopifyMarketStapeCode
5289    }));
5290  } catch (error) {
5291    console.error("❌ Stape Error:", error);
5292  }
5293</script>
5293
5294
5295
5296
5297
5298
5299</div>
5299<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
5299
5300</body>
5301</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.