PageSourceSearch

https://yourstruly.beauty/search

html yourstruly.beauty collected 2026-10-09 23:35:01 UTC 164,557 bytes, 2,039 lines download raw bytes

1<!doctype html><html class="no-js" lang="en" dir="ltr">
2  <head>
3
4
5<!-- CookiePro Cookie-Einwilligungshinweis – Anfang für yourstruly.eu -->
6<script type="text/javascript" src="https://cookie-cdn.cookiepro.com/consent/b6c66c7f-0457-4e4e-afb0-eb6645c48d3b/OtAutoBlock.js" ></script>
vendor: 1 bytes, line 6
6
7<script src="https://cookie-cdn.cookiepro.com/scripttemplates/otSDKStub.js"  type="text/javascript" charset="UTF-8" data-domain-script="b6c66c7f-0457-4e4e-afb0-eb6645c48d3b" ></script>
vendor: 1 bytes, line 7
7
8<script type="text/javascript">
9function OptanonWrapper() { }
10</script>
10
11<!-- CookiePro-Cookie-Einwilligungshinweis – Ende für yourstruly.eu -->
12
13  
13<script data-ot-ignore type="text/javascript" src="https://s3.amazonaws.com/static.goaffpro.com/auto_complete.js?update=3"></script>
13
14  
15    
16    
16<script data-ot-ignore type="text/javascript">
17        window.GoaffproAffiliateAutoComplete = {
18          locale:'en',
19          shop:'yourstrulyeu.myshopify.com',
20          searchIn:'name,company_name,address, city, state, ref_code',
21          resultFields:'name, company_name,address, city, ref_code',
22          
23          itemHtml:`<div style="background-color:#fff;padding:16px;border-bottom:1px solid #eee">
24            <strong>{{name}}</strong>
25            <p>{{company_name}}</p>
26            <address>{{city}}</address>
27            </div>`,
28          placeholder:"Salon suchen...",  
29          selectedItemHtml:"<div class='salon-title'><strong>{{name}}</strong></div>",
30          noResults:'Keinen Salon gefunden',
31          changeBtnText:'Ändern',
32          
33        }
34    </script>
34
35
36    
37    <meta charset="utf-8">
38    <meta name="viewport" content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=5.0">
39    <meta name="theme-color" content="#ffffff">
40
41    <title>Search</title><meta name="description" content="Yours Truly ist die Antwort auf eine immer lauter werdende Welt – reduziert, klar und wirksam."><link rel="canonical" href="https://yourstruly.beauty/search"><link rel="shortcut icon" href="//yourstruly.beauty/cdn/shop/files/yt-eu-favicon.png?v=1747076112&width=96" type="image/png"><link rel="preconnect" href="https://cdn.shopify.com">
42    <link rel="dns-prefetch" href="https://productreviews.shopifycdn.com">
43    <link rel="dns-prefetch" href="https://www.google-analytics.com"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><link rel="preload" as="style" href="//yourstruly.beauty/cdn/shop/t/11/assets/theme.css?v=63478811914582994961745924210">
44    <link rel="preload" as="style" href="//yourstruly.beauty/cdn/shop/t/11/assets/custom.theme.css?v=51594411110335020751776861948">
45    <link rel="preload" as="script" href="//yourstruly.beauty/cdn/shop/t/11/assets/vendor.js?v=32643890569905814191745924210">
46    <link rel="preload" as="script" href="//yourstruly.beauty/cdn/shop/t/11/assets/theme.js?v=163906993881127459471746007758"><meta property="og:type" content="website">
47  <meta property="og:title" content="Search"><meta property="og:image" content="http://yourstruly.beauty/cdn/shop/files/Yours-Truly-Stacked-Green_a1215751-edd5-4ee5-97dd-4bea76e4db6a.png?v=1758288495&width=1024">
48  <meta property="og:image:secure_url" content="https://yourstruly.beauty/cdn/shop/files/Yours-Truly-Stacked-Green_a1215751-edd5-4ee5-97dd-4bea76e4db6a.png?v=1758288495&width=1024">
49  <meta property="og:image:width" content="508">
50  <meta property="og:image:height" content="243"><meta property="og:description" content="Yours Truly ist die Antwort auf eine immer lauter werdende Welt – reduziert, klar und wirksam."><meta property="og:url" content="https://yourstruly.beauty/search">
51<meta property="og:site_name" content="Yours Truly"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Search">
52  <meta name="twitter:description" content="Yours Truly ist die Antwort auf eine immer lauter werdende Welt – reduziert, klar und wirksam."><meta name="twitter:image" content="https://yourstruly.beauty/cdn/shop/files/Yours-Truly-Stacked-Green_a1215751-edd5-4ee5-97dd-4bea76e4db6a.png?v=1758288495&width=1200">
53  <meta name="twitter:image:alt" content="yours-truly-schriftzug">
54    
54<script type="application/ld+json">
55  {
56    "@context": "https://schema.org",
57    "@type": "BreadcrumbList",
58    "itemListElement": [{
59        "@type": "ListItem",
60        "position": 1,
61        "name": "Home",
62        "item": "https://yourstruly.eu"
63      }]
64  }
65</script>
65
66    <link rel="preload" href="//yourstruly.beauty/cdn/fonts/open_sans/opensans_n7.a9393be1574ea8606c68f4441806b2711d0d13e4.woff2" as="font" type="font/woff2" crossorigin><link rel="preload" href="//yourstruly.beauty/cdn/fonts/fraunces/fraunces_n4.8e6986daad4907c36a536fb8d55aaf5318c974ca.woff2" as="font" type="font/woff2" crossorigin><style>
67  /* Typography (heading) */
68  @font-face {
69  font-family: "Open Sans";
70  font-weight: 700;
71  font-style: normal;
72  font-display: swap;
73  src: url("//yourstruly.beauty/cdn/fonts/open_sans/opensans_n7.a9393be1574ea8606c68f4441806b2711d0d13e4.woff2") format("woff2"),
74       url("//yourstruly.beauty/cdn/fonts/open_sans/opensans_n7.7b8af34a6ebf52beb1a4c1d8c73ad6910ec2e553.woff") format("woff");
75}
76
77@font-face {
78  font-family: "Open Sans";
79  font-weight: 700;
80  font-style: italic;
81  font-display: swap;
82  src: url("//yourstruly.beauty/cdn/fonts/open_sans/opensans_i7.916ced2e2ce15f7fcd95d196601a15e7b89ee9a4.woff2") format("woff2"),
83       url("//yourstruly.beauty/cdn/fonts/open_sans/opensans_i7.99a9cff8c86ea65461de497ade3d515a98f8b32a.woff") format("woff");
84}
85
86/* Typography (body) */
87  @font-face {
88  font-family: Fraunces;
89  font-weight: 400;
90  font-style: normal;
91  font-display: swap;
92  src: url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_n4.8e6986daad4907c36a536fb8d55aaf5318c974ca.woff2") format("woff2"),
93       url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_n4.879060358fafcf2c4c4b6df76c608dc301ced93b.woff") format("woff");
94}
95
96@font-face {
97  font-family: Fraunces;
98  font-weight: 400;
99  font-style: italic;
100  font-display: swap;
101  src: url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_i4.e09716ed61c0a2362812f958774186e93f19000f.woff2") format("woff2"),
102       url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_i4.8d7d036539670404ec5904eabafe8f06e152c5c7.woff") format("woff");
103}
104
105@font-face {
106  font-family: Fraunces;
107  font-weight: 600;
108  font-style: normal;
109  font-display: swap;
110  src: url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_n6.69791a9f00600e5a1e56a6f64efc9d10a28b9c92.woff2") format("woff2"),
111       url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_n6.e87d336d46d99db17df56f1dc77d222effffa1f3.woff") format("woff");
112}
113
114@font-face {
115  font-family: Fraunces;
116  font-weight: 600;
117  font-style: italic;
118  font-display: swap;
119  src: url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_i6.8862d206518ce141218adf4eaf0e5d478cbd024a.woff2") format("woff2"),
120       url("//yourstruly.beauty/cdn/fonts/fraunces/fraunces_i6.9bfc22b5389643d688185c0e419e96528513fc60.woff") format("woff");
121}
122
123:root {--heading-color: 0, 0, 0;
124    --text-color: 0, 0, 0;
125    --background: 255, 255, 255;
126    --secondary-background: 206, 217, 207;
127    --border-color: 217, 217, 217;
128    --border-color-darker: 153, 153, 153;
129    --success-color: 98, 132, 116;
130    --success-background: 224, 230, 227;
131    --error-color: 210, 84, 90;
132    --error-background: 252, 243, 243;
133    --primary-button-background: 98, 132, 116;
134    --primary-button-text-color: 255, 255, 255;
135    --secondary-button-background: 206, 217, 207;
136    --secondary-button-text-color: 32, 53, 31;
137    --product-star-rating: 164, 129, 86;
138    --product-on-sale-accent: 210, 84, 90;
139    --product-sold-out-accent: 111, 113, 155;
140    --product-custom-label-background: 64, 93, 230;
141    --product-custom-label-text-color: 255, 255, 255;
142    --product-custom-label-2-background: 243, 255, 52;
143    --product-custom-label-2-text-color: 0, 0, 0;
144    --product-low-stock-text-color: 210, 84, 90;
145    --product-in-stock-text-color: 46, 158, 123;
146    --loading-bar-background: 0, 0, 0;
147
148    /* We duplicate some "base" colors as root colors, which is useful to use on drawer elements or popover without. Those should not be overridden to avoid issues */
149    --root-heading-color: 0, 0, 0;
150    --root-text-color: 0, 0, 0;
151    --root-background: 255, 255, 255;
152    --root-border-color: 217, 217, 217;
153    --root-primary-button-background: 98, 132, 116;
154    --root-primary-button-text-color: 255, 255, 255;
155
156    --base-font-size: 18px;
157    --heading-font-family: "Open Sans", sans-serif;
158    --heading-font-weight: 700;
159    --heading-font-style: normal;
160    --heading-text-transform: normal;
161    --text-font-family: Fraunces, serif;
162    --text-font-weight: 400;
163    --text-font-style: normal;
164    --text-font-bold-weight: 600;
165
166    /* Typography (font size) */
167    --heading-xxsmall-font-size: 11px;
168    --heading-xsmall-font-size: 11px;
169    --heading-small-font-size: 12px;
170    --heading-large-font-size: 36px;
171    --heading-h1-font-size: 36px;
172    --heading-h2-font-size: 30px;
173    --heading-h3-font-size: 26px;
174    --heading-h4-font-size: 24px;
175    --heading-h5-font-size: 20px;
176    --heading-h6-font-size: 16px;
177
178    /* Control the look and feel of the theme by changing radius of various elements */
179    --button-border-radius: 0px;
180    --block-border-radius: 0px;
181    --block-border-radius-reduced: 0px;
182    --color-swatch-border-radius: 100%;
183
184    /* Button size */
185    --button-height: 48px;
186    --button-small-height: 40px;
187
188    /* Form related */
189    --form-input-field-height: 48px;
190    --form-input-gap: 16px;
191    --form-submit-margin: 24px;
192
193    /* Product listing related variables */
194    --product-list-block-spacing: 32px;
195
196    /* Video related */
197    --play-button-background: 255, 255, 255;
198    --play-button-arrow: 0, 0, 0;
199
200    /* RTL support */
201    --transform-logical-flip: 1;
202    --transform-origin-start: left;
203    --transform-origin-end: right;
204
205    /* Other */
206    --zoom-cursor-svg-url: url(//yourstruly.beauty/cdn/shop/t/11/assets/zoom-cursor.svg?v=132049112189449447961745924227);
207    --arrow-right-svg-url: url(//yourstruly.beauty/cdn/shop/t/11/assets/arrow-right.svg?v=28832371729054011561745924227);
208    --arrow-left-svg-url: url(//yourstruly.beauty/cdn/shop/t/11/assets/arrow-left.svg?v=47624417225440425351745924227);
209
210    /* Some useful variables that we can reuse in our CSS. Some explanation are needed for some of them:
211       - container-max-width-minus-gutters: represents the container max width without the edge gutters
212       - container-outer-width: considering the screen width, represent all the space outside the container
213       - container-outer-margin: same as container-outer-width but get set to 0 inside a container
214       - container-inner-width: the effective space inside the container (minus gutters)
215       - grid-column-width: represents the width of a single column of the grid
216       - vertical-breather: this is a variable that defines the global "spacing" between sections, and inside the section
217                            to create some "breath" and minimum spacing
218     */
219    --container-max-width: 1600px;
220    --container-gutter: 24px;
221    --container-max-width-minus-gutters: calc(var(--container-max-width) - (var(--container-gutter)) * 2);
222    --container-outer-width: max(calc((100vw - var(--container-max-width-minus-gutters)) / 2), var(--container-gutter));
223    --container-outer-margin: var(--container-outer-width);
224    --container-inner-width: calc(100vw - var(--container-outer-width) * 2);
225
226    --grid-column-count: 10;
227    --grid-gap: 24px;
228    --grid-column-width: calc((100vw - var(--container-outer-width) * 2 - var(--grid-gap) * (var(--grid-column-count) - 1)) / var(--grid-column-count));
229
230    --vertical-breather: 48px;
231    --vertical-breather-tight: 48px;
232
233    /* Shopify related variables */
234    --payment-terms-background-color: #ffffff;
235  }
236
237  @media screen and (min-width: 741px) {
238    :root {
239      --container-gutter: 40px;
240      --grid-column-count: 20;
241      --vertical-breather: 64px;
242      --vertical-breather-tight: 64px;
243
244      /* Typography (font size) */
245      --heading-xsmall-font-size: 12px;
246      --heading-small-font-size: 13px;
247      --heading-large-font-size: 52px;
248      --heading-h1-font-size: 48px;
249      --heading-h2-font-size: 38px;
250      --heading-h3-font-size: 32px;
251      --heading-h4-font-size: 24px;
252      --heading-h5-font-size: 20px;
253      --heading-h6-font-size: 18px;
254
255      /* Form related */
256      --form-input-field-height: 52px;
257      --form-submit-margin: 32px;
258
259      /* Button size */
260      --button-height: 52px;
261      --button-small-height: 44px;
262    }
263  }
264
265  @media screen and (min-width: 1200px) {
266    :root {
267      --vertical-breather: 80px;
268      --vertical-breather-tight: 64px;
269      --product-list-block-spacing: 48px;
270
271      /* Typography */
272      --heading-large-font-size: 64px;
273      --heading-h1-font-size: 56px;
274      --heading-h2-font-size: 48px;
275      --heading-h3-font-size: 36px;
276      --heading-h4-font-size: 30px;
277      --heading-h5-font-size: 24px;
278      --heading-h6-font-size: 18px;
279    }
280  }
281
282  @media screen and (min-width: 1600px) {
283    :root {
284      --vertical-breather: 90px;
285      --vertical-breather-tight: 64px;
286    }
287  }
288</style>
289    
289<script>
290  // This allows to expose several variables to the global scope, to be used in scripts
291  window.themeVariables = {
292    settings: {
293      direction: "ltr",
294      pageType: "search",
295      cartCount: 0,
296      moneyFormat: "${{amount}}",
297      moneyWithCurrencyFormat: "${{amount}} USD",
298      showVendor: false,
299      discountMode: "saving",
300      currencyCodeEnabled: false,
301      cartType: "page",
302      cartCurrency: "USD",
303      mobileZoomFactor: 2.5
304    },
305
306    routes: {
307      host: "yourstruly.beauty",
308      rootUrl: "\/",
309      rootUrlWithoutSlash: '',
310      cartUrl: "\/cart",
311      cartAddUrl: "\/cart\/add",
312      cartChangeUrl: "\/cart\/change",
313      searchUrl: "\/search",
314      predictiveSearchUrl: "\/search\/suggest",
315      productRecommendationsUrl: "\/recommendations\/products"
316    },
317
318    strings: {
319      accessibilityDelete: "Delete",
320      accessibilityClose: "Close",
321      collectionSoldOut: "Sold out",
322      collectionDiscount: "Save @savings@",
323      productSalePrice: "Sale price",
324      productRegularPrice: "Regular price",
325      productFormUnavailable: "Unavailable",
326      productFormSoldOut: "Sold out",
327      productFormPreOrder: "Pre-order",
328      productFormAddToCart: "Add to cart",
329      searchNoResults: "No results could be found.",
330      searchNewSearch: "New search",
331      searchProducts: "Products",
332      searchArticles: "Journal",
333      searchPages: "Pages",
334      searchCollections: "Collections",
335      cartViewCart: "View cart",
336      cartItemAdded: "Item added to your cart!",
337      cartItemAddedShort: "Added to your cart!",
338      cartAddOrderNote: "Add order note",
339      cartEditOrderNote: "Edit order note",
340      shippingEstimatorNoResults: "Sorry, we do not ship to your address.",
341      shippingEstimatorOneResult: "There is one shipping rate for your address:",
342      shippingEstimatorMultipleResults: "There are several shipping rates for your address:",
343      shippingEstimatorError: "One or more error occurred while retrieving shipping rates:"
344    },
345
346    libs: {
347      flickity: "\/\/yourstruly.beauty\/cdn\/shop\/t\/11\/assets\/flickity.js?v=176646718982628074891745924210",
348      photoswipe: "\/\/yourstruly.beauty\/cdn\/shop\/t\/11\/assets\/photoswipe.js?v=132268647426145925301745924210",
349      qrCode: "\/\/yourstruly.beauty\/cdn\/shopifycloud\/storefront\/assets\/themes_support\/vendor\/qrcode-1f6c2eb7.js"
350    },
351
352    breakpoints: {
353      phone: 'screen and (max-width: 740px)',
354      tablet: 'screen and (min-width: 741px) and (max-width: 999px)',
355      tabletAndUp: 'screen and (min-width: 741px)',
356      pocket: 'screen and (max-width: 999px)',
357      lap: 'screen and (min-width: 1000px) and (max-width: 1199px)',
358      lapAndUp: 'screen and (min-width: 1000px)',
359      desktop: 'screen and (min-width: 1200px)',
360      wide: 'screen and (min-width: 1400px)'
361    }
362  };
363
364  window.addEventListener('pageshow', async () => {
365    const cartContent = await (await fetch(`${window.themeVariables.routes.cartUrl}.js`, {cache: 'reload'})).json();
366    document.documentElement.dispatchEvent(new CustomEvent('cart:refresh', {detail: {cart: cartContent}}));
367  });
368
369  if ('noModule' in HTMLScriptElement.prototype) {
370    // Old browsers (like IE) that does not support module will be considered as if not executing JS at all
371    document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
372
373    requestAnimationFrame(() => {
374      const viewportHeight = (window.visualViewport ? window.visualViewport.height : document.documentElement.clientHeight);
375      document.documentElement.style.setProperty('--window-height',viewportHeight + 'px');
376    });
377  }</script>
377
378
379    <link rel="stylesheet" href="//yourstruly.beauty/cdn/shop/t/11/assets/theme.css?v=63478811914582994961745924210">
380    <link rel="stylesheet" href="//yourstruly.beauty/cdn/shop/t/11/assets/custom.theme.css?v=51594411110335020751776861948">
381
382    
382<script src="//yourstruly.beauty/cdn/shop/t/11/assets/vendor.js?v=32643890569905814191745924210" defer></script>
382
383    
383<script src="//yourstruly.beauty/cdn/shop/t/11/assets/theme.js?v=163906993881127459471746007758" defer></script>
383
384    
384<script src="//yourstruly.beauty/cdn/shop/t/11/assets/custom.js?v=167639537848865775061745924210" defer></script>
384
385
386    
386<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
386<meta name="facebook-domain-verification" content="4rl1mfhjfq8mf0uxoi3vu41hci4wtt">
387<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/88856133967/digital_wallets/dialog">
388<meta id="in-context-paypal-metadata" data-shop-id="88856133967" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
389<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" hreflang="x-default" href="https://yourstruly.eu/search">
390<link rel="alternate" hreflang="de" href="https://yourstruly.eu/search">
391<link rel="alternate" hreflang="en" href="https://yourstruly.eu/en/search">
392<link rel="alternate" hreflang="en-US" href="https://yourstruly.beauty/search">
393<link rel="alternate" hreflang="de-US" href="https://yourstruly.beauty/de/search">
394<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
394
395<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
396<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=88856133967" crossorigin="anonymous"></script>
vendor: 1 bytes, line 396
396
397<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":88856133967,"countryCode":"DE","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/88856133967","merchantName":"Yours Truly","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","maestro"],"total":{"type":"pending","label":"Yours Truly","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 397
397
398<script id="shopify-features" type="application/json">{"accessToken":"d098c8d8a5430a775b81eacbba714993","betas":["rich-media-storefront-analytics"],"domain":"yourstruly.beauty","predictiveSearch":true,"shopId":88856133967,"locale":"en"}</script>
vendor: 1 bytes, line 398
398
399<script>var Shopify = Shopify || {};
400Shopify.shop = "yourstrulyeu.myshopify.com";
401Shopify.locale = "en";
402Shopify.currency = {"active":"USD","rate":"1.1426754"};
403Shopify.country = "US";
404Shopify.theme = {"name":"Focal 12.5.0","id":181808136527,"schema_name":"Focal","schema_version":"12.5.0","theme_store_id":714,"role":"main"};
405Shopify.theme.handle = "null";
406Shopify.theme.style = {"id":null,"handle":null};
407Shopify.cdnHost = "yourstruly.beauty/cdn";
408Shopify.routes = Shopify.routes || {};
409Shopify.routes.root = "/";
410Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
411Shopify.SignInWithShop = Shopify.SignInWithShop || {};
412Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
413Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 413
413
414<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 414
414
415<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 415
415
416<script>
417  window.ShopifyPay = window.ShopifyPay || {};
418  window.ShopifyPay.apiHost = "shop.app\/pay";
419  window.ShopifyPay.redirectState = null;
420</script>
vendor: 1 bytes, line 420
420
421<script>
422  window.Shopify = window.Shopify || {};
423  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
424  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
425  window.Shopify.SignInWithShop.eligible = true;
426</script>
vendor: 1 bytes, line 426
426
427<script id="shop-js-analytics" type="application/json">{"pageType":"search"}</script>
vendor: 1 bytes, line 427
427
428<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 428
428
429<script type="module">
430  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
431
432  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
433
434</script>
vendor: 1 bytes, line 434
434
435<script>
436  window.Shopify = window.Shopify || {};
437  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
438  window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]};
439</script>
vendor: 1 bytes, line 439
439
440<script id="__st">var __st={"a":88856133967,"offset":7200,"reqid":"9c2d571d-b68b-4111-81b3-61e05af2045e-1791588901","pageurl":"yourstruly.beauty\/search","u":"00fdcf454056","p":"searchresults"};</script>
vendor: 1 bytes, line 440
440
441<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 441
441
442<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:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(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 442
442
443<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//yourstruly.beauty/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 443
443
444<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 = "//yourstruly.beauty/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>
444<script crossorigin="anonymous" defer="defer" src="//yourstruly.beauty/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-f0e26bdf.js?v=20250812"></script>
vendor: 1 bytes, line 444
444
445<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 445
445
446<script>
447  window.Shopify = window.Shopify || {};
448  window.Shopify.MCP = window.Shopify.MCP || {};
449  window.Shopify.MCP.enabled = true;
450  window.Shopify.MCP.shop = "yourstrulyeu.myshopify.com";
451  window.Shopify.MCP.mcpEndpoint = "https:\/\/yourstruly.beauty\/api\/mcp";
452  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?\"\nSet policy_types to also get the store's written policies (full text and URL).\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."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question — e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}];
453</script>
vendor: 1 bytes, line 453
453
454<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("\/\/yourstruly.beauty\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-f427de6a.js","sha256-ypGF+5vIq4Psw4WG7nsVtdd\/TCfsJWnrNuACdqLCElY=");})();
455</script>
vendor: 1 bytes, line 455
455
456<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://yourstruly.beauty/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
457</script>
vendor: 1 bytes, line 457
457
458<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
459  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);
460</script>
vendor: 1 bytes, line 460
460
461<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}}));
462</script>
462
463<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://yourstruly.beauty/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
464<style id="shopify-accelerated-checkout-cart">
465        #shopify-buyer-consent {
466  margin-top: 1em;
467  display: inline-block;
468  width: 100%;
469}
470
471#shopify-buyer-consent.hidden {
472  display: none;
473}
474
475#shopify-subscription-policy-button {
476  background: none;
477  border: none;
478  padding: 0;
479  text-decoration: underline;
480  font-size: inherit;
481  cursor: pointer;
482}
483
484#shopify-subscription-policy-button::before {
485  box-shadow: none;
486}
487
488      </style>
489
490<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
490
491    
492
493    <!-- Yeastar Chat START -->
494    
494<script data-ot-ignore async src="https://wildbeauty.ras.yeastar.com/live_chat.v1.0.0.js?channelNumber=LC00006"></script>
494
495    <!-- Yeastar Chat END -->
496  <!-- BEGIN app block: shopify://apps/hulk-form-builder/blocks/app-embed/b6b8dd14-356b-4725-a4ed-77232212b3c3 --><!-- BEGIN app snippet: hulkapps-formbuilder-theme-ext -->
496<script type="text/javascript">
497  
498  if (typeof window.formbuilder_customer != "object") {
499        window.formbuilder_customer = {}
500  }
501
502  
503
504  window.hulkFormBuilder = {
505    form_data: {"form_OnWqB3ynk6E0xHR6OWBF_A":{"uuid":"OnWqB3ynk6E0xHR6OWBF_A","form_name":"Yours Truly Test the Best","form_data":{"div_back_gradient_1":"#fff","div_back_gradient_2":"#fff","back_color":"#fff","form_title":"\u003ch3\u003e\u003cspan style=\"color:#000000;\"\u003eKontaktiere uns\u003c\/span\u003e\u003c\/h3\u003e\n","form_submit":"Paket Bestellen","after_submit":"hideAndmessage","after_submit_msg":"","captcha_enable":"no","label_style":"inlineLabels","input_border_radius":"2","back_type":"transparent","input_back_color":"#fff","input_back_color_hover":"#fff","back_shadow":"none","label_font_clr":"#333333","input_font_clr":"#333333","button_align":"fullBtn","button_clr":"#fff","button_back_clr":"#20351f","button_border_radius":"2","form_width":"800px","form_border_size":"2","form_border_clr":"#c7c7c7","form_border_radius":"1","label_font_size":"14","input_font_size":"12","button_font_size":"16","form_padding":"35","input_border_color":"#ccc","input_border_color_hover":"#ccc","btn_border_clr":"#333333","btn_border_size":"1","form_name":"Yours Truly Test the Best","form_access_message":"\u
505003cp\u003ePlease login to access the form\u003cbr\u003eDo not have an account? Create account\u003c\/p\u003e","form_description":"\u003cp\u003e\u003cspan style=\"color:#000000;\"\u003eMelde hier direkt Dein Interesse an unserem Test-the-Best* Paket im Wert von \u0026uuml;ber 80 \u0026euro; an.\u003c\/span\u003e\u003c\/p\u003e\n\n\u003cp\u003e\u003cspan style=\"color:#000000;\"\u003e\u003cem\u003e*Angebot gilt nur f\u0026uuml;r Salons. Keine Belieferung von 10 \u0026euro; Salons, Shops, Gro\u0026szlig;- und Versandhandel.\u003c\/em\u003e\u003c\/span\u003e\u003c\/p\u003e\n","captcha_honeypot":"yes","captcha_version_3_enable":"no","formElements":[{"Conditions":{},"type":"select","position":0,"label":"Anrede","required":"no","values":"Keine Angabe\nFrau\nHerr","elementCost":{},"page_number":1},{"Conditions":{},"type":"text","position":1,"label":"Salonnamen","required":"yes","halfwidth":"yes","page_number":1},{"Conditions":{},"type":"text","position":2,"label":"Jobtitel","required":"yes","halfwidth":"yes","page_number":1},{"type":"text","position":3,"label":"Vorname","customClass":"","halfwidth":"yes","Conditions":{},"required":"yes","page_number":1},{"type":"text","position":4,"label":"Nachname","halfwidth":"yes","Conditions":{},"required":"yes","page_number":1},{"type":"email","position":5,"label":"Email","required":"yes","email_confirm":"yes","Conditions":{},"page_number":1},{"Conditions":{},"type":"phone","position":6,"label":"Telefon","required":"yes","default_country_code":"Germany +49","page_number":1},{"Conditions":{},"type":"text","position":7,"label":"Straße \u0026 Hausnummer","page_number":1},{"Conditions":{},"type":"text","position":8,"label":"Postleitzahl","required":"yes","halfwidth":"yes","page_number":1},{"Conditions":{},"type":"text","position":9,"label":"Land","required":"yes","halfwidth":"yes","page_number":1},{"type":"textarea","position":10,"label":"Kommentar","required":"yes","Conditions":{},"page_number":1},{"Conditions":{},"type":"checkbox","position":11,"label":"Ich habe die Datenschutzbestimmungen zur Kenntnis genommen und die AGB gelesen und bin mit ihnen einverstanden. ","required":"yes","page_number":1}]},"is_spam_form":false,"shop_uuid":"iShDENWZ7ss5gIZpw7fKfg","shop_timezone":"Europe\/Berlin","shop_id":147094,"shop_is_after_submit_enabled":false,"shop_shopify_plan":"Grow","shop_shopify_domain":"yourstrulyeu.mysh
505opify.com","popup_settings":{},"form_is_active":true}},
506    shop_data: {"shop_iShDENWZ7ss5gIZpw7fKfg":{"shop_uuid":"iShDENWZ7ss5gIZpw7fKfg","shop_timezone":"Europe\/Berlin","shop_id":147094,"shop_is_after_submit_enabled":false,"shop_shopify_plan":"Grow","shop_shopify_domain":"yourstrulyeu.myshopify.com","shop_created_at":"2025-08-25T06:27:46.525-05:00","is_skip_metafield":false,"shop_deleted":false,"shop_disabled":false}},
507    settings_data: {"shop_settings":{"shop_customise_msgs":[],"default_customise_msgs":{"is_required":"is required","thank_you":"Thank you! The form was submitted successfully.","processing":"Processing...","valid_data":"Please provide valid data","valid_email":"Provide valid email format","valid_tags":"HTML Tags are not allowed","valid_phone":"Provide valid phone number","valid_captcha":"Please provide a valid CAPTCHA response.","valid_url":"Provide valid URL","only_number_alloud":"Provide valid number in","number_less":"must be less than","number_more":"must be more than","image_must_less":"Image must be less than 20MB","image_number":"Images allowed","image_extension":"Invalid extension! Please provide image file","error_image_upload":"Error in image upload. Please try again.","error_file_upload":"Error in file upload. Please try again.","your_response":"Your response","error_form_submit":"Error occur.Please try again after sometime.","email_submitted":"Form with this email is already submitted","invalid_email_by_zerobounce":"The email address you entered appears to be invalid. Please check it and try again.","download_file":"Download file","card_details_invalid":"Your card details are invalid","card_details":"Card details","please_enter_card_details":"Please enter card details","card_number":"Card number","exp_mm":"Exp MM","exp_yy":"Exp YY","crd_cvc":"CVV","payment_value":"Payment amount","please_enter_payment_amount":"Please enter a payment amount.","address1":"Address line 1","address2":"Address line 2","city":"City","province":"Province","zipcode":"Zip code","country":"Country","blocked_domain":"This form does not accept addresses from","file_must_less":"File must be less than 20MB","file_extension":"Invalid extension! Please provide file","only_file_number_alloud":"files allowed","previous":"Previous","next":"Next","must_have_a_input":"Please enter at least one field.","please_enter_required_data":"Please enter required data","atleast_one_special_char":"Include at least one special character","atleast_one_lowercase_char":"Include at least one lowercase character","atleast_one_uppercase_char":"Include at least one uppercase character","atleast_one_number":"Include at least one number","must_have_8_chars":"Must have 8 characters long","be_between_8_and_12_chars":"Be between 8 and 12 characters long","please_select":"Please Select","phone_submitted":"Form with this phone number is already submitted","user_res_parse_error":"Error while submitting the form","valid_same_values":"values must be the same","product_choice_clear_selection":"Clear Selection","picture_choice_clear_selection":"Clear Selection","remove_all_for_file_image_upload":"Remove All","invalid_file_type_for_image_upload":"You can't upload files of this type.","invalid_file_type_for_signature_upload":"You can't upload files of this type.","max_files_exceeded_for_file_upload":"You can not upload any more files.","max_files_exceeded_for_image_upload":"You can not upload any more files.","file_already_exist":"File already uploaded","max_limit_exceed":"You have added the maximum number of text fields.","cancel_upload_for_file_upload":"Cancel upload","cancel_upload_for_image_upload":"Cancel upload","cancel_upload_for_signature_upload":"Cancel upload"},"shop_blocked_domains":[]}},
508    features_data: {"shop_plan_features":{"shop_plan_features":["unlimited-forms","full-design-customization","export-form-submissions","multiple-recipients-for-form-submissions","multiple-admin-notifications","enable-captcha","unlimited-file-uploads","save-submitted-form-data","set-auto-response-message","conditional-logic","form-banner","save-as-draft-facility","include-user-response-in-admin-email","disable-form-submission","forms-limit","submissions-visibility-limit","file-upload"]}},
509    shop: null,
510    shop_id: null,
511    plan_features: null,
512    validateDoubleQuotes: false,
513    assets: {
514      searchableDropdown: "https://cdn.shopify.com/extensions/01a10bc5-4b8d-7ca7-8a4c-2623bcb670ca/form-builder
514-by-hulkapps-75/assets/searchable-dropdown.js",
515      extraFunctions: "https://cdn.shopify.com/extensions/01a10bc5-4b8d-7ca7-8a4c-2623bcb670ca/form-builder-by-hulkapps-75/assets/extra-functions.js",
516      extraStyles: "https://cdn.shopify.com/extensions/01a10bc5-4b8d-7ca7-8a4c-2623bcb670ca/form-builder-by-hulkapps-75/assets/extra-styles.css",
517      bootstrapStyles: "https://cdn.shopify.com/extensions/01a10bc5-4b8d-7ca7-8a4c-2623bcb670ca/form-builder-by-hulkapps-75/assets/theme-app-extension-bootstrap.css",
518    },
519    translations: {
520      htmlTagNotAllowed: "HTML Tags are not allowed",
521      sqlQueryNotAllowed: "SQL Queries are not allowed",
522      doubleQuoteNotAllowed: "Double quotes are not allowed",
523      
524      maxTextFieldsReached: "You have added the maximum number of text fields.",
525      
526
527      
528      zerobounceApiErrorMsg: "We couldn\u0026#39;t verify your email due to a technical issue. Please try again later.",
529    }
530
531  }
532
533  
534
535  window.FbThemeAppExtSettingsHash = {}
536  
537</script>
537<!-- END app snippet --><!-- END app block --><!-- BEGIN app block: shopify://apps/seowill-redirects/blocks/brokenlink-404/cc7b1996-e567-42d0-8862-356092041863 -->
538<script type="text/javascript">
539    !function(t){var e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={i:n,l:!1,exports:{}};return t[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}r.m=t,r.c=e,r.d=function(t,e,n){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:n})},r.r=function(t){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"===typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)r.d(n,o,function(e){return t[e]}.bind(null,o));return n},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=11)}([function(t,e,r){"use strict";var n=r(2),o=Object.prototype.toString;function i(t){return"[object Array]"===o.call(t)}function a(t){return"undefined"===typeof t}function u(t){return null!==t&&"object"===typeof t}function s(t){return"[object Function]"===o.call(t)}function c(t,e){if(null!==t&&"undefined"!==typeof t)if("object"!==typeof t&&(t=[t]),i(t))for(var r=0,n=t.length;r<n;r++)e.call(null,t[r],r,t);else for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&e.call(null,t[o],o,t)}t.exports={isArray:i,isArrayBuffer:function(t){return"[object ArrayBuffer]"===o.call(t)},isBuffer:function(t){return null!==t&&!a(t)&&null!==t.constructor&&!a(t.constructor)&&"function"===typeof t.constructor.isBuffer&&t.constructor.isBuffer(t)},isFormData:function(t){return"undefined"!==typeof FormData&&t instanceof FormData},isArrayBufferView:function(t){return"undefined"!==typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer&&t.buffer instanceof ArrayBuffer},isString:function(t){return"string"===typeof t},isNumber:function(t){return"number"===typeof t},isObject:u,isUndefined:a,isDate:function(t){return"[object Date]"===o.call(t)},isFile:function(t){return"[object File]"===o.call(t)},isBlob:function(t){return"[object Blob]"===o.call(t)},isFunction:s,isStream:function(t){return u(t)&&s(t.pipe)},isURLSearchParams:function(t){return"undefined"!==typeof URLSearchParams&&t instanceof URLSearchParams},isStandardBrowserEnv:function(){return("undefined"===typeof navigator||"ReactNative"!==navigator.product&&"NativeScript"!==navigator.product&&"NS"!==navigator.product)&&("undefined"!==typeof window&&"undefined"!==typeof document)},forEach:c,merge:function t(){var e={};function r(r,n){"object"===typeof e[n]&&"object"===typeof r?e[n]=t(e[n],r):e[n]=r}for(var n=0,o=arguments.length;n<o;n++)c(arguments[n],r);return e},deepMerge:function t(){var e={};function r(r,n){"object"===typeof e[n]&&"object"===typeof r?e[n]=t(e[n],r):e[n]="object"===typeof r?t({},r):r}for(var n=0,o=arguments.length;n<o;n++)c(arguments[n],r);return e},extend:function(t,e,r){return c(e,(function(e,o){t[o]=r&&"function"===typeof e?n(e,r):e})),t},trim:function(t){return t.replace(/^\s*/,"").replace(/\s*$/,"")}}},function(t,e,r){t.exports=r(12)},function(t,e,r){"use strict";t.exports=function(t,e){return function(){for(var r=new Array(arguments.length),n=0;n<r.length;n++)r[n]=arguments[n];return t.apply(e,r)}}},function(t,e,r){"use strict";var n=r(0);function o(t){return encodeURIComponent(t).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}t.exports=function(t,e,r){if(!e)return t;var i;if(r)i=r(e);else if(n.isURLSearchParams(e))i=e.toString();else{var a=[];n.forEach(e,(function(t,e){null!==t&&"undefined"!==typeof t&&(n.isArray(t)?e+="[]":t=[t],n.forEach(t,(function(t){n.isDate(t)?t=t.toISOString():n.isObject(t)&&(t=JSON.stringify(t)),a.push(o(e)+"="+o(t))})))})),i=a.join("&")}if(i){var u=t.indexOf("#");-1!==u&&(t=t.slice(0,u)),t+=(-1===t.indexOf("?")?"?":"&")+i}return t}},function(t,e,r){"use strict";t.exports=function(t){return!(!t||!t.__CANCEL__)}},function(t,e,r){"use strict";(function(e){var n=r(0),o=r(19),i={"Content-Type":"application/x-www-form-urlencoded"};function a(t,e){!n.isUndefined(t)&&n.isUndefined(t["Content-Type"])&&(t["Content-Type"]=e)}var u={adapter:function(){var t;return("undefined"!==typeof XMLHttpRequest||"undefined"!==typeof e&&"[object process]"===Object.prototype.toString.call(e))&&(t=r(6)),t}(),transformRequest:[function(t,e){return o(e,"Accept"),o(e,"Content-Type"),n.isFormData(t)||n.isArrayBuffer(t)||n.isBuffer(t)||n.isStream(t)||n.isFile(t)||n.isBlob(t)?t:n.isArrayBufferView(t)?t.buffer:n.isURLSearchParams(t)?(a(e,"application/x-www-form-urlencoded;charset=utf-8"),t.toString()):n.isObject(t)?(a(e,"application/json;charset=utf-8"),JSON.stringify(t)):t}],transformResponse:[function(t){if("string"===typeof t)try{t=JSON.parse(t)}catch(e){}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};
vendor: 1,549 bytes, line 539
539n.forEach(["delete","get","head"],(function(t){u.headers[t]={}})),n.forEach(["post","put","patch"],(function(t){u.headers[t]=n.merge(i)})),t.exports=u}).call(this,r(18))},function(t,e,r){"use strict";var n=r(0),o=r(20),i=r(3),a=r(22),u=r(25),s=r(26),c=r(7);t.exports=function(t){return new Promise((function(e,f){var l=t.data,p=t.headers;n.isFormData(l)&&delete p["Content-Type"];var h=new XMLHttpRequest;if(t.auth){var d=t.auth.username||"",m=t.auth.password||"";p.Authorization="Basic "+btoa(d+":"+m)}var y=a(t.baseURL,t.url);if(h.open(t.method.toUpperCase(),i(y,t.params,t.paramsSerializer),!0),h.timeout=t.timeout,h.onreadystatechange=function(){if(h&&4===h.readyState&&(0!==h.status||h.responseURL&&0===h.responseURL.indexOf("file:"))){var r="getAllResponseHeaders"in h?u(h.getAllResponseHeaders()):null,n={data:t.responseType&&"text"!==t.responseType?h.response:h.responseText,status:h.status,statusText:h.statusText,headers:r,config:t,request:h};o(e,f,n),h=null}},h.onabort=function(){h&&(f(c("Request aborted",t,"ECONNABORTED",h)),h=null)},h.onerror=function(){f(c("Network Error",t,null,h)),h=null},h.ontimeout=function(){var e="timeout of "+t.timeout+"ms exceeded";t.timeoutErrorMessage&&(e=t.timeoutErrorMessage),f(c(e,t,"ECONNABORTED",h)),h=null},n.isStandardBrowserEnv()){var v=r(27),g=(t.withCredentials||s(y))&&t.xsrfCookieName?v.read(t.xsrfCookieName):void 0;g&&(p[t.xsrfHeaderName]=g)}if("setRequestHeader"in h&&n.forEach(p,(function(t,e){"undefined"===typeof l&&"content-type"===e.toLowerCase()?delete p[e]:h.setRequestHeader(e,t)}
539)),n.isUndefined(t.withCredentials)||(h.withCredentials=!!t.withCredentials),t.responseType)try{h.responseType=t.responseType}catch(w){if("json"!==t.responseType)throw w}"function"===typeof t.onDownloadProgress&&h.addEventListener("progress",t.onDownloadProgress),"function"===typeof t.onUploadProgress&&h.upload&&h.upload.addEventListener("progress",t.onUploadProgress),t.cancelToken&&t.cancelToken.promise.then((function(t){h&&(h.abort(),f(t),h=null)})),void 0===l&&(l=null),h.send(l)}))}},function(t,e,r){"use strict";var n=r(21);t.exports=function(t,e,r,o,i){var a=new Error(t);return n(a,e,r,o,i)}},function(t,e,r){"use strict";var n=r(0);t.exports=function(t,e){e=e||{};var r={},o=["url","method","params","data"],i=["headers","auth","proxy"],a=["baseURL","url","transformRequest","transformResponse","paramsSerializer","timeout","withCredentials","adapter","responseType","xsrfCookieName","xsrfHeaderName","onUploadProgress","onDownloadProgress","maxContentLength","validateStatus","maxRedirects","httpAgent","httpsAgent","cancelToken","socketPath"];n.forEach(o,(function(t){"undefined"!==typeof e[t]&&(r[t]=e[t])})),n.forEach(i,(function(o){n.isObject(e[o])?r[o]=n.deepMerge(t[o],e[o]):"undefined"!==typeof e[o]?r[o]=e[o]:n.isObject(t[o])?r[o]=n.deepMerge(t[o]):"undefined"!==typeof t[o]&&(r[o]=t[o])})),n.forEach(a,(function(n){"undefined"!==typeof e[n]?r[n]=e[n]:"undefined"!==typeof t[n]&&(r[n]=t[n])}));var u=o.concat(i).concat(a),s=Object.keys(e).filter((function(t){return-1===u.indexOf(t)}));return n.forEach(s,(function(n){"undefined"!==typeof e[n]?r[n]=e[n]:"undefined"!==typeof t[n]&&(r[n]=t[n])})),r}},function(t,e,r){"use strict";function n(t){this.message=t}n.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},n.prototype.__CANCEL__=!0,t.exports=n},function(t,e,r){t.exports=r(13)},function(t,e,r){t.exports=r(30)},function(t,e,r){var n=function(t){"use strict";var e=Object.prototype,r=e.hasOwnProperty,n="function"===typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",a=n.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(S){u=function(t,e,r){return t[e]=r}}function s(t,e,r,n){var o=e&&e.prototype instanceof l?e:l,i=Object.create(o.prototype),a=new L(n||[]);return i._invoke=function(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return j()}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var u=x(a,r);if(u){if(u===f)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var s=c(t,e,r);if("normal"===s.type){if(n=r.done?"completed":"suspendedYield",s.arg===f)continue;return{value:s.arg,done:r.done}}"throw"===s.type&&(n="completed",r.method="throw",r.arg=s.arg)}}}(t,r,a),i}function c(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(S){return{type:"throw",arg:S}}}t.wrap=s;var f={};function l(){}function p(){}function h(){}var d={};d[o]=function(){return this};var m=Object.getPrototypeOf,y=m&&m(m(T([])));y&&y!==e&&r.call(y,o)&&(d=y);var v=h.prototype=l.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){var n;this._invoke=function(o,i){function a(){return new e((function(n,a){!function n(o,i,a,u){var s=c(t[o],t,i);if("throw"!==s.type){var f=s.arg,l=f.value;return l&&"object"===typeof l&&r.call(l,"__await")?e.resolve(l.__await).then((function(t){n("next",t,a,u)}),(function(t){n("throw",t,a,u)})):e.resolve(l).then((function(t){f.value=t,a(f)}),(function(t){return n("throw",t,a,u)}))}u(s.arg)}(o,i,n,a)}))}return n=n?n.then(a,a):a()}}function x(t,e){var r=t.iterator[e.method];if(void 0===r){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method))return f;e.method="throw",e.arg=new TypeError("The iterator does not provide a 'throw' method")}return f}var n=c(r,t.iterator,e.arg);
vendor: 4,150 bytes, line 539
539if("throw"===n.type)return e.method="throw",e.arg=n.arg,e.delegate=null,f;var o=n.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):o:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function b(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function E(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function L(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(b,this),this.reset(!0)}function T(t){if(t){var e=t[o];if(e)return e.call(t);if("function"===typeof t.next)return t;if(!isNaN(t.length)){var n=-1,i=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return i.next=i}}return{next:j}}function j(){return{value:void 0,done:!0}}return p.prototype=v.constructor=h,h.constructor=p,p.displayName=u(h,a,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"===typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,a,"GeneratorFunction")),t.prototype=Object.create(v),t},t.awrap=function(t){return{__await:t}},g(w.prototype),w.prototype[i]=function(){return this},t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(s(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(v),u(v,a,"Generator"),v[o]=function(){return this},v.toString=function(){return"[object Generator]"},t.keys=function(t){var e=[];for(var r in t)e.push(r);return e.reverse(),function r(){for(;e.length;){var n=e.pop();if(n in t)return r.value=n,r.done=!1,r}return r.done=!0,r}},t.values=T,L.prototype={constructor:L,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var u=r.call(i,"catchLoc"),s=r.call(i,"finallyLoc");if(u&&s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),E(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;E(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:T(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}(t.exports);try{regeneratorRuntime=n}catch(o){Function("r","regeneratorRuntime = r")(n)}},function(t,e,r){"use strict";
vendor: 5,678 bytes, line 539
539var n=r(0),o=r(2),i=r(14),a=r(8);function u(t){var e=new i(t),r=o(i.prototype.request,e);return n.extend(r,i.prototype,e),n.extend(r,e),r}var s=u(r(5));s.Axios=i,s.create=function(t){return u(a(s.defaults,t))},s.Cancel=r(9),s.CancelToken=r(28),s.isCancel=r(4),s.all=function(t){return Promise.all(t)},s.spread=r(29),t.exports=s,t.exports.default=s},function(t,e,r){"use strict";var n=r(0),o=r(3),i=r(15),a=r(16),u=r(8);function s(t){this.defaults=t,this.interceptors={request:new i,response:new i}}s.prototype.request=function(t){"string"===typeof t?(t=arguments[1]||{}).url=arguments[0]:t=t||{},(t=u(this.defaults,t)).method?t.method=t.method.toLowerCase():this.defaults.method?t.method=this.defaults.method.toLowerCase():t.method="get";var e=[a,void 0],r=Promise.resolve(t);for(this.interceptors.request.forEach((function(t){e.unshift(t.fulfilled,t.rejected)})),this.interceptors.response.forEach((function(t){e.push(t.fulfilled,t.rejected)}));e.length;)r=r.then(e.shift(),e.shift());return r},s.prototype.getUri=function(t){return t=u(this.defaults,t),o(t.url,t.params,t.paramsSerializer).replace(/^\?/,"")},n.forEach(["delete","get","head","options"],(function(t){s.prototype[t]=function(e,r){return this.request(n.merge(r||{},{method:t,url:e}))}})),n.forEach(["post","put","patch"],(function(t){s.prototype[t]=function(e,r,o){return this.request(n.merge(o||{},{method:t,url:e,data:r}))}})),t.exports=s},function(t,e,r){"use strict";var n=r(0);function o(){this.handlers=[]}o.prototype.use=function(t,e){return this.handlers.push({fulfilled:t,rejected:e}),this.handlers.length-1},o.prototype.eject=function(t){this.handlers[t]&&(this.handlers[t]=null)},o.prototype.forEach=function(t){n.forEach(this.handlers,(function(e){null!==e&&t(e)}))},t.exports=o},function(t,e,r){"use strict";var n=r(0),o=r(17),i=r(4),a=r(5);function u(t){t.cancelToken&&t.cancelToken.throwIfRequested()}t.exports=function(t){return u(t),t.headers=t.headers||{},t.data=o(t.data,t.headers,t.transformRequest),t.headers=n.merge(t.headers.common||{},t.headers[t.method]||{},t.headers),n.forEach(["delete","get","head","post","put","patch","common"],(function(e){delete t.headers[e]})),(t.adapter||a.adapter)(t).then((function(e){return u(t),e.data=o(e.data,e.headers,t.transformResponse),e}),(function(e){return i(e)||(u(t),e&&e.response&&(e.response.data=o(e.response.data,e.response.headers,t.transformResponse))),Promise.reject(e)}))}},function(t,e,r){"use strict";var n=r(0);t.exports=function(t,e,r){return n.forEach(r,(function(r){t=r(t,e)})),t}},function(t,e){var r,n,o=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function u(t){if(r===setTimeout)return setTimeout(t,0);if((r===i||!r)&&setTimeout)return r=setTimeout,setTimeout(t,0);try{return r(t,0)}catch(e){try{return r.call(null,t,0)}catch(e){return r.call(this,t,0)}}}!function(){try{r="function"===typeof setTimeout?setTimeout:i}catch(t){r=i}try{n="function"===typeof clearTimeout?clearTimeout:a}catch(t){n=a}}();var s,c=[],f=!1,l=-1;function p(){f&&s&&(f=!1,s.length?c=s.concat(c):l=-1,c.length&&h())}function h(){if(!f){var t=u(p);f=!0;for(var e=c.length;e;){for(s=c,c=[];++l<e;)s&&s[l].run();l=-1,e=c.length}s=null,f=!1,function(t){if(n===clearTimeout)return clearTimeout(t);if((n===a||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(t);try{n(t)}catch(e){try{return n.call(null,t)}catch(e){return n.call(this,t)}}}(t)}}function d(t,e){this.fun=t,this.array=e}function m(){}o.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)e[r-1]=arguments[r];c.push(new d(t,e)),1!==c.length||f||u(h)},d.prototype.run=function(){this.fun.apply(null,this.array)},o.title="browser",o.browser=!0,o.env={},o.argv=[],o.version="",o.versions={},o.on=m,o.addListener=m,o.once=m,o.off=m,o.removeListener=m,o.removeAllListeners=m,o.emit=m,o.prependListener=m,o.prependOnceListener=m,o.listeners=function(t){return[]},o.binding=function(t){throw new Error("process.binding is not supported")},o.cwd=function(){return"/"},o.chdir=function(t){throw new Error("process.chdir is not supported")},o.umask=function(){return 0}},function(t,e,r){"use strict";var n=r(0);t.exports=function(t,e){n.forEach(t,(function(r,n){n!==e&&n.toUpperCase()===e.toUpperCase()&&(t[e]=r,delete t[n])}))}},function(t,e,r){"use strict";var n=r(7);t.exports=function(t,e,r){var o=r.config.validateStatus;!o||o(r.status)?t(r):e(n("Request failed with status code "+r.status,r.config,null,r.request,r))}},function(t,e,r){"use strict";t.exports=function(t,e,r,n,o){return t.config=e,r&&(t.code=r),t.request=n,t.response=o,t.isAxiosError=!0,t.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code}},t}},function(t,e,r){"use strict";var n=r(23),o=r(24);t.exports=function(t,e){return t&&!n(e)?o(t,e):e}},function(t,e,r){"use strict";t.exports=function(t){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(t)}},function(t,e,r){"use strict";t.exports=function(t,e){return e?t.replace(/\/+$/,"")+"/"+e.replace(/^\/+/,""):t}},function(t,e,r){"use strict";var n=r(0),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];t.exports=function(t){var e,r,i,a={};return t?(n.forEach(t.split("\n"),(function(t){if(i=t.indexOf(":"),e=n.trim(t.substr(0,i)).toLowerCase(),r=n.trim(t.
539substr(i+1)),e){if(a[e]&&o.indexOf(e)>=0)return;a[e]="set-cookie"===e?(a[e]?a[e]:[]).concat([r]):a[e]?a[e]+", "+r:r}})),a):a}},function(t,e,r){"use strict";var n=r(0);t.exports=n.isStandardBrowserEnv()?function(){var t,e=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");function o(t){var n=t;return e&&(r.setAttribute("href",n),n=r.href),r.setAttribute("href",n),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}return t=o(window.location.href),function(e){var r=n.isString(e)?o(e):e;return r.protocol===t.protocol&&r.host===t.host}}():function(){return!0}},function(t,e,r){"use strict";var n=r(0);t.exports=n.isStandardBrowserEnv()?{write:function(t,e,r,o,i,a){var u=[];u.push(t+"="+encodeURIComponent(e)),n.isNumber(r)&&u.push("expires="+new Date(r).toGMTString()),n.isString(o)&&u.push("path="+o),n.isString(i)&&u.push("domain="+i),!0===a&&u.push("secure"),document.cookie=u.join("; ")},read:function(t){var e=document.cookie.match(new RegExp("(^|;\\s*)("+t+")=([^;]*)"));return e?decodeURIComponent(e[3]):null},remove:function(t){this.write(t,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},function(t,e,r){"use strict";var n=r(9);function o(t){if("function"!==typeof t)throw new TypeError("executor must be a function.");var e;this.promise=new Promise((function(t){e=t}));var r=this;t((function(t){r.reason||(r.reason=new n(t),e(r.reason))}))}o.prototype.throwIfRequested=function(){if(this.reason)throw this.reason},o.source=function(){var t;return{token:new o((function(e){t=e})),cancel:t}},t.exports=o},function(t,e,r){"use strict";t.exports=function(t){return function(e){return t.apply(null,e)}}},function(t,e,r){"use strict";r.r(e);var n=r(1),o=r.n(n);function i(t,e,r,n,o,i,a){try{var u=t[i](a),s=u.value}catch(c){return void r(c)}u.done?e(s):Promise.resolve(s).then(n,o)}function a(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var a=t.apply(e,r);function u(t){i(a,n,o,u,s,"next",t)}function s(t){i(a,n,o,u,s,"throw",t)}u(void 0)}))}}var u=r(10),s=r.n(u);var c=function(t){return function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"GET";return r=r.toUpperCase(),new Promise((function(n){var o;"GET"===r&&(o=s.a.get(t,{params:e})),o.then((function(t){n(t.data)}))}))}("/apps/broken-link-manager/receive_id",t,"GET")};function f(){return(f=a(o.a.mark((function t(e,r,n){var i;return o.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return i={shop:e,code:r,gbaid:n},t.next=3,c(i);case 3:t.sent;case 4:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var l=window.location.href;if(-1!=l.indexOf("gbaid")){var p=l.split("gbaid");if(void 0!=p[1]){var h=window.location.pathname+window.location.search;window.history.pushState({},0,h),function(t,e,r){f.apply(this,arguments)}
539("yourstrulyeu.myshopify.com","",p[1])}}}]);
540</script>
540<!-- END app block -->
540<script src="https://cdn.shopify.com/extensions/01a10bc5-4b8d-7ca7-8a4c-2623bcb670ca/form-builder-by-hulkapps-75/assets/form-builder-script.js" type="text/javascript" defer="defer"></script>
540
541<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
542<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: 88856133967,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "search"};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 542
542
543<script>
544  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
545</script>
vendor: 1 bytes, line 545
545
546<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}
546).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: 88856133967,storefrontBaseUrl: "https://yourstruly.eu",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://yourstruly.beauty/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab"],webPixelsConfigList: [{"id":"3883794767","configuration":"{\"mailchimp_store_id\":\"store_fihi1h8j8r7ol1wb9lgx\", \"mailchimp_user_id\":\"40764701\",\"mailchimp_list_id\":\"c097d90f0a\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"e357a49eadeb6216a959d63fa3fb8f55","type":"APP","apiClientId":2585307,"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":"3057221967","configuration":"{\"pixel_id\":\"449006836090407\",\"pixel_type\":\"facebook_pixel\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"bd2f978c17a94bbb8a74d43de2165dc5","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":"2298413391","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-223N06V3CX\\\"],\\\"target_country\\\":\\\"ZZ\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-223N06V3CX\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"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":"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":"Yours Truly","paymentSettings":{"currencyCode":"EUR"}
546,"myshopifyDomain":"yourstrulyeu.myshopify.com","countryCode":"DE","storefrontUrl":"https:\/\/yourstruly.beauty"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://yourstruly.beauty/cdn","7ec887c8w14f9f074p854094e1m1370c602",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"181808136527","themeStoreId":"714","themePublished":"true","eventMetadataId":"ebbc49c2-6718-4b17-9903-fefe44fd8dc2","pageType":"searchresults","shopId":"88856133967","storefrontBaseUrl":"https:\/\/yourstruly.eu","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\"]","isMerchantRequest":"false","hashVersion":"7ec887c8w14f9f074p854094e1m1370c602","publish":"custom","events":"[[\"page_viewed\",{}],[\"search_submitted\",{\"searchResult\":{\"query\":\"\",\"productVariants\":[]}}]]"});})();</script>
546<script>
547  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
548  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
549  window.ShopifyAnalytics.meta.currency = 'USD';
550  var meta = {"products":[],"page":{"pageType":"searchresults","requestId":"9c2d571d-b68b-4111-81b3-61e05af2045e-1791588901"}};
551  for (var attr in meta) {
552    window.ShopifyAnalytics.meta[attr] = meta[attr];
553  }
554</script>
vendor: 1 bytes, line 554
554
555<script class="analytics">
556  (function () {
557    var customDocumentWrite = function(content) {
558      var jquery = null;
559
560      if (window.jQuery) {
561        jquery = window.jQuery;
562      } else if (window.Checkout && window.Checkout.$) {
563        jquery = window.Checkout.$;
564      }
565
566      if (jquery) {
567        jquery('body').append(content);
568      }
569    };
570
571    var hasLoggedConversion = function(token) {
572      if (token) {
573        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
574      }
575      return false;
576    }
577
578    var setCookieIfConversion = function(token) {
579      if (token) {
580        var twoMonthsFromNow = new Date(Date.now());
581        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
582
583        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
584      }
585    }
586
587    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
588    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
589    if (trekkie.integrations) {
590      return;
591    }
592    trekkie.methods = [
593      'identify',
594      'page',
595      'ready',
596      'track',
597      'trackForm',
598      'trackLink'
599    ];
600    trekkie.factory = function(method) {
601      return function() {
602        var args = Array.prototype.slice.call(arguments);
603        args.unshift(method);
604        trekkie.push(args);
605        if (method == 'track' || method == 'page') {
606          var pageUrl;
607          try {
608            pageUrl = window.location.href;
609          } catch (e) {}
610          var pageReferrer;
611          try {
612            pageReferrer = document.referrer;
613          } catch (e) {}
614          try {
615            if (window.__TREKKIE_SHIM_QUEUE == null) {
616              window.__TREKKIE_SHIM_QUEUE = [];
617            }
618            window.__TREKKIE_SHIM_QUEUE.push({
619              from: 'trekkie-stub',
620              method: method,
621              args: args.slice(1),
622              pageContext: {
623                url: pageUrl,
624                referrer: pageReferrer
625              }
626            });
627          } catch (e) {
628            // no-op
629          }
630        }
631        return trekkie;
632      };
633    };
634    for (var i = 0; i < trekkie.methods.length; i++) {
635      var key = trekkie.methods[i];
636      trekkie[key] = trekkie.factory(key);
637    }
638    trekkie.load = function(config) {
639      trekkie.config = config || {};
640      trekkie.config.initialDocumentCookie = document.cookie;
641      var first = document.getElementsByTagName('script')[0];
642var script = document.createElement('script');
643script.type = 'text/javascript';
644script.onerror = function(e) {
645  var scriptFallback = document.createElement('script');
646  scriptFallback.type = 'text/javascript';
647  scriptFallback.onerror = function(error) {
648          var Monorail = {
649      produce: function produce(monorailDomain, schemaId, payload) {
650        var currentMs = new Date().getTime();
651        var event = {
652          schema_id: schemaId,
653          payload: payload,
654          metadata: {
655            event_created_at_ms: currentMs,
656            event_sent_at_ms: currentMs
657          }
658        };
659        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
660      },
661      sendRequest: function sendRequest(endpointUrl, payload) {
662        // Try the sendBeacon API
663        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
664          var blobData = new window.Blob([payload], {
665            type: 'text/plain'
666          });
667
668          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
669            return true;
670          } // sendBeacon was not successful
671
672        } // XHR beacon
673
674        var xhr = new XMLHttpRequest();
675
676        try {
677          xhr.open('POST', endpointUrl);
678          xhr.setRequestHeader('Content-Type', 'text/plain');
679          xhr.send(payload);
680        } catch (e) {
681          console.log(e);
682        }
683
684        return false;
685      },
686      isIos12: function isIos12() {
687        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
688      }
689    };
690    Monorail.produce('monorail-edge.shopifysvc.com',
691      'trekkie_storefront_load_errors/1.1',
692      {shop_id: 88856133967,
693      theme_id: 181808136527,
694      app_name: "storefront",
695      context_url: window.location.href,
696      source_url: "//yourstruly.beauty/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js"});
697
698  };
699  scriptFallback.async = true;
700  scriptFallback.src = '//yourstruly.beauty/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js';
701  first.parentNode.insertBefore(scriptFallback, first);
702};
703script.async = true;
704script.src = '//yourstruly.beauty/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js';
705first.parentNode.insertBefore(script, first);
706
707    };
708    trekkie.load(
709      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":88856133967,"isMerchantRequest":null,"themeId":181808136527,"themeCityHash":"10827960715669303791","contentLanguage":"en","currency":"USD","eventMetadataId":"ebbc49c2-6718-4b17-9903-fefe44fd8dc2"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
710    );
711
712    var loaded = false;
713    trekkie.ready(function() {
714      if (loaded) return;
715      loaded = true;
716
717      window.ShopifyAnalytics.lib = window.trekkie;
718
719      var originalDocumentWrite = document.write;
720      document.write = customDocumentWrite;
721      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
722      document.write = originalDocumentWrite;
723
724      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
725      var token = match? match[1]: undefined;
726      if (!hasLoggedConversion(token)) {
727        setCookieIfConversion(token);
728        window.ShopifyAnalytics.lib.track("Performed Search",{"query":null},undefined,undefined,{"shopifyEmitted":true});
729      }
730    });
731
732    window.ShopifyAnalytics.lib.page(null,{"pageType":"searchresults","requestId":"9c2d571d-b68b-4111-81b3-61e05af2045e-1791588901","shopifyEmitted":true});
733
734    var eventsListenerScript = document.createElement('script');
735    eventsListenerScript.async = true;
736    eventsListenerScript.src = "//yourstruly.beauty/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
737    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
738})();</script>
vendor: 1 bytes, line 738
738
739<script
740  defer
741  src="https://yourstruly.beauty/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.10.1.min.js"
742  data-application="storefront-renderer"
743  data-shop-id="88856133967"
744  data-render-region="gcp-us-west1"
745  data-page-type="search"
746  data-theme-instance-id="181808136527"
747  data-theme-name="Focal"
748  data-theme-version="12.5.0"
749  data-monorail-region="shop_domain"
750  data-resource-timing-sampling-rate="10"
751  data-shs="true"
752  data-shs-beacon="true"
753  data-shs-export-with-fetch="true"
754  data-shs-logs-sample-rate="1"
755  data-shs-beacon-endpoint="https://yourstruly.beauty/api/collect"
756></script>
756
757<meta name="shopify-y" content="4d61d665-ffc9-4371-a5fb-22e57ebd3bb8" data-expiration="1823146501000"><meta name="shopify-s" content="585349b6-e792-42bc-8211-ad8ffab527e2" data-expiration="1791590701000">
758</head><body class="no-focus-outline  features--image-zoom" data-instant-allow-query-string><svg class="visually-hidden">
759      <linearGradient id="rating-star-gradient-half">
760        <stop offset="50%" stop-color="rgb(var(--product-star-rating))" />
761        <stop offset="50%" stop-color="rgb(var(--product-star-rating))" stop-opacity="0.4" />
762      </linearGradient>
763    </svg>
764
765    <a href="#main" class="visually-hidden skip-to-content">Skip to content</a>
766    <loading-bar class="loading-bar"></loading-bar><!-- BEGIN sections: header-group -->
767<div id="shopify-section-sections--25278970954063__header" class="shopify-section shopify-section-group-header-group shopify-section--header"><style>
768  :root {
769    --enable-sticky-header: 1;
770    --enable-transparent-header: 0;
771    --loading-bar-background: 0, 0, 0; /* Prevent the loading bar to be invisible */
772  }
773
774  #shopify-section-sections--25278970954063__header {--header-background: 255, 255, 255;
775    --header-text-color: 0, 0, 0;
776    --header-border-color: 217, 217, 217;
777    --reduce-header-padding: 0;position: -webkit-sticky;
778      position: sticky;
779      top: 0;z-index: 4;
780  }.shopify-section--announcement-bar ~ #shopify-section-sections--25278970954063__header {
781      top: calc(var(--enable-sticky-announcement-bar, 0) * var(--announcement-bar-height, 0px));
782    }#shopify-section-sections--25278970954063__header .header__logo-image {
783    max-width: 100px;
784  }
785
786  @media screen and (min-width: 741px) {
787    #shopify-section-sections--25278970954063__header .header__logo-image {
788      max-width: 140px;
789    }
790  }
791
792  @media screen and (min-width: 1200px) {}</style>
793
794<store-header sticky  class="header header--bordered " role="banner"><div class="container">
795    <div class="header__wrapper">
796      <!-- LEFT PART -->
797      <nav class="header__inline-navigation"  aria-label="Secondary Navigation"><div class="header__icon-list hidden-desk"><button is="toggle-button" class="header__icon-wrapper tap-area hidden-desk" aria-controls="mobile-menu-drawer" aria-label="Search" aria-expanded="false">
798              <span class="visually-hidden">Navigation</span><svg focusable="false" width="18" height="14" class="icon icon--header-hamburger   " viewBox="0 0 18 14">
799        <path d="M0 1h18M0 13h18H0zm0-6h18H0z" fill="none" stroke="currentColor" stroke-width="1.2"></path>
800      </svg></button><a href="/search" is="toggle-link" class="header__icon-wrapper tap-area hidden-lap hidden-desk" aria-controls="search-drawer" aria-expanded="false" aria-label="Search"><svg focusable="false" width="18" height="18" class="icon icon--header-search   " viewBox="0 0 18 18">
801        <path d="M12.336 12.336c2.634-2.635 2.682-6.859.106-9.435-2.576-2.576-6.8-2.528-9.435.106C.373 5.642.325 9.866 2.901 12.442c2.576 2.576 6.8 2.528 9.435-.106zm0 0L17 17" fill="none" stroke="currentColor" stroke-width="1.2"></path>
802      </svg></a>
803        </div><div class="header__search-bar predictive-search hidden-pocket">
804            <form class="predictive-search__form" action="/search" method="get" role="search">
805              <input type="hidden" name="type" value="product"><svg focusable="false" width="18" height="18" class="icon icon--header-search   " viewBox="0 0 18 18">
806        <path d="M12.336 12.336c2.634-2.635 2.682-6.859.106-9.435-2.576-2.576-6.8-2.528-9.435.106C.373 5.642.325 9.866 2.901 12.442c2.576 2.576 6.8 2.528 9.435-.106zm0 0L17 17" fill="none" stroke="currentColor" stroke-width="1.2"></path>
807      </svg><input class="predictive-search__input" is="predictive-search-input" type="text" name="q" autocomplete="off" autocorrect="off" aria-controls="search-drawer" aria-expanded="false" aria-label="Search" placeholder="What are you looking for?" >
808            </form>
809          </div></nav>
810
811      <!-- LOGO PART --><span class="header__logo"><a class="header__logo-link" href="/">
812            <span class="visually-hidden">Yours Truly</span>
813            <img class="header__logo-image" width="1000" height="100" src="//yourstruly.beauty/cdn/shop/files/YoursTruly_Inline-green_GOLD.svg?v=1736860910&
813width=280" alt="grünes-yours-truly-logo-auf-transparenzhintergrund"></a></span><!-- SECONDARY LINKS PART -->
814      <div class="header__secondary-links"><form method="post" action="/localization" id="header-localization-form" accept-charset="UTF-8" class="header__cross-border hidden-pocket" 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="/search" /><div class="popover-container">
815                <input type="hidden" name="locale_code" value="en">
816                <span class="visually-hidden">Language</span>
817
818                <button type="button" is="toggle-button" class="popover-button text--small" aria-expanded="false" aria-controls="header-localization-form-locale">English<svg focusable="false" width="9" height="6" class="icon icon--chevron icon--inline  " viewBox="0 0 12 8">
819        <path fill="none" d="M1 1l5 5 5-5" stroke="currentColor" stroke-width="1.2"></path>
820      </svg></button>
821
822                <popover-content id="header-localization-form-locale" class="popover">
823                  <span class="popover__overlay"></span>
824
825                  <header class="popover__header">
826                    <span class="popover__title heading h6">Language</span>
827
828                    <button type="button" class="popover__close-button tap-area tap-area--large" data-action="close" title="Close"><svg focusable="false" width="14" height="14" class="icon icon--close   " viewBox="0 0 14 14">
829        <path d="M13 13L1 1M13 1L1 13" stroke="currentColor" stroke-width="1.2" fill="none"></path>
830      </svg></button>
831                  </header>
832
833                  <div class="popover__content">
834                    <div class="popover__choice-list"><button type="submit" name="locale_code" value="en" class="popover__choice-item">
835                          <span class="popover__choice-label" aria-current="true">English</span>
836                        </button><button type="submit" name="locale_code" value="de" class="popover__choice-item">
837                          <span class="popover__choice-label" >Deutsch</span>
838                        </button></div>
839                  </div>
840                </popover-content>
841              </div></form><div class="header__icon-list"><button is="toggle-button" class="header__icon-wrapper tap-area hidden-phone " aria-controls="newsletter-popup" aria-expanded="false">
842            <span class="visually-hidden">Newsletter</span><svg focusable="false" width="20" height="16" class="icon icon--header-email   " viewBox="0 0 20 16">
843        <path d="M19 4l-9 5-9-5" fill="none" stroke="currentColor" stroke-width="1.2"></path>
844        <path stroke="currentColor" fill="none" stroke-width="1.2" d="M1 1h18v14H1z"></path>
845      </svg></button><a href="/account/login" class="header__icon-wrapper tap-area hidden-phone " aria-label="Login"><svg focusable="false" width="18" height="17" class="icon icon--header-customer   " viewBox="0 0 18 17">
846        <circle cx="9" cy="5" r="4" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linejoin="round"></circle>
847        <path d="M1 17v0a4 4 0 014-4h8a4 4 0 014 4v0" fill="none" stroke="currentColor" stroke-width="1.2"></path>
848      </svg></a>
849        </div></div>
850    </div><nav class="header__bottom-navigation hidden-pocket hidden-lap" role="navigation" aria-label="Primary Navigation">
851        <desktop-navigation>
852  <ul class="header__linklist list--unstyled " role="list"><li class="header__linklist-item " data-item-title="About Us">
853        <a class="header__linklist-link link--animated" href="/pages/ueber-uns" >About Us</a></li><li class="header__linklist-item has-dropdown" data-item-title="Products">
854        <a class="header__linklist-link link--animated" href="/collections/produktsuche" aria-controls="desktop-menu-2" aria-expanded="false">Products</a><div hidden id="desktop-menu-2" class="mega-menu" >
855              <div class="container">
856                <div class="mega-menu__inner"><div class="mega-menu__columns-wrapper"><div class="mega-menu__column"><a href="/collections/cleanse" class="mega-menu__title heading heading--small">Cleanse</a><ul class="linklist list--unstyled" role="list"><li class="linklist__item">
857                                  <a href="/products/all-hair-types-shampoo" class="link--faded">All Hair Types Shampoo</a>
858                                </li><li class="linklist__item">
859                                  <a href="/products/volume-shampoo" class="link--faded">Volume Shampoo</a>
860                                </li><li class="linklist__item">
861                                  <a href="/products/smoothing-shampoo" class="link--faded">Smoothing Shampoo</a>
862                                </li><li class="linklist__item">
863                                  <a href="/products/repair-shampoo" class="link--faded">Repair Shampoo</a>
864                                </li><li class="linklist__item">
865                                  <a href="/products/deep-cleansing-shampoo" class="link--faded">Deep Cleansing Shampoo</a>
866                                </li><li class="linklist__item">
867                                  <a href="/products/sensitive-scalp-shampoo" class="link--faded">Sensitive Scalp Shampoo</a>
868                                </li><li class="linklist__item">
869                                  <a href="/products/blonde-shampoo" class="link--faded">Blonde Shampoo</a>
870                                </li></ul></div><div class="mega-menu__column"><a href="/collections/care" class="mega-menu__title heading heading--small">Care</a><ul class="linklist list--unstyled" role="list"><li class="linklist__item">
871                                  <a href="/products/all-hair-types-conditioner" class="link--faded">All Hair Types Conditioner</a>
872                                </li><li class="linklist__item">
873                                  <a href="/products/smoothing-leave-in-cream" class="link--faded">Smoothing Leave-In Cream</a>
874                                </li><li class="linklist__item">
875                                  <a href="/products/smoothing-mask" class="link--faded">Smoothing Mask</a>
876                                </li><li class="linklist__item">
877                                  <a href="/products/repair-mask" class="link--faded">Repair Mask</a>
878                                </li></ul></div><div class="mega-menu__column"><a href="/collections/booster" class="mega-menu__title heading heading--small">Booster</a><ul class="linklist list--unstyled" role="list"><li class="linklist__item">
879                                  <a href="/products/strengthening-booster" class="link--faded">Strengthening Booster</a>
880                                </li><li class="linklist__item">
881                                  <a href="/products/curl-definition-booster" class="link--faded">Curl Definition Booster</a>
882                                </li><li class="linklist__item">
883                                  <a href="/products/anti-frizz-booster" class="link--faded">
883Anti-Frizz Booster</a>
884                                </li><li class="linklist__item">
885                                  <a href="/products/volume-booster" class="link--faded">Volume Booster</a>
886                                </li><li class="linklist__item">
887                                  <a href="/products/deep-hydration-booster" class="link--faded">Deep Hydration Booster</a>
888                                </li></ul></div><div class="mega-menu__column"><a href="/collections/style" class="mega-menu__title heading heading--small">Style</a><ul class="linklist list--unstyled" role="list"><li class="linklist__item">
889                                  <a href="/products/styling-serum" class="link--faded">Styling Serum</a>
890                                </li><li class="linklist__item">
891                                  <a href="/products/grooming-cream" class="link--faded">Grooming Cream</a>
892                                </li><li class="linklist__item">
893                                  <a href="/products/dry-finish-cream" class="link--faded">Dry Finish Cream</a>
894                                </li><li class="linklist__item">
895                                  <a href="/products/structuring-cream" class="link--faded">Structuring Cream</a>
896                                </li><li class="linklist__item">
897                                  <a href="/products/sculpting-liquid-gel" class="link--faded">Sculpting Liquid Gel</a>
898                                </li><li class="linklist__item">
899                                  <a href="/products/styling-mousse" class="link--faded">Styling Mousse</a>
900                                </li><li class="linklist__item">
901                                  <a href="/products/fixing-cream" class="link--faded">Fixing Cream</a>
902                                </li></ul></div></div></div>
903              </div>
904            </div></li><li class="header__linklist-item " data-item-title="Contact">
905        <a class="header__linklist-link link--animated" href="/pages/kontakt" >Contact</a></li></ul>
906</desktop-navigation>
907      </nav></div>
908</store-header><cart-notification global hidden class="cart-notification "></cart-notification><mobile-navigation append-body id="mobile-menu-drawer" class="drawer drawer--from-left">
909  <span class="drawer__overlay"></span>
910
911  <div class="drawer__header drawer__header--shadowed">
912    <button type="button" class="drawer__close-button drawer__close-button--block tap-area" data-action="close" title="Close"><svg focusable="false" width="14" height="14" class="icon icon--close   " viewBox="0 0 14 14">
913        <path d="M13 13L1 1M13 1L1 13" stroke="currentColor" stroke-width="1.2" fill="none"></path>
914      </svg></button>
915  </div>
916
917  <div class="drawer__content">
918    <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="1"><a href="/pages/ueber-uns" class="mobile-nav__link heading h5">About Us</a></li><li class="mobile-nav__item" data-level="1"><button is="toggle-button" class="mobile-nav__link heading h5" aria-controls="mobile-menu-2" aria-expanded="false">Products<span class="animated-plus"></span>
919            </button>
920
921            <collapsible-content id="mobile-menu-2" class="collapsible"><ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-2-1" aria-expanded="false">Cleanse<span class="animated-plus"></span>
922                        </button>
923
924                        <collapsible-content id="mobile-menu-2-1" class="collapsible">
925                          <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3">
926                                <a href="/products/all-hair-types-shampoo" class="mobile-nav__link">All Hair Types Shampoo</a>
927                              </li><li class="mobile-nav__item" data-level="3">
928                                <a href="/products/volume-shampoo" class="mobile-nav__link">Volume Shampoo</a>
929                              </li><li class="mobile-nav__item" data-level="3">
930                                <a href="/products/smoothing-shampoo" class="mobile-nav__link">Smoothing Shampoo</a>
931                              </li><li class="mobile-nav__item" data-level="3">
932                                <a href="/products/repair-shampoo" class="mobile-nav__link">Repair Shampoo</a>
933                              </li><li class="mobile-nav__item" data-level="3">
934                                <a href="/products/deep-cleansing-shampoo" class="mobile-nav__link">Deep Cleansing Shampoo</a>
935                              </li><li class="mobile-nav__item" data-level="3">
936                                <a href="/products/sensitive-scalp-shampoo" class="mobile-nav__link">Sensitive Scalp Shampoo</a>
937                              </li><li class="mobile-nav__item" data-level="3">
938                                <a href="/products/blonde-shampoo" class="mobile-nav__link">Blonde Shampoo</a>
939                              </li></ul>
940                        </collapsible-content></li><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-2-2" aria-expanded="false">Care<span class="animated-plus"></span>
941                        </button>
942
943                        <collapsible-content id="mobile-menu-2-2" class="collapsible">
944                          <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3">
945                                <a href="/products/all-hair-types-conditioner" class="mobile-nav__link">All Hair Types Conditioner</a>
946                              </li><li class="mobile-nav__item" data-level="3">
947                                <a href="/products/smoothing-leave-in-cream" class="mobile-nav__link">Smoothing Leave-In Cream</a>
948                              </li><li class="mobile-nav__item" data-level="3">
949                                <a href="/products/smoothing-mask" class="mobile-nav__link">Smoothing Mask</a>
950                              </li><li class="mobile-nav__item" data-level="3">
951                                <a href="/products/repair-mask" class="mobile-nav__link">Repair Mask</a>
952                              </li></ul>
953                        </collapsible-content></li><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-2-3" aria-expanded="false">Booster<span class="animated-plus"></span>
954                        </button>
955
956                        <collapsible-content id="mobile-menu-2-3" class="collapsible">
957                          <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3">
958                                <a href="/products/strengthening-booster" class="mobile-nav__link">Strengthening Booster</a>
959                              </li><li class="mobile-nav__item" data-level="3">
960                                <a href="/products/curl-definition-booster" class="mobile-nav__link">Curl Definition Booster</a>
961                              </li><li class="mobile-nav__item" data-level="3">
962                                <a href="/products/anti-frizz-booster" class="mobile-nav__link">
962Anti-Frizz Booster</a>
963                              </li><li class="mobile-nav__item" data-level="3">
964                                <a href="/products/volume-booster" class="mobile-nav__link">Volume Booster</a>
965                              </li><li class="mobile-nav__item" data-level="3">
966                                <a href="/products/deep-hydration-booster" class="mobile-nav__link">Deep Hydration Booster</a>
967                              </li></ul>
968                        </collapsible-content></li><li class="mobile-nav__item" data-level="2"><button is="toggle-button" class="mobile-nav__link" aria-controls="mobile-menu-2-4" aria-expanded="false">Style<span class="animated-plus"></span>
969                        </button>
970
971                        <collapsible-content id="mobile-menu-2-4" class="collapsible">
972                          <ul class="mobile-nav list--unstyled" role="list"><li class="mobile-nav__item" data-level="3">
973                                <a href="/products/styling-serum" class="mobile-nav__link">Styling Serum</a>
974                              </li><li class="mobile-nav__item" data-level="3">
975                                <a href="/products/grooming-cream" class="mobile-nav__link">Grooming Cream</a>
976                              </li><li class="mobile-nav__item" data-level="3">
977                                <a href="/products/dry-finish-cream" class="mobile-nav__link">Dry Finish Cream</a>
978                              </li><li class="mobile-nav__item" data-level="3">
979                                <a href="/products/structuring-cream" class="mobile-nav__link">Structuring Cream</a>
980                              </li><li class="mobile-nav__item" data-level="3">
981                                <a href="/products/sculpting-liquid-gel" class="mobile-nav__link">Sculpting Liquid Gel</a>
982                              </li><li class="mobile-nav__item" data-level="3">
983                                <a href="/products/styling-mousse" class="mobile-nav__link">Styling Mousse</a>
984                              </li><li class="mobile-nav__item" data-level="3">
985                                <a href="/products/fixing-cream" class="mobile-nav__link">Fixing Cream</a>
986                              </li></ul>
987                        </collapsible-content></li></ul></collapsible-content></li><li class="mobile-nav__item" data-level="1"><a href="/pages/kontakt" class="mobile-nav__link heading h5">Contact</a></li></ul>
988  </div><div class="drawer__footer drawer__footer--tight drawer__footer--bordered">
989      <div class="mobile-nav__footer"><a class="icon-text" href="/account/login"><svg focusable="false" width="18" height="17" class="icon icon--header-customer   " viewBox="0 0 18 17">
990        <circle cx="9" cy="5" r="4" fill="none" stroke="currentColor" stroke-width="1.2" stroke-linejoin="round"></circle>
991        <path d="M1 17v0a4 4 0 014-4h8a4 4 0 014 4v0" fill="none" stroke="currentColor" stroke-width="1.2"></path>
992      </svg>Account</a><form method="post" action="/localization" id="header-sidebar-localization-form" accept-charset="UTF-8" class="header__cross-border" 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="/search" /><div class="popover-container">
993                <input type="hidden" name="locale_code" value="en">
994                <span class="visually-hidden">Language</span>
995
996                <button type="button" is="toggle-button" class="popover-button text--xsmall tap-area" aria-expanded="false" aria-controls="header-sidebar-localization-form-locale">English<svg focusable="false" width="9" height="6" class="icon icon--chevron icon--inline  " viewBox="0 0 12 8">
997        <path fill="none" d="M1 1l5 5 5-5" stroke="currentColor" stroke-width="1.2"></path>
998      </svg></button>
999
1000                <popover-content id="header-sidebar-localization-form-locale" class="popover popover--top popover--small">
1001                  <span class="popover__overlay"></span>
1002
1003                  <header class="popover__header">
1004                    <span class="popover__title heading h6">Language</span>
1005
1006                    <button type="button" class="popover__close-button tap-area tap-area--large" data-action="close" title="Close"><svg focusable="false" width="14" height="14" class="icon icon--close   " viewBox="0 0 14 14">
1007        <path d="M13 13L1 1M13 1L1 13" stroke="currentColor" stroke-width="1.2" fill="none"></path>
1008      </svg></button>
1009                  </header>
1010
1011                  <div class="popover__content">
1012                    <div class="popover__choice-list"><button type="submit" name="locale_code" value="en" class="popover__choice-item">
1013                          <span class="popover__choice-label" aria-current="true">English</span>
1014                        </button><button type="submit" name="locale_code" value="de" class="popover__choice-item">
1015                          <span class="popover__choice-label" >Deutsch</span>
1016                        </button></div>
1017                  </div>
1018                </popover-content>
1019              </div></form></div>
1020    </div></mobile-navigation><predictive-search-drawer append-body  id="search-drawer" initial-focus-selector="#search-drawer [name='q']" class="predictive-search drawer drawer--large drawer--from-left">
1021  <span class="drawer__overlay"></span>
1022
1023  <header class="drawer__header">
1024    <form id="predictive-search-form" action="/search" method="get" class="predictive-search__form"><svg focusable="false" width="18" height="18" class="icon icon--header-search   " viewBox="0 0 18 18">
1025        <path d="M12.336 12.336c2.634-2.635 2.682-6.859.106-9.435-2.576-2.576-6.8-2.528-9.435.106C.373 5.642.325 9.866 2.901 12.442c2.576 2.576 6.8 2.528 9.435-.106zm0 0L17 17" fill="none" stroke="currentColor" stroke-width="1.2"></path>
1026      </svg><input class="predictive-search__input" type="text" name="q" autocomplete="off" autocorrect="off" aria-label="Search" placeholder="What are you looking for?">
1027    </form>
1028
1029    <button type="button" class="drawer__close-button tap-area" data-action="close" title="Close"><svg focusable="false" width="14" height="14" class="icon icon--close   " viewBox="0 0 14 14">
1030        <path d="M13 13L1 1M13 1L1 13" stroke="currentColor" stroke-width="1.2" fill="none"></path>
1031      </svg></button>
1032  </header>
1033
1034  <div class="drawer__content">
1035    <div class="predictive-search__content-wrapper">
1036      <div hidden class="predictive-search__loading-state">
1037        <div class="spinner"><svg focusable="false" width="50" height="50" class="icon icon--spinner   " viewBox="25 25 50 50">
1038        <circle cx="50" cy="50" r="20" fill="none" stroke="#000000" stroke-width="4"></circle>
1039      </svg></div>
1040      </div>
1041
1042      <div hidden class="predictive-search__results" aria-live="polite"></div></div>
1043  </div>
1044
1045  <footer hidden class="drawer__footer drawer__footer--no-top-padding">
1046    <button type="submit" form="predictive-search-form" class="button button--primary button--full">View all results</button>
1047  </footer>
1048</predictive-search-drawer>
1048<script>
1049  (() => {
1050    const headerElement = document.getElementById('shopify-section-sections--25278970954063__header'),
1051      headerHeight = headerElement.clientHeight,
1052      headerHeightWithoutBottomNav = headerElement.querySelector('.header__wrapper').clientHeight;
1053
1054    document.documentElement.style.setProperty('--header-height', headerHeight + 'px');
1055    document.documentElement.style.setProperty('--header-height-without-bottom-nav', headerHeightWithoutBottomNav + 'px');
1056  })();
1057</script>
1057
1058
1059<script type="application/ld+json">
1060  {
1061    "@context": "https://schema.org",
1062    "@type": "Organization",
1063    "name": "Yours Truly",
1064    
1065      "logo": "https:\/\/yourstruly.beauty\/cdn\/shop\/files\/YoursTruly_Inline-green_GOLD.svg?v=1736860910\u0026width=1000",
1066    
1067    "url": "https:\/\/yourstruly.eu"
1068  }
1069</script>
1069
1070
1071
1072</div>
1073<!-- END sections: header-group --><!-- BEGIN sections: overlay-group -->
1074
1075<!-- END sections: overlay-group --><div id="main" role="main" class="anchor"><div id="mobile-facet-toolbar" class="mobile-toolbar  hidden-lap-and-up">
1076          <button is="toggle-button" class="mobile-toolbar__item mobile-toolbar__item--filters " aria-expanded="false" aria-controls="facet-filters" style="display: none"><svg focusable="false" width="16" height="16" class="icon icon--filters   " viewBox="0 0 16 16">
1077        <path d="M0 4h16M0 12h16" fill="none" stroke="currentColor" stroke-width=""></path>
1078        <circle cx="5" cy="4" r="2" fill="rgb(var(--background))" stroke="currentColor" stroke-width="1.2"></circle>
1079        <circle cx="11" cy="12" r="2" fill="rgb(var(--background))" stroke="currentColor" stroke-width="1.2"></circle>
1080      </svg><span class="mobile-toolbar__item-label">Filters</span>
1081          </button>
1082
1083          <button is="toggle-button" class="mobile-toolbar__item mobile-toolbar__item--sort" aria-expanded="false" aria-controls="sort-by-popover" style="display: none">
1084            <span class="mobile-toolbar__item-label">Sort by</span><svg focusable="false" width="12" height="8" class="icon icon--chevron   " viewBox="0 0 12 8">
1085        <path fill="none" d="M1 1l5 5 5-5" stroke="currentColor" stroke-width="1.2"></path>
1086      </svg></button>
1087        </div><div id="shopify-section-template--25278970659151__main" class="shopify-section shopify-section--main-search"><style>
1088  #shopify-section-template--25278970659151__main {
1089    --section-products-per-row: 2;
1090  }
1091
1092  @media screen and (min-width: 741px) {
1093    #shopify-section-template--25278970659151__main {
1094      --section-products-per-row: 3;
1095    }
1096  }@media screen and (min-width: 1400px) {
1097      #shopify-section-template--25278970659151__main {
1098        --section-products-per-row: 4;
1099      }
1100    }/*
1101    IMPLEMENTATION NOTE: due to design requirements, the mobile toolbar (with filters and sort by) had to be moved to the
1102    layout file. However as section settings cannot be accessed outside the section itself, we simply hide them in CSS.
1103   */@media screen and (max-width: 999px) {
1104      :root {
1105        --anchor-offset: 60px;
1106      }
1107    }</style>
1108
1109<section><div class="container">
1110      <div class="empty-state">
1111        <h1 class="heading h2">Search</h1>
1112
1113        <form class="main-search__form" action="/search" method="get">
1114          <button class="main-search__submit tap-area" type="submit"><svg focusable="false" width="18" height="18" class="icon icon--header-search   " viewBox="0 0 18 18">
1115        <path d="M12.336 12.336c2.634-2.635 2.682-6.859.106-9.435-2.576-2.576-6.8-2.528-9.435.106C.373 5.642.325 9.866 2.901 12.442c2.576 2.576 6.8 2.528 9.435-.106zm0 0L17 17" fill="none" stroke="currentColor" stroke-width="1.2"></path>
1116      </svg></button>
1117          <input class="main-search__input input__field" type="text" name="q" autocomplete="off" autocorrect="off" aria-label="Search" placeholder="What are you looking for?">
1118        </form>
1119      </div>
1120    </div></section>
1121
1122</div>
1123    </div><!-- BEGIN sections: footer-group -->
1124<div id="shopify-section-sections--25278970921295__text-with-icons" class="shopify-section shopify-section-group-footer-group shopify-section--text-with-icons"><style>
1125  #shopify-section-sections--25278970921295__text-with-icons {--heading-color: 255, 255, 255;
1126    --text-color: 255, 255, 255;
1127    --section-background: 32, 53, 31;
1128    --vertical-breather: 40px; /* Inner spacing is smaller on this section */
1129  }
1130</style><section class="section section--flush" aria-label="Kontaktmöglichkeiten">
1131  <div class="section__color-wrapper">
1132    <div class="container vertical-breather">
1133      <native-carousel class="text-with-icons">
1134        <div class="text-with-icons__list hide-scrollbar"><native-carousel-item  id="block-sections--25278970921295__text-with-icons-item-4" class="text-with-icons__item" >
1135              <div class="text-with-icons__icon-wrapper"><svg fill="none" focusable="false" width="24" height="24" class="icon icon--picto-email   " viewBox="0 0 24 24">
1136        <path d="M21 8V5H3V8M21 8V19H3V8M21 8L12 12.5L3 8" stroke="currentColor" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"></path>
1137      </svg></div><div class="text-with-icons__content-wrapper"><p class="heading heading--small">Contact us</p><p>
1137You can reach us by email at <a href="mailto:[email protected]" title="mailto:[email protected]">[email protected]</a></p></div></native-carousel-item><native-carousel-item hidden id="block-sections--25278970921295__text-with-icons-item_gJYBVY" class="text-with-icons__item" >
1138              <div class="text-with-icons__icon-wrapper"><svg fill="none" focusable="false" width="24" height="24" class="icon icon--picto-customer-support   " viewBox="0 0 24 24">
1139        <path d="M4.00571 10C4.00571 10 3.50018 2 12 2C20.4997 2 19.9943 10 19.9943 10M4.00571 10C3.33714 10.3333 2 11 2 12.5C2 14 3 15 4.00571 15C4.81028 15 5.67048 15 6 15V10H4.00571ZM19.9943 10C20.6629 10.1667 22 10.9 22 12.5C22 14.1 20.6629 14.8333 19.9943 15M19.9943 10H18V15H19.9943M19.9943 15C20.1629 16.5 19.6 19.5 16 19.5M16 19.5C16 19 15.8 18 15 18C14.2 18 13 18 12.5 18C12 18 10.8 18 10 18C9.2 18 9 19 9 19.5C9 20 9.2 21 10 21C10.8 21 12 21 12.5 21H15C15.8125 21 16 20 16 19.5Z" stroke="currentColor" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"></path>
1140      </svg></div><div class="text-with-icons__content-wrapper"><p class="heading heading--small">Ask us</p><p>If you have any questions, you can reach us at<br> +49 (0) 62 57 – 50 36 7095</p></div></native-carousel-item><native-carousel-item hidden id="block-sections--25278970921295__text-with-icons-item_9BTnhi" class="text-with-icons__item" >
1141              <div class="text-with-icons__icon-wrapper"><svg focusable="false" width="24" height="24" class="icon icon--picto-address   " viewBox="0 0 24 24">
1142        <path fill="none" d="M5.24704 11.1098C6.47491 16.375 12 22 12 22C12 22 17.5252 16.375 18.753 11.1098C19.9808 5.8447 16.4595 2 12 2C7.54045 2 4.01918 5.8447 5.24704 11.1098Z" stroke="currentColor" stroke-width="1.2"></path>
1143        <path fill="none" d="M14.5 9.37803C14.5 10.8636 13.3472 12.0061 12 12.0061C10.6528 12.0061 9.5 10.8636 9.5 9.37803C9.5 7.89244 10.6528 6.75 12 6.75C13.3472 6.75 14.5 7.89244 14.5 9.37803Z" stroke="currentColor" stroke-width="1.2"></path>
1144      </svg></div><div class="text-with-icons__content-wrapper"><p class="heading heading--small">Here you can find us</p><p>Breslauer Straße 20,<br> 64342 Seeheim-Jugenheim</p></div></native-carousel-item></div><page-dots class="text-with-icons__dots dots-nav dots-nav--centered hidden-lap-and-up"><button class="dots-nav__item tap-area" aria-current="true">
1145                <span class="visually-hidden">Go to slide 1</span>
1146              </button><button class="dots-nav__item tap-area" >
1147                <span class="visually-hidden">Go to slide 2</span>
1148              </button><button class="dots-nav__item tap-area" >
1149                <span class="visually-hidden">Go to slide 3</span>
1150              </button></page-dots></native-carousel>
1151    </div>
1152  </div>
1153</section>
1154
1155</div><div id="shopify-section-sections--25278970921295__newsletter_custom_W9pABg" class="shopify-section shopify-section-group-footer-group shopify-section--newsletter"><style>
1156  #shopify-section-sections--25278970921295__newsletter_custom_W9pABg {--heading-color: 0, 0, 0;
1157    --text-color: 0, 0, 0;
1158    --primary-button-background: 98, 132, 116;
1159    --primary-button-text-color: 255, 255, 255;
1160    --section-block-background: 255, 255, 255;
1161  }
1162</style>
1163
1164<section class="section section--flush">
1165  <image-with-text-block reveal-on-scroll class="image-with-text-block image-with-text-block--small image-with-text-block--cover">
1166    <div class="image-with-text-block__image-wrapper"><img src="//yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=2000" alt="nahaufnahme-von-glänzendem-brünettem-haar-mit-natürlichen-wellen" srcset="//yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=600 600w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=700 700w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=800 800w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=1000 1000w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=1200 1200w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=1400 1400w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=1600 1600w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=1800 1800w, //yourstruly.beauty/cdn/shop/files/AdobeStock_390066671_k-blond_web.jpg?v=1746785467&amp;width=2000 2000w" width="2000" height="980" loading="lazy" reveal="true" class="image-with-text-block__image"></div>
1167
1168    <div class="container container--flush"><div reveal class="image-with-text-block__content image-with-text-block__content--tight content-box content-box--small content-box--text-left content-box--right text-container"><div class="mailchimp_embed-wrapper">
1169          
1170            <div id="mc_embed_shell">
1171<link href="//cdn-images.mailchimp.com/embedcode/classic-061523.css" rel="stylesheet" type="text/css">
1172<style type="text/css">
1173#mc_embed_signup{background:#fff; false;clear:left; font:14px Helvetica,Arial,sans-serif; width: 600px;}
1174/* Add your own Mailchimp form style overrides in your site stylesheet or in this style block.
1175We recommend moving this block and the preceding CSS link to the HEAD of your HTML file. */
1176</style>
1177<div id="mc_embed_signup">
1178<form action="https://yourstruly.us10.list-manage.com/subscribe/post?u=20492790b4d5b7048526c801c&amp;id=c097d90f0a&amp;f_id=006aa4e3f0" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank">
1179<div id="mc_embed_signup_scroll"><h2>Stay informed</h2>
1180<div class="indicates-required"><span class="asterisk">*</span> indicates required</div>
1181<div class="mc-field-group">
1181<label for="mce-EMAIL">Your email address<span class="asterisk">*</span></label><input type="email" name="EMAIL" class="required email" id="mce-EMAIL" required="" value=""></div><div class="mc-field-group input-group"><strong>I am a hairdresser <span class="asterisk">*</span></strong><ul><li><input type="radio" name="MMERGE12" id="mce-MMERGE120" value="Yes"><label for="mce-MMERGE120">Yes</label></li></ul></div>
1182<div id="mce-responses" class="clear">
1183<div class="response" id="mce-error-response" style="display: none;"></div>
1184<div class="response" id="mce-success-response" style="display: none;"></div>
1185</div><div aria-hidden="true" style="position: absolute; left: -5000px;"><input type="text" name="b_20492790b4d5b7048526c801c_c097d90f0a" tabindex="-1" value=""></div><div class="clear"><input type="submit" name="subscribe" id="mc-embedded-subscribe" class="button" value="Subscribe"></div>
1186</div>
1187</form>
1188</div>
1189<script type="text/javascript" src="//s3.amazonaws.com/downloads.mailchimp.com/js/mc-validate.js" async></script>
1189<script type="text/javascript">(function($) {window.fnames = new Array(); window.ftypes = new Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[12]='MMERGE12';ftypes[12]='radio';fnames[1]='FNAME';ftypes[1]='text';fnames[3]='BIRTHDAY';ftypes[3]='birthday';fnames[8]='MMERGE8';ftypes[8]='text';fnames[2]='MMERGE2';ftypes[2]='number';fnames[4]='MMERGE4';ftypes[4]='text';fnames[5]='MMERGE5';ftypes[5]='text';fnames[6]='MMERGE6';ftypes[6]='text';fnames[7]='MMERGE7';ftypes[7]='text';fnames[9]='MMERGE9';ftypes[9]='radio';fnames[10]='MMERGE10';ftypes[10]='number';fnames[11]='MMERGE11';ftypes[11]='radio';/*
1190* Translated default messages for the $ validation plugin.
1191* Locale: DE
1192*/
1193$.extend($.validator.messages, {
1194required: "Dieses Feld ist ein Pflichtfeld.",
1195maxlength: $.validator.format("Geben Sie bitte maximal {0} Zeichen ein."),
1196minlength: $.validator.format("Geben Sie bitte mindestens {0} Zeichen ein."),
1197rangelength: $.validator.format("Geben Sie bitte mindestens {0} und maximal {1} Zeichen ein."),
1198email: "Geben Sie bitte eine gültige E-Mail Adresse ein.",
1199url: "Geben Sie bitte eine gültige URL ein.",
1200date: "Bitte geben Sie ein gültiges Datum ein.",
1201number: "Geben Sie bitte eine Nummer ein.",
1202digits: "Geben Sie bitte nur Ziffern ein.",
1203equalTo: "Bitte denselben Wert wiederholen.",
1204range: $.validator.format("Geben Sie bitten einen Wert zwischen {0} und {1}."),
1205max: $.validator.format("Geben Sie bitte einen Wert kleiner oder gleich {0} ein."),
1206min: $.validator.format("Geben Sie bitte einen Wert größer oder gleich {0} ein."),
1207creditcard: "Geben Sie bitte ein gültige Kreditkarten-Nummer ein."
1208});}(jQuery));var $mcj = jQuery.noConflict(true);
1209// SMS Phone Multi-Country Functionality
1210if(!window.MC) {
1211window.MC = {};
1212}
1213window.MC.smsPhoneData = {
1214defaultCountryCode: 'DE',
1215programs: [],
1216smsProgramDataCountryNames: []
1217};
1218
1219function getCountryUnicodeFlag(countryCode) {
1220return countryCode.toUpperCase().replace(/./g, (char) => String.fromCodePoint(char.charCodeAt(0) + 127397))
1221};
1222
1223// HTML sanitization function to prevent XSS
1224function sanitizeHtml(str) {
1225if (typeof str !== 'string') return '';
1226return str
1227.replace(/&/g, '&amp;')
1228.replace(/</g, '&lt;')
1229.replace(/>/g, '&gt;')
1230.replace(/"/g, '&quot;')
1231.replace(/'/g, '&#x27;')
1232.replace(/\//g, '&#x2F;');
1233}
1234
1235// URL sanitization function to prevent javascript: and data: URLs
1236function sanitizeUrl(url) {
1237if (typeof url !== 'string') return '';
1238const trimmedUrl = url.trim().toLowerCase();
1239if (trimmedUrl.startsWith('javascript:') || trimmedUrl.startsWith('data:') || trimmedUrl.startsWith('vbscript:')) {
1240return '#';
1241}
1242return url;
1243}
1244
1245const getBrowserLanguage = () => {
1246if (!window?.navigator?.language?.split('-')[1]) {
1247return window?.navigator?.language?.toUpperCase();
1248}
1249return window?.navigator?.language?.split('-')[1];
1250};
1251
1252function getDefaultCountryProgram(defaultCountryCode, smsProgramData) {
1253if (!smsProgramData || smsProgramData.length === 0) {
1254return null;
1255}
1256
1257const browserLanguage = getBrowserLanguage();
1258
1259if (browserLanguage) {
1260const foundProgram = smsProgramData.find(
1261(program) => program?.countryCode === browserLanguage,
1262);
1263if (foundProgram) {
1264return foundProgram;
1265}
1266}
1267
1268if (defaultCountryCode) {
1269const foundProgram = smsProgramData.find(
1270(program) => program?.countryCode === defaultCountryCode,
1271);
1272if (foundProgram) {
1273return foundProgram;
1274}
1275}
1276
1277return smsProgramData[0];
1278}
1279
1280function updateSmsLegalText(countryCode, fieldName) {
1281if (!countryCode || !fieldName) {
1282return;
1283}
1284
1285const programs = window?.MC?.smsPhoneData?.programs;
1286if (!programs || !Array.isArray(programs)) {
1287return;
1288}
1289
1290const program = programs.find(program => program?.countryCode === countryCode);
1291if (!program || !program.requiredTemplate) {
1292return;
1293}
1294
1295var smsConsentHtmlRenderingFixEnabled = true;
1296
1297const legalTextElement = document.querySelector('#legal-text-' + fieldName);
1298if (!legalTextElement) {
1299return;
1300}
1301
1302const divRegex = new RegExp('</?[div][^>]*>', 'gi');
1303const blockWrapperRegex = new RegExp('</?(?:div|p)[^>]*>', 'gi');
1304const fullAnchorRegex = new RegExp('<a.*?</a>', 'g');
1305const anchorRegex = new RegExp('<a href="(.*?)" target="(.*?)">(.*?)</a>');
1306
1307const template = smsConsentHtmlRenderingFixEnabled
1308? program.requiredTemplate
1309.replace(/<\/p>\s*<p[^>]*>/gi, ' ')
1310.replace(blockWrapperRegex, '')
1311: program.requiredTemplate.replace(divRegex, '');
1312
1313legalTextElement.textContent = '';
1314const parts = template.split(/(<a href=".*?" target=".*?">.*?<\/a>)/g);
1315parts.forEach(function(part) {
1316if (!part) {
1317return;
1318}
1319const anchorMatch = part.match(/<a href="(.*?)" target="(.*?)">(.*?)<\/a>/);
1320if (anchorMatch) {
1321const linkElement = document.createElement('a');
1322linkElement.href = sanitizeUrl(anchorMatch[1]);
1323linkElement.target = sanitizeHtml(anchorMatch[2]);
1324linkElement.textContent = sanitizeHtml(anchorMatch[3]);
1325legalTextElement.appendChild(linkElement);
1326} else {
1327legalTextElement.appendChild(document.createTextNode(part));
1328}
1329});
1330
1331}
1332
1333function generateDropdownOptions(smsProgramData) {
1334if (!smsProgramData || smsProgramData.length === 0) {
1335return '';
1336}
1337
1338var programs = false
1339? smsProgramData.filter(function(p, i, arr) {
1340return arr.findIndex(function(q) { return q.countryCode === p.countryCode; }) === i;
1341})
1342: smsProgramData;
1343
1344return programs.map(program => {
1345const flag = getCountryUnicodeFlag(program.countryCode);
1346const countryName = getCountryName(program.countryCode);
1347const callingCode = program.countryCallingCode || '';
1348// Sanitize all values to prevent XSS
1349const sanitizedCountryCode = sanitizeHtml(program.countryCode || '');
1350const sanitizedCountryName = sanitizeHtml(countryName || '');
1351const sanitizedCallingCode = sanitizeHtml(callingCode || '');
1352return '<option value="' + sanitizedCountryCode + '">' + sanitizedCountryName + ' ' + sanitizedCallingCode + '</option>';
1353}).join('');
1354}
1355
1356function getCountryName(countryCode) {
1357if (window.MC?.smsPhoneData?.smsProgramDataCountryNames && Array.isArray(window.MC.smsPhoneData.smsProgramDataCountryNames)) {
1358for (let i = 0; i < window.MC.smsPhoneData.smsProgramDataCountryNames.length; i++) {
1359if (window.MC.smsPhoneData.smsProgramDataCountryNames[i].code === countryCode) {
1360return window.MC.smsPhoneData.smsProgramDataCountryNames[i].name;
1361}
1362}
1363}
1364return countryCode;
1365}
1366
1367function getDefaultPlaceholder(countryCode) {
1368if (!countryCode || typeof countryCode !== 'string') {
1369return '+1 000 000 0000'; // Default US placeholder
1370}
1371
1372var mockPlaceholders = [
1373{
1374countryCode: 'US',
1375placeholder: '+1 000 000 0000',
1376helpText: 'Include the US country code +1 before the phone number',
1377},
1378{
1379countryCode: 'GB',
1380placeholder: '+44 0000 000000',
1381helpText: 'Include the GB country code +44 before the phone number',
1382},
1383{
1384countryCode: 'CA',
1385placeholder: '+1 000 000 0000',
1386helpText: 'Include the CA country code +1 before the phone number',
1387},
1388{
1389countryCode: 'AU',
1390placeholder: '+61 000 000 000',
1391helpText: 'Include the AU country code +61 before the phone number',
1392},
1393{
1394countryCode: 'DE',
1395placeholder: '+49 000 0000000',
1396helpText: 'Fügen Sie vor der Telefonnummer die DE-Ländervorwahl +49 ein',
1397},
1398{
1399countryCode: 'FR',
1400placeholder: '+33 0 00 00 00 00',
1401helpText: 'Incluez le code pays FR +33 avant le numéro de téléphone',
1402},
1403{
1404countryCode: 'ES',
1405placeholder: '+34 000 000 000',
1406helpText: 'Incluya el código de país ES +34 antes del número de teléfono',
1407},
1408{
1409countryCode: 'NL',
1410placeholder: '+31 0 00000000',
1411helpText: 'Voeg de NL-landcode +31 toe vóór het telefoonnummer',
1412},
1413{
1414countryCode: 'BE',
1415placeholder: '+32 000 00 00 00',
1416helpText: 'Incluez le code pays BE +32 avant le numéro de téléphone',
1417},
1418{
1419countryCode: 'CH',
1420placeholder: '+41 00 000 00 00',
1421helpText: 'Fügen Sie vor der Telefonnummer die CH-Ländervorwahl +41 ein',
1422},
1423{
1424countryCode: 'AT',
1425placeholder: '+43 000 000 0000',
1426helpText: 'Fügen Sie vor der Telefonnummer die AT-Ländervorwahl +43 ein',
1427},
1428{
1429countryCode: 'IE',
1430placeholder: '+353 00 000 0000',
1431helpText: 'Include the IE country code +353 before the phone number',
1432},
1433{
1434countryCode: 'IT',
1435placeholder: '+39 000 000 0000',
1436helpText: 'Includere il prefisso internazionale IT +39 prima del numero di telefono',
1437},
1438{
1439countryCode: 'NO',
1440placeholder: '+47 000 00 000',
1441helpText: 'Inkluder NO landskode +47 før telefonnummeret',
1442},
1443{
1444countryCode: 'SE',
1445placeholder: '+46 00 000 00 00',
1446helpText: 'Inkludera SE landskod +46 före telefonnumret',
1447},
1448{
1449countryCode: 'DK',
1450placeholder: '+45 00 00 00 00',
1451helpText: 'Inkluder DK landekode +45 før telefonnummeret',
1452},
1453{
1454countryCode: 'FI',
1455placeholder: '+358 00 000 0000',
1456helpText: 'Sisällytä FI-maakoodi +358 ennen puhelinnumeroa',
1457},
1458{
1459countryCode: 'EE',
1460placeholder: '+372 0000 0000',
1461helpText: 'Lisage EE riigikood +372 telefoninumbri ette',
1462},
1463{
1464countryCode: 'PL',
1465placeholder: '+48 000 000 000',
1466helpText: 'Podaj numer kierunkowy PL +48 przed numerem telefonu',
1467},
1468{
1469countryCode: 'SK',
1470placeholder: '+421 000 000 000',
1471helpText: 'Pred telefónne číslo uveďte kód krajiny SK +421',
1472},
1473{
1474countryCode: 'LV',
1475placeholder: '+371 0000 0000',
1476helpText: 'Iekļaujiet LV valsts kodu +371 pirms tālruņa numura',
1477},
1478{
1479countryCode: 'LT',
1480placeholder: '+370 0000 0000',
1481helpText: 'Įtraukite LT šalies kodą +370 prieš telefono numerį',
1482},
1483{
1484countryCode: 'GR',
1485placeholder: '+30 000 000 0000',
1486helpText: 'Συμπεριλάβετε τον κωδικό χώρας GR +30 πριν από τον αριθμό τηλεφώνου',
1487},
1488{
1489countryCode: 'PT',
1490placeholder: '+351 000 000 000',
1491helpText: 'Inclua o código de país PT +351 antes do número de telefone',
1492},
1493{
1494countryCode: 'HR',
1495placeholder: '+385 00 000 0000',
1496helpText: 'Uključite HR pozivni broj države +385 prije telefonskog broja',
1497},
1498{
1499countryCode: 'SI',
1500placeholder: '+386 00 000 000',
1501helpText: 'Vključite SI kodo države +386 pred telefonsko številko',
1502},
1503{
1504countryCode: 'IS',
1505placeholder: '+354 000 0000',
1506helpText: 'Láttu IS landsnúmer +354 fylgja á undan símanúmerinu',
1507},
1508{
1509countryCode: 'LU',
1510placeholder: '+352 000 000 000',
1511helpText: 'Incluez le code pays LU +352 avant le numéro de téléphone',
1512},
1513{
1514countryCode: 'MC',
1515placeholder: '+377 00 00 00 00',
1516helpText: 'Incluez le code pays MC +377 avant le numéro de téléphone',
1517},
1518{
1519countryCode: 'AD',
1520placeholder: '+376 000 000',
1521helpText: 'Incloeu el codi de país AD +376 abans del número de telèfon',
1522},
1523{
1524countryCode: 'JE',
1525placeholder: '+44 0000 000000',
1526helpText: 'Include the JE country code +44 before the phone number',
1527},
1528{
1529countryCode: 'IM',
1530placeholder: '+44 0000 000000',
1531helpText: 'Include the IM country code +44 before the phone number',
1532},
1533{
1534countryCode: 'GG',
1535placeholder: '+44 0000 000000',
1536helpText: 'Include the GG country code +44 before the phone number',
1537},
1538{
1539countryCode: 'AL',
1540placeholder: '+355 00 000 0000',
1541helpText: 'Përfshini kodin e vendit AL +355 para numrit të telefonit',
1542},
1543{
1544countryCode: 'SM',
1545placeholder: '+378 0000 000000',
1546helpText: 'Includere il prefisso internazionale SM +378 prima del numero di telefono',
1547},
1548{
1549countryCode: 'FO',
1550placeholder: '+298 000000',
1551helpText: 'Inkluder FO landekode +298 før telefonnummeret',
1552},
1553{
1554countryCode: 'MT',
1555placeholder: '+356 0000 0000',
1556helpText: 'Include the MT country code +356 before the phone number',
1557},
1558{
1559countryCode: 'LI',
1560placeholder: '+423 000 0000',
1561helpText: 'Fügen Sie vor der Telefonnummer die LI-Ländervorwahl +423 ein',
1562},
1563{
1564countryCode: 'GI',
1565placeholder: '+350 000 00000',
1566helpText: 'Include the GI country code +350 before the phone number',
1567},
1568{
1569countryCode: 'MD',
1570placeholder: '+373 00 000 000',
1571helpText: 'Includeți codul de țară MD +373 înaintea numărului de telefon',
1572},
1573{
1574countryCode: 'HU',
1575placeholder: '+36 00 000 0000',
1576helpText: 'A telefonszám előtt adja meg a HU országkódot +36',
1577},
1578{
1579countryCode: 'NZ',
1580placeholder: '+64 00 000 0000',
1581helpText: 'Include the NZ country code +64 before the phone number',
1582},
1583{
1584countryCode: 'ME',
1585placeholder: '+382 00 000 000',
1586helpText: 'Uključite ME pozivni broj države +382 prije telefonskog broja',
1587},
1588];
1589
1590const selectedPlaceholder = mockPlaceholders.find(function(item) {
1591return item && item.countryCode === countryCode;
1592});
1593
1594return selectedPlaceholder ? selectedPlaceholder.placeholder : mockPlaceholders[0].placeholder;
1595}
1596
1597function updatePlaceholder(countryCode, fieldName) {
1598if (!countryCode || !fieldName) {
1599return;
1600}
1601
1602const phoneInput = document.querySelector('#mce-' + fieldName);
1603if (!phoneInput) {
1604return;
1605}
1606
1607const placeholder = getDefaultPlaceholder(countryCode);
1608if (placeholder) {
1609phoneInput.placeholder = placeholder;
1610}
1611}
1612
1613function updateCountryCodeInstruction(countryCode, fieldName) {
1614updatePlaceholder(countryCode, fieldName);
1615
1616}
1617
1618function getDefaultHelpText(countryCode) {
1619var mockPlaceholders = [
1620{
1621countryCode: 'US',
1622placeholder: '+1 000 000 0000',
1623helpText: 'Include the US country code +1 before the phone number',
1624},
1625{
1626countryCode: 'GB',
1627placeholder: '+44 0000 000000',
1628helpText: 'Include the GB country code +44 before the phone number',
1629},
1630{
1631countryCode: 'CA',
1632placeholder: '+1 000 000 0000',
1633helpText: 'Include the CA country code +1 before the phone number',
1634},
1635{
1636countryCode: 'AU',
1637placeholder: '+61 000 000 000',
1638helpText: 'Include the AU country code +61 before the phone number',
1639},
1640{
1641countryCode: 'DE',
1642placeholder: '+49 000 0000000',
1643helpText: 'Fügen Sie vor der Telefonnummer die DE-Ländervorwahl +49 ein',
1644},
1645{
1646countryCode: 'FR',
1647placeholder: '+33 0 00 00 00 00',
1648helpText: 'Incluez le code pays FR +33 avant le numéro de téléphone',
1649},
1650{
1651countryCode: 'ES',
1652placeholder: '+34 000 000 000',
1653helpText: 'Incluya el código de país ES +34 antes del número de teléfono',
1654},
1655{
1656countryCode: 'NL',
1657placeholder: '+31 0 00000000',
1658helpText: 'Voeg de NL-landcode +31 toe vóór het telefoonnummer',
1659},
1660{
1661countryCode: 'BE',
1662placeholder: '+32 000 00 00 00',
1663helpText: 'Incluez le code pays BE +32 avant le numéro de téléphone',
1664},
1665{
1666countryCode: 'CH',
1667placeholder: '+41 00 000 00 00',
1668helpText: 'Fügen Sie vor der Telefonnummer die CH-Ländervorwahl +41 ein',
1669},
1670{
1671countryCode: 'AT',
1672placeholder: '+43 000 000 0000',
1673helpText: 'Fügen Sie vor der Telefonnummer die AT-Ländervorwahl +43 ein',
1674},
1675{
1676countryCode: 'IE',
1677placeholder: '+353 00 000 0000',
1678helpText: 'Include the IE country code +353 before the phone number',
1679},
1680{
1681countryCode: 'IT',
1682placeholder: '+39 000 000 0000',
1683helpText: 'Includere il prefisso internazionale IT +39 prima del numero di telefono',
1684},
1685{
1686countryCode: 'NO',
1687placeholder: '+47 000 00 000',
1688helpText: 'Inkluder NO landskode +47 før telefonnummeret',
1689},
1690{
1691countryCode: 'SE',
1692placeholder: '+46 00 000 00 00',
1693helpText: 'Inkludera SE landskod +46 före telefonnumret',
1694},
1695{
1696countryCode: 'DK',
1697placeholder: '+45 00 00 00 00',
1698helpText: 'Inkluder DK landekode +45 før telefonnummeret',
1699},
1700{
1701countryCode: 'FI',
1702placeholder: '+358 00 000 0000',
1703helpText: 'Sisällytä FI-maakoodi +358 ennen puhelinnumeroa',
1704},
1705{
1706countryCode: 'EE',
1707placeholder: '+372 0000 0000',
1708helpText: 'Lisage EE riigikood +372 telefoninumbri ette',
1709},
1710{
1711countryCode: 'PL',
1712placeholder: '+48 000 000 000',
1713helpText: 'Podaj numer kierunkowy PL +48 przed numerem telefonu',
1714},
1715{
1716countryCode: 'SK',
1717placeholder: '+421 000 000 000',
1718helpText: 'Pred telefónne číslo uveďte kód krajiny SK +421',
1719},
1720{
1721countryCode: 'LV',
1722placeholder: '+371 0000 0000',
1723helpText: 'Iekļaujiet LV valsts kodu +371 pirms tālruņa numura',
1724},
1725{
1726countryCode: 'LT',
1727placeholder: '+370 0000 0000',
1728helpText: 'Įtraukite LT šalies kodą +370 prieš telefono numerį',
1729},
1730{
1731countryCode: 'GR',
1732placeholder: '+30 000 000 0000',
1733helpText: 'Συμπεριλάβετε τον κωδικό χώρας GR +30 πριν από τον αριθμό τηλεφώνου',
1734},
1735{
1736countryCode: 'PT',
1737placeholder: '+351 000 000 000',
1738helpText: 'Inclua o código de país PT +351 antes do número de telefone',
1739},
1740{
1741countryCode: 'HR',
1742placeholder: '+385 00 000 0000',
1743helpText: 'Uključite HR pozivni broj države +385 prije telefonskog broja',
1744},
1745{
1746countryCode: 'SI',
1747placeholder: '+386 00 000 000',
1748helpText: 'Vključite SI kodo države +386 pred telefonsko številko',
1749},
1750{
1751countryCode: 'IS',
1752placeholder: '+354 000 0000',
1753helpText: 'Láttu IS landsnúmer +354 fylgja á undan símanúmerinu',
1754},
1755{
1756countryCode: 'LU',
1757placeholder: '+352 000 000 000',
1758helpText: 'Incluez le code pays LU +352 avant le numéro de téléphone',
1759},
1760{
1761countryCode: 'MC',
1762placeholder: '+377 00 00 00 00',
1763helpText: 'Incluez le code pays MC +377 avant le numéro de téléphone',
1764},
1765{
1766countryCode: 'AD',
1767placeholder: '+376 000 000',
1768helpText: 'Incloeu el codi de país AD +376 abans del número de telèfon',
1769},
1770{
1771countryCode: 'JE',
1772placeholder: '+44 0000 000000',
1773helpText: 'Include the JE country code +44 before the phone number',
1774},
1775{
1776countryCode: 'IM',
1777placeholder: '+44 0000 000000',
1778helpText: 'Include the IM country code +44 before the phone number',
1779},
1780{
1781countryCode: 'GG',
1782placeholder: '+44 0000 000000',
1783helpText: 'Include the GG country code +44 before the phone number',
1784},
1785{
1786countryCode: 'AL',
1787placeholder: '+355 00 000 0000',
1788helpText: 'Përfshini kodin e vendit AL +355 para numrit të telefonit',
1789},
1790{
1791countryCode: 'SM',
1792placeholder: '+378 0000 000000',
1793helpText: 'Includere il prefisso internazionale SM +378 prima del numero di telefono',
1794},
1795{
1796countryCode: 'FO',
1797placeholder: '+298 000000',
1798helpText: 'Inkluder FO landekode +298 før telefonnummeret',
1799},
1800{
1801countryCode: 'MT',
1802placeholder: '+356 0000 0000',
1803helpText: 'Include the MT country code +356 before the phone number',
1804},
1805{
1806countryCode: 'LI',
1807placeholder: '+423 000 0000',
1808helpText: 'Fügen Sie vor der Telefonnummer die LI-Ländervorwahl +423 ein',
1809},
1810{
1811countryCode: 'GI',
1812placeholder: '+350 000 00000',
1813helpText: 'Include the GI country code +350 before the phone number',
1814},
1815{
1816countryCode: 'MD',
1817placeholder: '+373 00 000 000',
1818helpText: 'Includeți codul de țară MD +373 înaintea numărului de telefon',
1819},
1820{
1821countryCode: 'HU',
1822placeholder: '+36 00 000 0000',
1823helpText: 'A telefonszám előtt adja meg a HU országkódot +36',
1824},
1825{
1826countryCode: 'NZ',
1827placeholder: '+64 00 000 0000',
1828helpText: 'Include the NZ country code +64 before the phone number',
1829},
1830{
1831countryCode: 'ME',
1832placeholder: '+382 00 000 000',
1833helpText: 'Uključite ME pozivni broj države +382 prije telefonskog broja',
1834},
1835];
1836
1837if (!countryCode || typeof countryCode !== 'string') {
1838return mockPlaceholders[0].helpText;
1839}
1840
1841const selectedHelpText = mockPlaceholders.find(function(item) {
1842return item && item.countryCode === countryCode;
1843});
1844
1845return selectedHelpText ? selectedHelpText.helpText : mockPlaceholders[0].helpText;
1846}
1847
1848function setDefaultHelpText(countryCode) {
1849const helpTextSpan = document.querySelector('#help-text');
1850if (!helpTextSpan) {
1851return;
1852}
1853
1854}
1855
1856function updateHelpTextCountryCode(countryCode, fieldName) {
1857if (!countryCode || !fieldName) {
1858return;
1859}
1860
1861setDefaultHelpText(countryCode);
1862}
1863
1864function initializeSmsPhoneDropdown(fieldName) {
1865if (!fieldName || typeof fieldName !== 'string') {
1866return;
1867}
1868
1869const dropdown = document.querySelector('#country-select-' + fieldName);
1870const displayFlag = document.querySelector('#flag-display-' + fieldName);
1871
1872if (!dropdown || !displayFlag) {
1873return;
1874}
1875
1876const smsPhoneData = window.MC?.smsPhoneData;
1877if (smsPhoneData && smsPhoneData.programs && Array.isArray(smsPhoneData.programs)) {
1878dropdown.innerHTML = generateDropdownOptions(smsPhoneData.programs);
1879}
1880
1881const defaultProgram = getDefaultCountryProgram(smsPhoneData?.defaultCountryCode, smsPhoneData?.programs);
1882if (defaultProgram && defaultProgram.countryCode) {
1883dropdown.value = defaultProgram.countryCode;
1884
1885const flagSpan = displayFlag?.querySelector('#flag-emoji-' + fieldName);
1886if (flagSpan) {
1887flagSpan.textContent = getCountryUnicodeFlag(defaultProgram.countryCode);
1888flagSpan.setAttribute('aria-label', sanitizeHtml(defaultProgram.countryCode) + ' flag');
1889}
1890
1891updateSmsLegalText(defaultProgram.countryCode, fieldName);
1892updatePlaceholder(defaultProgram.countryCode, fieldName);
1893updateCountryCodeInstruction(defaultProgram.countryCode, fieldName);
1894}
1895
1896var smsNotRequiredRemoveCountryCodeEnabled = true;
1897var smsField = Object.values({"EMAIL":{"name":"EMAIL","label":"E-Mail Adresse","helper_text":"","type":"email","required":true,"audience_field_name":"E-Mail Adresse","merge_id":0,"help_text_enabled":false,"enabled":true,"order":0,"field_type":"merge"},"MMERGE12":{"name":"MMERGE12","label":"I am a hairdresser","helper_text":"","type":"radio","required":true,"audience_field_name":"I am a hairdresser","choices":[{"value":"Yes","label":"Yes"}],"merge_id":12,"help_text_enabled":false,"enabled":true,"order":1,"field_type":"merge"},"FNAME":{"name":"FNAME","label":"Vorname","helper_text":"","type":"text","required":false,"audience_field_name":"Vorname","enabled":false,"order":null,"field_type":"merge","merge_id":1},"BIRTHDAY":{"name":"BIRTHDAY","label":"Geburtstag","helper_text":"","type":"birthday","required":false,"audience_field_name":"Geburtstag","dateformat":"DD/MM","enabled":false,"order":null,"field_type":"merge","merge_id":3},"MMERGE8":{"name":"MMERGE8","label":"Untitled","helper_text":"","type":"text","required":false,"audience_field_name":"Untitled","enabled":false,"order":null,"field_type":"merge","merge_id":8},"MMERGE2":{"name":"MMERGE2","label":"Last Name","helper_text":"","type":"number","required":false,"audience_field_name":"Last Name","enabled":false,"order":null,"field_type":"merge","merge_id":2},"MMERGE4":{"name":"MMERGE4","label":"Company","helper_text":"","type":"text","required":false,"audience_field_name":"Company","enabled":false,"order":null,"field_type":"merge","merge_id":4},"MMERGE5":{"name":"MMERGE5","label":"Country","helper_text":"","type":"text","required":false,"audience_field_name":"Country","enabled":false,"order":null,"field_type":"merge","merge_id":5},"MMERGE6":{"name":"MMERGE6","label":"Website","helper_text":"","type":"text","required":false,"audience_field_name":"Website","enabled":false,"order":null,"field_type":"merge","merge_id":6},"MMERGE7":{"name":"MMERGE7","label":"Anrede","helper_text":"","type":"text","required":false,"audience_field_name":"Anrede","enabled":false,"order":null,"field_type":"merge","merge_id":7},"MMERGE9":{"name":"MMERGE9","label":"Ich bin:","helper_text":"","type":"radio","required":false,"audience_field_name":"Ich bin:","choices":[{"value":"Endverbraucher","label":"Endverbraucher"},{"value":"Friseur","label":"Friseur"}],"enabled":false,"order":null,"field_type":"merge","merge_id":9},"MMERGE10":{"name":"MMERGE10","label":"Kunde","helper_text":"","type":"number","required":false,"audience_field_name":"Kunde","enabled":false,"order":null,"field_type":"merge","merge_id":10},"MMERGE11":{"name":"MMERGE11","label":"Ich bin Friseur","helper_text":"","type":"radio","required":false,"audience_field_name":"Ich bin Friseur","choices":[{"value":"Ja","label":"Ja"}],"enabled":false,"order":null,"field_type":"merge","merge_id":11}}).find(function(f) { return f.name === fieldName && f.type === 'smsphone'; });
1898var isRequired = smsField ? smsField.required : false;
1899var shouldAppendCountryCode = smsNotRequiredRemoveCountryCodeEnabled ? isRequired : true;
1900
1901var phoneInput = document.querySelector('#mce-' + fieldName);
1902if (phoneInput && defaultProgram.countryCallingCode && shouldAppendCountryCode) {
1903phoneInput.value = defaultProgram.countryCallingCode;
1904}
1905
1906displayFlag?.addEventListener('click', function(e) {
1907dropdown.focus();
1908});
1909
1910dropdown?.addEventListener('change', function() {
1911const selectedCountry = this.value;
1912
1913if (!selectedCountry || typeof selectedCountry !== 'string') {
1914return;
1915}
1916
1917const flagSpan = displayFlag?.querySelector('#flag-emoji-' + fieldName);
1918if (flagSpan) {
1919flagSpan.textContent = getCountryUnicodeFlag(selectedCountry);
1920flagSpan.setAttribute('aria-label', sanitizeHtml(selectedCountry) + ' flag');
1921}
1922
1923const selectedProgram = window.MC?.smsPhoneData?.programs.find(function(program) {
1924return program && program.countryCode === selectedCountry;
1925});
1926
1927var smsNotRequiredRemoveCountryCodeEnabled = true;
1928var smsField = Object.values({"EMAIL":{"name":"EMAIL","label":"E-Mail Adresse","helper_text":"","type":"email","required":true,"audie
1928nce_field_name":"E-Mail Adresse","merge_id":0,"help_text_enabled":false,"enabled":true,"order":0,"field_type":"merge"},"MMERGE12":{"name":"MMERGE12","label":"I am a hairdresser","helper_text":"","type":"radio","required":true,"audience_field_name":"I am a hairdresser","choices":[{"value":"Yes","label":"Yes"}],"merge_id":12,"help_text_enabled":false,"enabled":true,"order":1,"field_type":"merge"},"FNAME":{"name":"FNAME","label":"Vorname","helper_text":"","type":"text","required":false,"audience_field_name":"Vorname","enabled":false,"order":null,"field_type":"merge","merge_id":1},"BIRTHDAY":{"name":"BIRTHDAY","label":"Geburtstag","helper_text":"","type":"birthday","required":false,"audience_field_name":"Geburtstag","dateformat":"DD/MM","enabled":false,"order":null,"field_type":"merge","merge_id":3},"MMERGE8":{"name":"MMERGE8","label":"Untitled","helper_text":"","type":"text","required":false,"audience_field_name":"Untitled","enabled":false,"order":null,"field_type":"merge","merge_id":8},"MMERGE2":{"name":"MMERGE2","label":"Last Name","helper_text":"","type":"number","required":false,"audience_field_name":"Last Name","enabled":false,"order":null,"field_type":"merge","merge_id":2},"MMERGE4":{"name":"MMERGE4","label":"Company","helper_text":"","type":"text","required":false,"audience_field_name":"Company","enabled":false,"order":null,"field_type":"merge","merge_id":4},"MMERGE5":{"name":"MMERGE5","label":"Country","helper_text":"","type":"text","required":false,"audience_field_name":"Country","enabled":false,"order":null,"field_type":"merge","merge_id":5},"MMERGE6":{"name":"MMERGE6","label":"Website","helper_text":"","type":"text","required":false,"audience_field_name":"Website","enabled":false,"order":null,"field_type":"merge","merge_id":6},"MMERGE7":{"name":"MMERGE7","label":"Anrede","helper_text":"","type":"text","required":false,"audience_field_name":"Anrede","enabled":false,"order":null,"field_type":"merge","merge_id":7},"MMERGE9":{"name":"MMERGE9","label":"Ich bin:","helper_text":"","type":"radio","required":false,"audience_field_name":"Ich bin:","choices":[{"value":"Endverbraucher","label":"Endverbraucher"},{"value":"Friseur","label":"Friseur"}],"enabled":false,"order":null,"field_type":"merge","merge_id":9},"MMERGE10":{"name":"MMERGE10","label":"Kunde","helper_text":"","type":"number","required":false,"audience_field_name":"Kunde","enabled":false,"order":null,"field_type":"merge","merge_id":10},"MMERGE11":{"name":"MMERGE11","label":"Ich bin Friseur","helper_text":"","type":"radio","required":false,"audience_field_name":"Ich bin Friseur","choices":[{"value":"Ja","label":"Ja"}],"enabled":false,"order":null,"field_type":"merge","merge_id":11}}).find(function(f) { return f.name === fieldName && f.type === 'smsphone'; });
1929var isRequired = smsField ? smsField.required : false;
1930var shouldAppendCountryCode = smsNotRequiredRemoveCountryCodeEnabled ? isRequired : true;
1931
1932var phoneInput = document.querySelector('#mce-' + fieldName);
1933if (phoneInput && selectedProgram.countryCallingCode && shouldAppendCountryCode) {
1934phoneInput.value = selectedProgram.countryCallingCode;
1935}
1936
1937updateSmsLegalText(selectedCountry, fieldName);
1938updatePlaceholder(selectedCountry, fieldName);
1939updateCountryCodeInstruction(selectedCountry, fieldName);
1940});
1941}
1942
1943document.addEventListener('DOMContentLoaded', function() {
1944const smsPhoneFields = document.querySelectorAll('[id^="country-select-"]');
1945
1946smsPhoneFields.forEach(function(dropdown) {
1947const fieldName = dropdown?.id.replace('country-select-', '');
1948initializeSmsPhoneDropdown(fieldName);
1949});
1950});
1951</script>
1951</div>
1952          
1953          
1954          
1955        </div>
1956        
1957      </div>
1958    </div>
1959  </image-with-text-block>
1960</section>
1961
1962</div><div id="shopify-section-sections--25278970921295__footer" class="shopify-section shopify-section-group-footer-group shopify-section--footer"><style>
1963  #shopify-section-sections--25278970921295__footer .footer {--background: 32, 53, 31;
1964    --heading-color: 255, 255, 255;
1965    --text-color: 255, 255, 255;
1966    --border-color: 65, 83, 65;
1967  }
1968</style>
1969
1970<footer class="footer ">
1971  <div class="container">
1972    <div class="footer__inner">
1973      <div class="footer__item-list"><div class="footer__item footer__item--text is-first" ><p class="footer__item-title heading heading--small">About the brand</p><div class="footer__item-content"><p>Yours Truly is the answer to an increasingly noisy world – minimalist, clear and effective.</p></div></div><div class="footer__item footer__item--links " ><p class="footer__item-title heading heading--small">Further Information (US)</p>
1974
1975                  <div class="footer__item-content">
1976                    <ul class="linklist list--unstyled" ><li class="linklist__item" >
1977                          <a href="/pages/haufig-gestellte-fragen" class="link--faded">Frequently Asked Questions</a>
1978                        </li><li class="linklist__item" >
1979                          <a href="/collections/produktsuche" class="link--faded">Professional Products</a>
1980                        </li>
1981                    </ul>
1982                  </div></div><div class="footer__item footer__item--links " ><p class="footer__item-title heading heading--small">Legal (US)</p>
1983
1984                  <div class="footer__item-content">
1985                    <ul class="linklist list--unstyled" ><li class="linklist__item" >
1986                          <a href="/policies/privacy-policy" class="link--faded">Data protection</a>
1987                        </li><li class="linklist__item" >
1988                          <a href="/policies/legal-notice" class="link--faded">imprint</a>
1989                        </li><li class="linklist__item" >
1990                          <a href="/pages/cookie-erklaerung" class="link--faded">Cookie Policy </a>
1991                        </li>
1992                    </ul>
1993                  </div></div><div class="footer__item footer__item--social-media " ><p class="footer__item-title heading heading--small">Follow us</p><div class="footer__item-content"><p>Stay connected with us</p><ul class="social-media  list--unstyled" role="list">
1994    <li class="social-media__item social-media__item--facebook">
1995      <a href="https://www.facebook.com/yourstrulyhaircare" target="_blank" rel="noopener" class="social-media__link" aria-label="Follow us on Facebook"><svg focusable="false" width="9" height="17" class="icon icon--facebook   " viewBox="0 0 9 17">
1996        <path fill-rule="evenodd" clip-rule="evenodd" d="M2.486 16.2084L2.486 8.81845H0L0 5.93845L2.486 5.93845L2.486 3.81845C2.38483 2.79982 2.73793 1.78841 3.45107 1.05407C4.16421 0.319722 5.16485 -0.0628415 6.186 0.00844868C6.9284 0.00408689 7.67039 0.0441585 8.408 0.128449V2.69845L6.883 2.69845C6.4898 2.61523 6.08104 2.73438 5.79414 3.01585C5.50724 3.29732 5.3803 3.70373 5.456 4.09845L5.456 5.93845H8.308L7.936 8.81845H5.46L5.46 16.2084H2.486Z" fill="currentColor"></path>
1997      </svg></a>
1998    </li><li class="social-media__item social-media__item--instagram">
1999      <a href="https://www.instagram.com/yourstruly_haircare/" target="_blank" rel="noopener" class="social-media__link" aria-label="Follow us on Instagram"><svg focusable="false" width="16" height="16" class="icon icon--instagram   " viewBox="0 0 16 16">
2000        <path fill-rule="evenodd" clip-rule="evenodd" d="M8 0C5.827 0 5.555.01 4.702.048 3.85.087 3.269.222 2.76.42a3.921 3.921 0 00-1.417.923c-.445.444-.719.89-.923 1.417-.198.509-.333 1.09-.372 1.942C.01 5.555 0 5.827 0 8s.01 2.445.048 3.298c.039.852.174 1.433.372 1.942.204.526.478.973.923 1.417.444.445.89.719 1.417.923.509.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.445-.01 3.298-.048c.852-.039 1.433-.174 1.942-.372a3.922 3.922 0 001.417-.923c.445-.444.719-.89.923-1.417.198-.509.333-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.298c-.039-.852-.174-1.433-.372-1.942a3.922 3.922 0 00-.923-1.417A3.921 3.921 0 0013.24.42c-.509-.198-1.09-.333-1.942-.372C10.445.01 10.173 0 8 0zm0 1.441c2.136 0 2.39.009 3.233.047.78.036 1.203.166 1.485.276.374.145.64.318.92.598.28.28.453.546.598.92.11.282.24.705.276 1.485.038.844.047 1.097.047 3.233s-.009 2.39-.047 3.233c-.036.78-.166 1.203-.276 1.485-.145.374-.318.64-.598.92-.28.28-.546.453-.92.598-.282.11-.70
20005.24-1.485.276-.844.038-1.097.047-3.233.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.479 2.479 0 01-.92-.598 2.478 2.478 0 01-.598-.92c-.11-.282-.24-.705-.276-1.485-.038-.844-.047-1.097-.047-3.233s.009-2.39.047-3.233c.036-.78.166-1.203.276-1.485.145-.374.318-.64.598-.92.28-.28.546-.453.92-.598.282-.11.705-.24 1.485-.276.844-.038 1.097-.047 3.233-.047zm0 9.226a2.667 2.667 0 110-5.334 2.667 2.667 0 010 5.334zm0-6.775a4.108 4.108 0 100 8.216 4.108 4.108 0 000-8.216zm5.23-.162a.96.96 0 11-1.92 0 .96.96 0 011.92 0z" fill="currentColor"></path>
2001      </svg></a>
2002    </li><li class="social-media__item social-media__item--youtube">
2003      <a href="https://www.youtube.com/@yourstrulyhaircare" target="_blank" rel="noopener" class="social-media__link" aria-label="Follow us on YouTube"><svg fill="none" focusable="false" width="18" height="13" class="icon icon--youtube   " viewBox="0 0 18 13">
2004        <path fill-rule="evenodd" clip-rule="evenodd" d="M16.0325 0.369454C16.807 0.572743 17.4168 1.17173 17.6238 1.9324C18 3.31101 18 6.1875 18 6.1875C18 6.1875 18 9.06389 17.6238 10.4427C17.4168 11.2033 16.807 11.8023 16.0325 12.0056C14.6288 12.375 9 12.375 9 12.375C9 12.375 3.37122 12.375 1.96752 12.0056C1.19311 11.8023 0.583159 11.2033 0.376159 10.4427C0 9.06389 0 6.1875 0 6.1875C0 6.1875 0 3.31101 0.376159 1.9324C0.583159 1.17173 1.19311 0.572743 1.96752 0.369454C3.37122 0 9 0 9 0C9 0 14.6288 0 16.0325 0.369454ZM11.8636 6.1876L7.1591 8.79913V3.57588L11.8636 6.1876Z" fill="currentColor"></path>
2005      </svg></a>
2006    </li>
2007  </ul></div></div></div>
2008
2009      <div class="footer__aside">
2010        <span class="footer__copyright text--xsmall text--subdued">Yours Truly</span>
2011
2012        
2013      </div>
2014    </div>
2015  </div>
2016</footer>
2017
2018</div>
2019<!-- END sections: footer-group -->
2019<script data-ot-ignore>
2020    document.addEventListener('DOMContentLoaded', function () {
2021      const observer = new MutationObserver(function () {
2022        const iframe = document.querySelector('#ys-chatbot-iframe');
2023        if (iframe && !iframe.hasAttribute('title')) {
2024          iframe.setAttribute('title', 'Kundensupport Chat');
2025          iframe.setAttribute('aria-label', 'Kundensupport Chat');
2026        }
2027      });
2028      observer.observe(document.body, { childList: true, subtree: true });
2029    });
2030  </script>
2030
2031  <div id="shopify-block-AdlMwdW41eW0wNHQ2b__18131037017812181619" class="shopify-block shopify-app-block">
2032  
2032<script defer src="https://chimpstatic.com/mcjs-connected/js/users/20492790b4d5b7048526c801c/5f9a6a67117558ac64c6ac329.js"></script>
2032
2033  
2033<script>window.mc_embedded = true;</script>
2033
2034
2035
2036
2037</div>
2037<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
2037
2038</body>
2039</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.