/* growform client2 bundle.url: https://assets.growform.co/c0fb756-mguwl632/form.bundle.js resolve.source: memory resolve.at: 2025-10-19T22:56:37.684Z form.source: kv cache.age_ms: 840 fallback_used: false */ ;(function () { var EMBED_TYPE = "iFrame"; var FORM_ID = "679ff8ab27a165000b392580"; var FORM_BUNDLE_URL = "https://assets.growform.co/c0fb756-mguwl632/form.bundle.js"; // injected by worker (KV/memory/fallback) var FORM_DATA = {"data":{"form":{"_id":"679ff8ab27a165000b392580","steps":[{"id":"acd45227cac332d443c4e1db","name":"How would you describe your skin?","sortOrder":1},{"id":"d92b8613357f0883e8c6d03c","name":"What’s your biggest skin concern right now?","sortOrder":2,"copyOf":"acd45227cac332d443c4e1db"},{"id":"ac677196a20628549b52cba8","name":"How’s your skincare routine looking?","sortOrder":3,"copyOf":"d92b8613357f0883e8c6d03c"},{"id":"ec4b6bbb4bb30b1a2f000a48","name":"What best describes your lifestyle? ","sortOrder":4,"copyOf":"ac677196a20628549b52cba8"},{"id":"b32cee897c1fa89ae943be21","name":"Have you ever had professional skin treatments?","sortOrder":5,"copyOf":"ac677196a20628549b52cba8"},{"id":"1896419c17c13943936030a2","name":"What’s your main skin goal?","sortOrder":6,"copyOf":"ac677196a20628549b52cba8"},{"id":"3d98359b04de3d45aad80dde","name":"Form","sortOrder":7,"copyOf":"1896419c17c13943936030a2"}],"formName":"Lafont Skin Clinic - Homepage Skin Quiz","fields":{"Decorative Header_52363373085874":{"type":"Decorative Header","value":"Thanks! We’ll review your answers and get back to you quickly with tailored recommendations! \nKeep an eye open for the email.","width":12,"step":"complete","sortOrder":1,"fieldStyle":{"fontSize":{"value":19,"unit":"px"},"fontWeight":"Bold"},"margins":{"marginTop":20},"stepId":"complete"},"Decorative Header_797442086161467":{"type":"Decorative Header","value":"How would you describe your skin?","width":12,"step":2,"sortOrder":1,"fieldStyle":{"fontSize":{"value":18,"unit":"px"},"fontWeight":"Bold"},"stepId":"acd45227cac332d443c4e1db","margins":{"marginBottom":0}},"buttons_109446974978914":{"type":"Buttons","validationRules":{"required":true},"label":"How would you describe your skin?","width":12,"multiple":false,"buttonStyle":{"rt_buttonsPerRow":"1","rt_buttonsPerRowMobile":1,"buttonsType":"Rectangle","spacing":13,"showControls":"Yes","rt_compactLayoutOnMobile":"Yes"},"options":[{"text":"Oily – I get shiny throughout the day ","id":"5be94772672205ea06fa1c3c"},{"text":"Dry – My skin often feels tight or flaky ","id":"192368f189795a7f9199624d"},{"text":"Combination – A mix of oily and dry areas ","id":"cd688d984891cf9918f17913"},{"text":"Sensitive – Easily irritated or reactive","id":"4aa2d0676e2b31322c5ba7d6"},{"text":"Not sure","image":null,"id":"187910be3f1bbfa2768a9228"}],"stepId":"acd45227cac332d443c4e1db","sortOrder":2,"hideLabel":true},"decorative_header_606735848265218":{"type":"Decorative Header","value":"What’s your biggest skin concern right now?\n","width":12,"step":2,"sortOrder":1,"fieldStyle":{"fontSize":{"value":18,"unit":"px"},"fontWeight":"Bold"},"stepId":"d92b8613357f0883e8c6d03c","margins":{"marginBottom":0}},"buttons_58233628068502":{"type":"Buttons","validationRules":{"required":true},"label":"What’s your biggest skin concern right now?","width":12,"multiple":false,"buttonStyle":{"rt_buttonsPerRow":"1","rt_buttonsPerRowMobile":1,"buttonsType":"Rectangle","spacing":13,"showControls":"Yes","rt_compactLayoutOnMobile":"Yes"},"options":[{"text":"Breakouts & congestion ","id":"5be94772672205ea06fa1c3c"},{"text":"Redness & sensitivity ","id":"192368f189795a7f9199624d"},{"text":"Pigmentation & uneven skin tone ","id":"cd688d984891cf9918f17913"},{"text":"Fine lines & aging ","id":"4aa2d0676e2b31322c5ba7d6"},{"text":"Dryness & lack of glow ","image":null,"id":"b3c6885bf556a75ccb16d588"}],"stepId":"d92b8613357f0883e8c6d03c","sortOrder":2,"hideLabel":true},"decorative_header_686673916857028":{"type":"Decorative Header","value":"How’s your skincare routine looking?","width":12,"step":2,"sortOrder":1,"fieldStyle":{"fontSize":{"value":18,"unit":"px"},"fontWeight":"Bold"},"stepId":"ac677196a20628549b52cba8","margins":{"marginBottom":0}},"buttons_597995995845469":{"type":"Buttons","validationRules":{"required":true},"label":"How’s your skincare routine looking?","width":12,"multiple":false,"buttonStyle":{"rt_buttonsPerRow":"1","rt_buttonsPerRowMobile":1,"buttonsType":"Rectangle","spacing":13,"showControls":"Yes","rt_compactLayoutOnMobile":"Yes"},"options":[{"text":"Super simple – just the basics ","id":"5be94772672205ea06fa1c3c"},{"text":"A mix of products, but I’m not sure if they’re right for me ","id":"192368f189795a7f9199624d"},{"text":"Pretty solid – I love skincare!","id":"cd688d984891cf9918f17913"},{"text":"I don’t have one yet but want to start ","id":"4aa2d0676e2b31322c5ba7d6"}],"stepId":"ac677196a20628549b52cba8","sortOrder":2,"hideLabel":true},"decorative_header_161951676693027":{"type":"Decorative Header","value":"What best describes your lifestyle? ","width":12,"step":2,"sortOrder":1,"fieldStyle":{"fontSize":{"value":18,"unit":"px"},"fontWeight":"Bold"},"stepId":"ec4b6bbb4bb30b1a2f000a48","margins":{"marginBottom":0}},"buttons_754838758099967":{"type":"Buttons","validationRules":{"required":true},"label":"What best describes your lifestyle? ","width":12,"multiple":false,"buttonStyle":{"rt_buttonsPerRow":"1","rt_buttonsPerRowMobile":1,"buttonsType":"Rectangle","spacing":13,"showControls":"Yes","rt_compactLayoutOnMobile":"Yes"},"options":[{"text":"Busy & on the go – I need quick, effective solutions ","id":"5be94772672205ea06fa1c3c"},{"text":"Balanced – I like skincare but need it to be easy","id":"192368f189795a7f9199624d"},{"text":"Self-care lover – I enjoy a full routine ","id":"cd688d984891cf9918f17913"}],"stepId":"ec4b6bbb4bb30b1a2f000a48","sortOrder":2,"hideLabel":true},"decorative_header_990029344916920":{"type":"Decorative Header","value":"Have you ever had professional skin treatments?","width":12,"step":2,"sortOrder":1,"fieldStyle":{"fontSize":{"value":18,"unit":"px"},"fontWeight":"Bold"},"stepId":"b32cee897c1fa89ae943be21","margins":{"marginBottom":0}},"buttons_634396269425167":{"type":"Buttons","validationRules":{"required":true},"label":"Have you ever had professional skin treatments?","width":12,"multiple":false,"buttonStyle":{"rt_buttonsPerRow":"1","rt_buttonsPerRowMobile":1,"buttonsType":"Rectangle","spacing":13,"showControls":"Yes","rt_compactLayoutOnMobile":"Yes"},"options":[{"text":"Yes, regularly! ","id":"5be94772672205ea06fa1c3c"},{"text":"A few times here and there ","id":"192368f189795a7f9199624d"},{"text":"Never, but I’m curious ","id":"cd688d984891cf9918f17913"},{"text":"No, and I’m not sure if they’re right for me ","id":"4aa2d0676e2b31322c5ba7d6"}],"stepId":"b32cee897c1fa89ae943be21","sortOrder":2,"hideLabel":true},"decorative_header_695250265107752":{"type":"Decorative Header","value":"What’s your main skin goal?","width":12,"step":2,"sortOrder":1,"fieldStyle":{"fontSize":{"value":18,"unit":"px"},"fontWeight":"Bold"},"stepId":"1896419c17c13943936030a2","margins":{"marginBottom":0}},"buttons_68966986720298":{"type":"Buttons","validationRules":{"required":true},"label":"What’s your main skin goal?","width":12,"multiple":false,"buttonStyle":{"rt_buttonsPerRow":"1","rt_buttonsPerRowMobile":1,"buttonsType":"Rectangle","spacing":13,"showControls":"Yes","rt_compactLayoutOnMobile":"Yes"},"options":[{"text":"Clear, blemish-free skin ","id":"5be94772672205ea06fa1c3c"},{"text":"A bright, even complexion ","id":"192368f189795a7f9199624d"},{"text":"Youthful, firm skin ","id":"cd688d984891cf9918f17913"},{"text":"Deep hydration & nourishment ","id":"4aa2d0676e2b31322c5ba7d6"}],"stepId":"1896419c17c13943936030a2","sortOrder":2,"hideLabel":true},"decorative_header_406285451513649":{"type":"Decorative Header","value":"Your Personalised Skin \nPlan is Ready!","width":12,"stepId":"3d98359b04de3d45aad80dde","sortOrder":1,"fieldStyle":{"fontSize":{"value":18,"unit":"px"}}},"decorative_paragraph_171355809511340":{"type":"Decorative Paragraph","value":"\nBased on your answers, we’ll email through the best products and treatments for your skin. \n\n(Plus, we'll send you an exclusive discount!)\n","width":10,"stepId":"3d98359b04de3d45aad80dde","sortOrder":2,"fieldStyle":{"fontSize":{"value":12,"unit":"px"},"textAlign":"center","letterSpacing":"1px"}},"decorative_header_483512862754341":{"type":"Decorative Header","value":"Send Me My Personalised Skin Plan:","width":12,"stepId":"3d98359b04de3d45aad80dde","sortOrder":3,"fieldStyle":{"fontSize":{"value":16,"unit":"px"}}},"email_557253786662260":{"type":"Email","label":"Email","width":12,"stepId":"3d98359b04de3d45aad80dde","sortOrder":5,"useZerobounce":true},"text_748160680903124":{"type":"Text","label":"Name","width":12,"stepId":"3d98359b04de3d45aad80dde","sortOrder":4,"validationRules":{"required":true},"multiline":false},"decorative_paragraph_98526897044534":{"type":"Decorative Paragraph","value":"In the meantime, enjoy 10% off today with code: SKIN10 \n","width":12,"stepId":"complete","sortOrder":2,"fieldStyle":{"fontWeight":"normal"}},"decorative_paragraph_474417796977590":{"type":"Decorative Paragraph","value":"(Use it at checkout or mention it when booking a treatment!) ","width":12,"stepId":"complete","sortOrder":3,"fieldStyle":{"fontSize":{"value":12,"unit":"px"}}}},"options":{"numberOfSteps":5,"dateFormat":"DD/MM/YYYY","progressBar":{"enable":true,"variant":"line","line_enableStripes":"No"},"continueButton":{"continueText":"Send My Skin Plan","submitText":"Send My Skin Plan","backText":"Back"},"customStyles":{"width":{"unit":"px","value":400},"parentContainerMinHeight":{"value":null,"unit":"px"},"parentBackgroundImage":{"imageInitialHeight":1362,"imageInitialWidth":2066,"imageHeight":1362,"imageWidth":2066,"imageUrl":"https://res.cloudinary.com/dqnjggegp/image/upload/v1597337140/uploads/qmsfk98ank3wfp1ehvyg.jpg"},"headerMarginTop":20,"parentBackgroundColor":"#ffffff","innerFormBackgroundColor":"#ffffff","innerFormBackgroundTransparency":"","primaryColor":"#0a83ca","bodyTextColor":"#343434","parentContainerBackgroundType":"color","innerFormBackgroundType":"none","buttonBorderColor":"#ff7500","buttonColorSelected":"#ffa659","buttonBorderColorSelected":"#ff7500","footerMarginBottom":40,"errorColor":"#ff4e4e","buttonColor":"#ff7500","buttonTextColor":"#ffffff","inputLabelColor":"#a3a3a3","inputTextColor":"#000000","defaultFont":"Open Sans","sq_buttonFont":"Poppins","sq_buttonFontSize":15,"showShadows":"Yes","sq_buttonTextColor":"#343434","sq_buttonColor":"#FFFFFF","sq_buttonColorSelected":"#FFFFFF","sq_buttonBorderColor":"#DADADA","sq_buttonBorderColorSelected":"primary","sq_buttonBannerColor":"#ffffff","rt_buttonFont":"Poppins","rt_buttonFontSize":15,"rt_buttonColor":"#FFFFFF","rt_buttonColorSelected":"#FFFFFF","rt_buttonTextColor":"#343434","rt_buttonBorderColor":"#DADADA","rt_buttonBorderColorSelected":"primary","inputLabelFont":"Poppins","inputFontSize":16,"continueSubmitButtonFontSize":15,"fullModeBackgroundColor":"#E7F3FA","canvasSetup":"full"},"localization":{"dateFormat":"MM/DD/YYYY"},"exportTransparentBackground":false,"customScript":"","customRedirectUrls":[{"url":""}],"logo":null,"additionalInfo":null},"ownedByUser":"62984fc588f4fc0021160a2c","personalisation":{"form_related_to":"(None - start with a blank slate)"},"created":"2025-02-02T22:58:51.431Z","__v":0,"lastEdited":"2025-08-24T23:56:25.007Z","screenshotUrl":"https://res.cloudinary.com/dqnjggegp/image/upload/v1756079217/growform-production/form-screenshots/679ff8ab27a165000b392580.png","leadsCount":19,"isActive":true},"accountIsActive":true,"accountIsFreeTrial":false}}; // ---- Utils ---- function safeJSONStringify(obj) { return JSON.stringify(obj) .replace(/<\/(script|style)/gi, '<\\/$1') .replace(//g, '--\\>') .replace(/\u2028/g, '\\u2028') .replace(/\u2029/g, '\\u2029'); } function preloadScript(href) { try { if (!href) return; if (document.querySelector('link[rel="preload"][href="' + href + '"]')) return; var l = document.createElement("link"); l.rel = "preload"; l.as = "script"; l.href = href; l.crossOrigin = ""; // allow cache reuse in iframe document.head.appendChild(l); } catch (_) {} } function parseQuery() { var out = {}; try { if (!window.location.search) return out; var usp = new URLSearchParams(window.location.search); usp.forEach(function (v, k) { out[k] = v; }); } catch (_) {} return out; } function buildIframeHTML(opts) { var html = '\n' + '\n' + '\n' + ' \n' + ' \n' + ' \n' + '\n' + '\n' + ' \n' + '
\n' + '