\n\t {/*
*/}\n\t\t {widgets.map((widget, index) => {\n\t\t\tswitch(widget.__typename) {\n\t\t case 'WpPage_Widgets_PageWidgets_Hero': return (\n\t\t
\n\t\t );\t\n\t\t case 'WpPage_Widgets_PageWidgets_Trustpilot': return (\n\t\t
\n\t\t );\t\t\n\t\t case 'WpPage_Widgets_PageWidgets_Content': return (\n\t\t
\n\t\t );\t \n\t\t case 'WpPage_Widgets_PageWidgets_AwardBar': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_QuickLinkCards': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_Articles': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_Process': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_Cta': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_QuickLink': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_Faq': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_Partners': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_Quote': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_ProductRange': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_ProductRangeManual': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_LandbayExecTeam': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_FeaturedProduct': return (\n\t\t
\n\t\t );\t \n\t\t case 'WpPage_Widgets_PageWidgets_UspBar': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_Benefits': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_PopularDownloads': return (\n\t\t
\n\t\t );\t\t \n\t\t case 'WpPage_Widgets_PageWidgets_RelatedArticles': return (\n\t\t
\n\t\t );\t\t\t \n\t\t case 'careers': return (\n\t\t
\n\t\t );\t \t\t \n\t\t case 'careersTabs': return (\n\t\t
\n\t\t );\t \n\t\t case 'WpPage_Widgets_PageWidgets_HowWeDoThings': return (\n\t\t
\n\t\t );\t\n\t\t case 'WpPage_Widgets_PageWidgets_HorizontalLine': return (\n\t\t
\n\t\t );\t\n\t\t case 'WpPage_Widgets_PageWidgets_Sitemap': return (\n\t\t
\n\t\t );\t\t\n\t\t case 'WpPage_Widgets_PageWidgets_Video': return (\n\t\t
\n\t\t );\t \n\t\t default: return (
Widget: {widget.__typename}
)\n\t\t }\n\t })}\n\t
\n\t)\n}\n\nexport const WidgetFragment = graphql`\n\tfragment WidgetFragment on WpPage {\n\t widgets {\n\t pageWidgets {\n\t\t\t__typename\n\t ... on WpPage_Widgets_PageWidgets_Hero {\n\t layout\n\t title\n\t subtitle\n\t\t\t content\n\t buttons {\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t\t\t images {\n\t\t\t\tmobileImage {\n\t\t localFile {\n\t\t childImageSharp {\n\t\t gatsbyImageData(\n\t\t sizes: \"100vw\"\n\t\t breakpoints: [750]\n\t\t )\n\t\t }\n\t\t }\n\t\t altText\n\t\t }\n\t\t desktopImage {\n\t\t localFile {\n\t\t childImageSharp {\n\t\t gatsbyImageData(\n\t\t sizes: \"(min-width: 768px) 1280px\"\n\t\t breakpoints: [2560]\n\t\t )\n\t\t }\n\t\t }\n\t\t altText\n\t\t }\n\t }\n\t }\n\t\t\t... on WpPage_Widgets_PageWidgets_Trustpilot {\n\t\t\t trustpilotWidget\n\t\t\t}\n \t... on WpPage_Widgets_PageWidgets_Content {\n\t layout\n\t\t\t image {\n\t\t\t image {\n localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t\t sizes: \"(min-width: 1280px) 616px, (min-width: 768px) calc(50vw - 24px), 284px\",\n\t\t\t\t\t\t breakpoints: [568, 1232]\n\t\t\t )\n\t\t\t }\n }\n }\n\t\t\t\ttitle\n\t\t\t\tdescription\n }\n\t\t\t copy {\n\t\t\t\tsubtitle\n\t title\n\t accordion {\n\t text\n\t title\n\t\t\t image {\n localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t\t sizes: \"(min-width: 1280px) 500px, (min-width: 768px) calc(50vw - 24px), 284px\",\n\t\t\t\t\t\t breakpoints: [568, 1000]\n\t\t\t )\n\t\t\t }\n }\n }\n\t }\n \t\ttext\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t }\n \t... on WpPage_Widgets_PageWidgets_Video {\n\t layout\n\t\t\t video {\n\t\t\t image {\n localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t\t sizes: \"(min-width: 1280px) 500px, (min-width: 768px) calc(50vw - 24px), 284px\",\n\t\t\t\t\t\t breakpoints: [568, 1000]\n\t\t\t )\n\t\t\t }\n }\n }\n\t\t\t\turl\n\t\t\t\thash\n }\n\t\t\t copy {\n\t\t\t\tsubtitle\n\t title\n\t accordion {\n\t text\n\t title\n\t }\n \t\ttext\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_AwardBar {\n\t title\n\t awards {\n\t award\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_QuickLinkCards {\n\t cards {\n\t title\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_Articles {\n\t title\n\t type\n\t articles {\n\t ... on WpPost {\n\t id\n\t title\n\t excerpt\n\t link\n\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_Process {\n\t\t\t layout\n\t copy {\n\t title\n\t intro\n\t image {\n\t localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t sizes: \"(min-width: 1280px) 616px, (min-width: 768px) calc(50vw - 24px), calc(100vw - 64px)\",\n\t\t\t\t\t\t breakpoints: [624, 720, 1232]\n\t\t\t )\n\t\t\t }\n }\n\t }\n\t finishedTitle\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t\t\t colour\n\t accordion {\n\t subtitle\n\t text\n\t\t\t subtitle2\n\t title\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_Cta {\n\t layout\n\t copy {\n\t title\n\t text\n\t buttons {\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t footerText\n\t }\n\t image {\n\t title\n\t description\n\t image {\n\t localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t sizes: \"(min-width: 768px) 1280px, 100vw\",\n\t\t\t\t\t\t breakpoints: [750, 2560]\n\t\t\t )\n\t\t\t }\n }\n\t }\n\t\t\t\tmobileImage {\n\t localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t sizes: \"88px\",\n\t\t\t\t\t\t breakpoints: [176]\n\t\t\t )\n\t\t\t }\n }\n\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_QuickLink {\n\t title\n\t links {\n\t link {\n\t url\n\t title\n\t target\n\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_Faq {\n\t\t\t layout\n\t searchBoxPlaceholder\n\t title\n\t accordion {\n\t title\n\t text\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_Partners {\n\t title\n\t intro\n\t }\n\t ... on WpPage_Widgets_PageWidgets_Quote {\n\t layout\n\t\t\t copy {\n\t text\n\t quoteSourceCompany\n\t quoteSourceName\n\t\t\t }\n\t\t\t images {\n\t\t image {\n\t\t localFile {\n\t\t\t\t\t childImageSharp {\n\t\t\t\t gatsbyImageData(\n\t\t\t\t\t\t sizes: \"(min-width: 768px) 1280px, 100vw\",\n\t\t\t\t\t\t breakpoints: [2560]\n\t\t\t\t )\n\t\t\t\t }\n\t\t }\n\t\t\t\t\taltText\n\t\t }\n\t\t mobileImage {\n\t\t localFile {\n\t\t\t\t\t childImageSharp {\n\t\t\t\t gatsbyImageData(\n\t\t\t\t\t\t sizes: \"88px\",\n\t\t\t\t\t\t breakpoints: [176]\n\t\t\t\t )\n\t\t\t\t }\n\t }\n\t\t\t\t\taltText\n\t\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_ProductRange {\n\t\t\t layout\n\t title\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_ProductRangeManual {\n\t\t\t layout\n\t title\n\t\t\t products {\n\t\t\t\ttitle\n\t ratesFrom\n\t minLoan\n\t maxLtvFrom\n\t maxLoan\n\t link {\n\t title\n\t target\n\t url\n\t }\n\t\t\t }\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_LandbayExecTeam {\n\t title\n\t intro\n\t executiveTeam {\n\t photo {\n\t localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t\tsizes: \"(min-width: 1280px) 288px, (min-width: 768px) calc(100vw - 32px), 81px\",\n\t\t\t\t\t\tbreakpoints: [162, 576, 788]\n\t\t\t )\n\t\t\t }\n }\n\t }\n\t linkedin\n\t jobTitle\n\t name\n\t popupPhoto {\n\t localFile {\n\t childImageSharp {\n\t gatsbyImageData(\n\t\t\t\t\t\tsizes: \"(min-width: 568px) 568px, calc(100vw - 32px)\",\n\t\t\t\t\t\tbreakpoints: [686, 1136]\n\t\t\t\t\t )\n\t }\n\t }\n\t }\n\t bio\n\t }\n\t boardMembers {\n\t photo {\n\t localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t\tsizes: \"(min-width: 1280px) 288px, (min-width: 768px) calc(100vw - 32px), 284px\",\n\t\t\t\t\t\tbreakpoints: [568, 576, 788]\n\t\t\t )\n\t\t\t }\n }\n\t }\n\t linkedin\n\t jobTitle\n\t name\n\t popupPhoto {\n\t localFile {\n\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t\tsizes: \"(min-width: 568px) 568px, calc(100vw - 32px)\",\n\t\t\t\t\t\tbreakpoints: [688, 1024, 1470]\n\t\t\t\t\t )\n\t }\n\t }\n\t }\n\t bio\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_FeaturedProduct {\n\t copy {\n\t newSticker\n\t title\n\t intro\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t product {\n\t backgroundColour\n\t source\n\t landbayProduct\n\t manual {\n\t line1\n\t line2\n\t line3\n\t line4\n\t line5\n\t line6\n\t line7\n\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_UspBar {\n\t usps {\n\t subtitle\n\t title\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_Benefits {\n\t intro\n\t title\n\t benefits {\n\t title\n\t copy\n\t image {\n\t localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t sizes: \"240px\",\n\t\t\t breakpoints: [480]\n\t\t\t )\n\t\t\t }\n }\n\t }\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_PopularDownloads {\n\t title\n\t blocks {\n\t title\n\t downloads {\n \t download\n \t}\n\t }\n\t button {\n\t target\n\t title\n\t url\n\t }\n\t }\n\t ... on WpPage_Widgets_PageWidgets_RelatedArticles {\n\t\t\t layout\n\t title\n\t articles {\n\t ... on WpPost {\n\t\t\t\t ...PostFragment\t \n\t }\n\t }\n\t }\n\t\t\t... on WpPage_Widgets_PageWidgets_HowWeDoThings {\n\t layout\n\t title\n\t blocks {\n\t image {\n\t localFile {\n\t\t\t\t childImageSharp {\n\t\t\t gatsbyImageData(\n\t\t\t\t\t sizes: \"240px\",\n\t\t\t breakpoints: [480]\n\t\t\t )\n\t\t\t }\n }\n\t }\n\t title\n\t copy\n\t }\n\t }\n\t }\n\t\t}\n\t}\n`\nWidgets.fragments = [PostPreview];//works without this but this stops the unused variable warning\n","/**\n * Allows a component to load a third party script\n * See: https://usehooks.com/useScript/\n */\nimport { useState, useEffect } from \"react\";\n\nexport default function useScript(src) {\n // Keep track of script status (\"idle\", \"loading\", \"ready\", \"error\")\n const [status, setStatus] = useState(src ? \"loading\" : \"idle\");\n useEffect(\n () => {\n // Allow falsy src value if waiting on other data needed for\n // constructing the script URL passed to this hook.\n if (!src) {\n setStatus(\"idle\");\n return;\n }\n // Fetch existing script element by src\n // It may have been added by another intance of this hook\n let script = document.querySelector(`script[src=\"${src}\"]`);\n if (!script) {\n // Create script\n script = document.createElement(\"script\");\n script.src = src;\n script.async = true;\n script.setAttribute(\"data-status\", \"loading\");\n // Add script to document body\n document.body.appendChild(script);\n // Store status in attribute on script\n // This can be read by other instances of this hook\n const setAttributeFromEvent = (event) => {\n script.setAttribute(\n \"data-status\",\n event.type === \"load\" ? \"ready\" : \"error\"\n );\n };\n script.addEventListener(\"load\", setAttributeFromEvent);\n script.addEventListener(\"error\", setAttributeFromEvent);\n } else {\n // Grab existing script status from attribute and set to state.\n setStatus(script.getAttribute(\"data-status\"));\n }\n // Script event handler to update status in state\n // Note: Even if the script already exists we still need to add\n // event handlers to update the state for *this* hook instance.\n const setStateFromEvent = (event) => {\n setStatus(event.type === \"load\" ? \"ready\" : \"error\");\n };\n // Add event listeners\n script.addEventListener(\"load\", setStateFromEvent);\n script.addEventListener(\"error\", setStateFromEvent);\n // Remove event listeners on cleanup\n return () => {\n if (script) {\n script.removeEventListener(\"load\", setStateFromEvent);\n script.removeEventListener(\"error\", setStateFromEvent);\n }\n };\n },\n [src] // Only re-run effect if script src changes\n );\n return status;\n}","\n/**\n * Format supplied number using abbreviations:\n * 10000000 = 10M\n * 12000 = 12k\n */\nexport const abbreviateNumber = function(number) {\n\t\t\n\tconst SI_SYMBOL = [\"\", \"k\", \"M\", \"B\", \"T\", \"P\", \"E\"];\n\t\n // what tier? (determines SI symbol)\n let tier = Math.log10(Math.abs(number)) / 3 | 0;\n\n // if zero, we don't need a suffix\n if (tier === 0) {\n\t\treturn number;\n\t}\n\n // get suffix and determine scale\n let suffix = SI_SYMBOL[tier];\n let scale = Math.pow(10, tier * 3);\n\n // scale the number\n\tlet scaled = number / scale;\n\t// format number and add suffix\n\tif (number%scale === 0) {\n\t\treturn scaled + suffix;\n\t} else {\n\t\t//this is to prevent 999k being displayed as 100.0k\n\t\tif (((scaled.toFixed(1)*10)%10)===0) {\n\t\t\treturn scaled.toFixed(0) + suffix;\n\t\t}\n \treturn scaled.toFixed(1) + suffix;\n\t}\t\n}\n\n/**\n * Formats a float like 0.0345 as a percentage like 3.45\n * Includes a fix for javascript precision issue\n */\nexport const floatToPercentage = function(number) {\n if (number===null) {\n\treturn '';//some products have 'null' for the some fields\t\n }\n number = number*100;\n //this is to get round the javascript precision bug where 0.034*100 = 3.4000000000000004\n //ref: https://stackoverflow.com/questions/21472828/javascript-multiplying-by-100-giving-weird-result\n if (countDecimals(number)>0) {\n\tnumber = number.toFixed(2);\n }\n if (number.toString().indexOf('.00')!==-1) {\n\tnumber = parseInt(number.split(\".\")[0]);\n }\n return number+'%';\n}\n\n/**\n * count the number of decimal places in a float\n */\nconst countDecimals = function(value) {\n if (Math.floor(value) === value) return 0;\n return value.toString().split(\".\")[1].length || 0; \n}\n\n\n/**\n * formats a numebr like 10000000 to 10,000,000\n */\nexport const numberWithCommas = function(number) {\n return number.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n}\n\n/**\n * Converts an amount in pennies to pounds\n */\nexport const penniesToPounds = function(number) {\n\t\n number = number/100;\n if (countDecimals(number)>0) {\n\tnumber = number.toFixed(2);\n }\n\n return '£'+numberWithCommas(number);\n}","var React = require('react');\n\nfunction IcArrow (props) {\n return React.createElement(\"svg\",props,[React.createElement(\"path\",{\"d\":\"M0 3C0 1.34314 1.34315 0 3 0H56V56H3C1.34314 56 0 54.6569 0 53V3Z\",\"fill\":\"#FECC37\",\"key\":0}),React.createElement(\"path\",{\"fillRule\":\"evenodd\",\"clipRule\":\"evenodd\",\"d\":\"M28.214 38.1273L38.9127 28.818L39.7797 28.0637L38.9127 27.3093L28.214 18L26.9012 19.5088L35.5882 27.0676L16.9998 27.3969L16 27.4146L16.0354 29.4142L17.0353 29.3965L35.5785 29.0681L26.9012 36.6185L28.214 38.1273Z\",\"fill\":\"white\",\"key\":1})]);\n}\n\nIcArrow.defaultProps = {\"width\":\"56\",\"height\":\"56\",\"viewBox\":\"0 0 56 56\",\"fill\":\"none\"};\n\nmodule.exports = IcArrow;\n\nIcArrow.default = IcArrow;\n","var React = require('react');\n\nfunction IcChevronDown (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"style\":{\"fill\":\"currentColor\"},\"d\":\"M0,1.3l8,8l8-8L14.7,0L8,6.7L1.3,0L0,1.3z\"}));\n}\n\nIcChevronDown.defaultProps = {\"version\":\"1.1\",\"id\":\"Layer_1\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 16 9.3\",\"style\":{\"enableBackground\":\"new 0 0 16 9.3\"},\"xmlSpace\":\"preserve\"};\n\nmodule.exports = IcChevronDown;\n\nIcChevronDown.default = IcChevronDown;\n","var React = require('react');\n\nfunction IcDownload (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"fillRule\":\"evenodd\",\"clipRule\":\"evenodd\",\"d\":\"M12.999 2.234V14.32l4.293-4.293 1.414 1.415L12 18.148 5.292 11.44l1.414-1.414L11 14.32V2.234h2zM21.999 22.234h-20v-2h20v2z\",\"fill\":\"currentColor\"}));\n}\n\nIcDownload.defaultProps = {\"width\":\"24\",\"height\":\"25\",\"viewBox\":\"0 0 24 25\",\"fill\":\"none\"};\n\nmodule.exports = IcDownload;\n\nIcDownload.default = IcDownload;\n","var React = require('react');\n\nfunction IcPlay (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"fill\":\"currentColor\",\"d\":\"M256 504c137 0 248-111 248-248S393 8 256 8 8 119 8 256s111 248 248 248zM40 256c0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216-118.7 0-216-96.1-216-216zm331.7-18l-176-107c-15.8-8.8-35.7 2.5-35.7 21v208c0 18.4 19.8 29.8 35.7 21l176-101c16.4-9.1 16.4-32.8 0-42zM192 335.8V176.9c0-4.7 5.1-7.6 9.1-5.1l134.5 81.7c3.9 2.4 3.8 8.1-.1 10.3L201 341c-4 2.3-9-.6-9-5.2z\"}));\n}\n\nIcPlay.defaultProps = {\"viewBox\":\"0 0 512 512\"};\n\nmodule.exports = IcPlay;\n\nIcPlay.default = IcPlay;\n","var React = require('react');\n\nfunction IcQuote (props) {\n return React.createElement(\"svg\",props,React.createElement(\"path\",{\"d\":\"M15.088 5.73438H8.38L3.736 13.9044C1.586 17.6884 1.5 18.4624 1.5 20.0104C1.5 23.6224 4.51 26.4604 8.294 26.4604C11.992 26.4604 15.002 23.6224 15.002 20.0104C15.002 17.6024 13.712 15.6244 10.96 14.5064L15.088 5.73438ZM31.428 5.73438H24.72L20.076 13.9044C17.926 17.6884 17.84 18.4624 17.84 20.0104C17.84 23.6224 20.85 26.4604 24.634 26.4604C28.332 26.4604 31.342 23.6224 31.342 20.0104C31.342 17.6024 30.052 15.6244 27.3 14.5064L31.428 5.73438Z\",\"fill\":\"currentColor\"}));\n}\n\nIcQuote.defaultProps = {\"width\":\"33\",\"height\":\"33\",\"viewBox\":\"0 0 33 33\",\"fill\":\"none\"};\n\nmodule.exports = IcQuote;\n\nIcQuote.default = IcQuote;\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","argType","push","Array","isArray","inner","apply","toString","Object","prototype","key","call","join","module","exports","default","QueryHandler","each","MediaQuery","query","isUnconditional","this","handlers","mql","window","matchMedia","self","listener","currentTarget","assess","addListener","constuctor","addHandler","handler","qh","matches","on","removeHandler","h","equals","destroy","splice","clear","removeListener","action","Util","isFunction","MediaQueryDispatch","Error","queries","browserIsIncapable","constructor","register","q","options","shouldDegrade","match","unregister","deferSetup","setup","initialised","off","unmatch","target","collection","fn","camel2hyphen","obj2mq","obj","mq","features","keys","forEach","feature","index","value","test","isDimension","reTrim","reIsBadHex","reIsBinary","reIsOctal","freeParseInt","parseInt","freeGlobal","g","freeSelf","root","Function","objectToString","nativeMax","Math","max","nativeMin","min","now","Date","isObject","type","toNumber","isObjectLike","isSymbol","other","valueOf","replace","isBinary","slice","func","wait","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","leadingEdge","setTimeout","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","remainingWait","debounced","isInvoking","cancel","clearTimeout","flush","defineProperty","NextArrow","PrevArrow","_react","_interopRequireDefault","_classnames","_innerSliderUtils","__esModule","_typeof","Symbol","iterator","_extends","assign","source","ownKeys","object","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","_defineProperty","getOwnPropertyDescriptors","defineProperties","configurable","writable","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","_createClass","protoProps","staticProps","_inherits","subClass","superClass","create","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","e","_isNativeReflectConstruct","Super","_getPrototypeOf","NewTarget","_possibleConstructorReturn","ReferenceError","_assertThisInitialized","getPrototypeOf","_React$PureComponent","_super","preventDefault","clickHandler","prevClasses","prevHandler","bind","message","infinite","currentSlide","slideCount","slidesToShow","prevArrowProps","className","style","display","onClick","customProps","prevArrow","cloneElement","createElement","PureComponent","_React$PureComponent2","_super2","nextClasses","nextHandler","canGoNext","nextArrowProps","nextArrow","_default","accessibility","adaptiveHeight","afterChange","appendDots","dots","arrows","autoplay","autoplaySpeed","beforeChange","centerMode","centerPadding","cssEase","customPaging","dotsClass","draggable","easing","edgeFriction","fade","focusOnSelect","initialSlide","lazyLoad","onEdge","onInit","onLazyLoadError","onReInit","pauseOnDotsHover","pauseOnFocus","pauseOnHover","responsive","rows","rtl","slide","slidesPerRow","slidesToScroll","speed","swipe","swipeEvent","swipeToSlide","touchMove","touchThreshold","useCSS","useTransform","variableWidth","vertical","waitForAnimate","Dots","spec","_this$props","onMouseEnter","onMouseOver","onMouseLeave","dotCount","ceil","mouseEvents","_rightBound","rightBound","clamp","_leftBound","leftBound","dotOptions","concat","animating","autoplaying","currentDirection","currentLeft","direction","dragging","edgeDragged","initialized","lazyLoadedList","listHeight","listWidth","scrolling","slideHeight","slideWidth","swipeLeft","swiped","swiping","touchObject","startX","startY","curX","curY","trackStyle","trackWidth","targetSlide","InnerSlider","_initialState","_lodash","_track","_dots","_arrows","_resizeObserverPolyfill","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","_React$Component","_this","ref","list","track","elem","querySelector","state","height","getHeight","slidesToLoad","getOnDemandLazySlides","setState","prevState","onLazyLoad","listRef","trackRef","updateState","adaptHeight","autoPlay","lazyLoadTimer","setInterval","progressiveLazyLoad","ro","onWindowResized","callbackTimers","observe","document","querySelectorAll","onfocus","onSlideFocus","onblur","onSlideBlur","addEventListener","attachEvent","animationEndCallback","clearInterval","timer","removeEventListener","detachEvent","autoplayTimer","disconnect","prevProps","checkImagesLoad","setTrackStyle","didPropsChange","Children","count","children","changeSlide","pause","debouncedResize","resizeWindow","isTrackMounted","Boolean","node","callback","updatedState","initializedState","slideIndex","targetLeft","getTrackLeft","left","getTrackCSS","_trackWidth","_trackLeft","childrenWidths","preClones","getPreClones","postClones","getPostClones","child","width","_i","_i2","_trackStyle","currentWidth","childrenCount","trackLeft","images","imagesCount","loadedCount","image","onclick","prevClickHandler","parentNode","focus","onload","onerror","_index","dontAnimate","asNavFor","_slideHandler","slideHandler","nextState","asNavForIndex","innerSlider","firstBatch","nodes","clickable","stopPropagation","dir","keyHandler","ontouchmove","event","returnValue","verticalSwiping","disableBodyScroll","swipeStart","swipeMove","swipeEnd","triggerSlideHandler","enableBodyScroll","Number","isNaN","nextIndex","playType","play","pauseType","trackProps","extractObject","onTrackOver","onTrackLeave","selectHandler","dotProps","onDotsLeave","onDotsOver","arrowProps","verticalHeightStyle","centerPaddingStyle","padding","listStyle","listProps","onMouseDown","onMouseMove","onMouseUp","onTouchStart","onTouchMove","onTouchEnd","touchEnd","onTouchCancel","onKeyDown","innerSliderProps","unslick","listRefHandler","Track","trackRefHandler","ssrState","ssrInit","_i3","_Object$keys","Component","_innerSlider","_json2mq","_defaultProps","enquire","canUseDOM","Slider","slickPrev","slickNext","slickGoTo","breakpoint","_responsiveMediaHandlers","_this2","breakpoints","map","breakpt","sort","x","y","bQuery","minWidth","maxWidth","media","settings","newProps","_this3","resp","toArray","trim","console","warn","newChildren","newSlide","j","row","k","tabIndex","innerSliderRefHandler","getSlideClasses","slickActive","slickCenter","slickCloned","centerOffset","floor","getKey","fallbackKey","renderSlides","slides","preCloneSlides","postCloneSlides","startIndex","lazyStartIndex","endIndex","lazyEndIndex","childOnClickOptions","childStyle","position","top","opacity","transition","getSlideStyle","slideClass","slideClasses","outline","preCloneNo","reverse","_len","_key","handleRef","slidesOnLeft","slidesOnRight","siblingDirection","getTotalSlides","getTrackAnimateCSS","checkSpecKeys","getSlideCount","checkNavigable","getNavigableIndexes","getSwipeDirection","getWidth","lazySlidesOnRight","lazySlidesOnLeft","getRequiredLazySlides","safePreventDefault","number","lowerBound","upperBound","includes","_reactName","onDemandSlides","requiredSlides","offsetWidth","offsetHeight","xDist","yDist","r","swipeAngle","atan2","round","PI","abs","canGo","newObject","listNode","trackNode","centerPaddingAdj","finalSlide","animationLeft","finalLeft","animationSlide","indexOffset","previousInt","slideOffset","previousTargetSlide","tagName","keyCode","touches","pageX","clientX","pageY","clientY","curLeft","swipeLength","sqrt","pow","verticalSwipeLength","positionOffset","swipeDirection","touchSwipeLength","onSwipe","minSwipe","activeSlide","counter","indexes","navigables","prevNavigable","n","swipedSlide","slickList","from","every","offsetTop","offsetLeft","currentIndex","dataset","keysArray","reduce","error","trackHeight","trackChildren","WebkitTransition","WebkitTransform","transform","msTransform","marginTop","marginLeft","slidesToOffset","targetSlideIndex","trackElem","childNodes","_ref","right","_ref2","MapShim","Map","getIndex","arr","some","entry","class_1","__entries__","get","set","delete","entries","has","ctx","_a","isBrowser","global$1","requestAnimationFrame$1","requestAnimationFrame","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","delay","leadingCall","trailingCall","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","gatherActive","hasActive","broadcastActive","attributes","childList","characterData","subtree","_b","propertyName","getInstance","instance_","defineConfigurable","getWindowOf","ownerDocument","defaultView","emptyRect","createRectInit","toFloat","parseFloat","getBordersSize","styles","positions","size","getHTMLElementContentRect","clientWidth","clientHeight","getComputedStyle","paddings","positions_1","getPaddings","horizPad","vertPad","bottom","boxSizing","documentElement","isDocumentElement","vertScrollbar","horizScrollbar","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","getBBox","getContentRect","bbox","getSVGContentRect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","rect","broadcastRect","ResizeObserverEntry","rectInit","Constr","contentRect","DOMRectReadOnly","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","callback_","controller_","callbackCtx_","Element","observations","unobserve","clearActive","observation","WeakMap","ResizeObserver","method","str","toLowerCase","PostPreview","post","Link","to","link","featuredImage","G","getImage","localFile","alt","title","categories","item","name","date","getPropertyType","product","propertyCategories","getMaxLTV","floatToPercentage","maxLtv","getRate","rate","baseRate","__html","getReversionRate","reversionRate","reversionBaseRate","getStressRate","stressRate","getProductFee","productFeeFixed","penniesToPounds","productFeePerc","getMinLoan","abbreviateNumber","minLoan","getMaxLoan","maxLoan","getProductCriteria","getERCs","getProductRules","getNewBuildCriteria","getExpatCriteria","productRules","criteria","ruleDescr","ERCs","output","term","numYears","newBuild","expats","Product","addToCompare","selectedForCompare","calculatorLink","useState","criteriaOpen","setCriteriaOpen","useEffect","productCode","productTags","tag","productName","productType","dangerouslySetInnerHTML","previousState","products","isOpen","Faq","widget","page","activeRow","setActiveRow","onClickRow","useCallback","layout","autoComplete","placeholder","searchBoxPlaceholder","required","accordion","Fragment","role","text","InternalShapes","hasShapes","trigger","useRef","shape1","shape2","shape3","gsap","scrollTrigger","current","start","end","invalidateOnRefresh","scrub","ScrollTrigger","useScript","Trustpilot","loadFromElement","href","rel","templateId","matched","trustpilot","trustpilotWidgets","useStaticQuery","wp","acfOptionsOptions","widgetTrustpilot","trustpilotWidget","option","embedCode","doc","DOMParser","parseFromString","a","at","attribute","extractAttributes","Accordion","items","newIndex","subtitle","subtitle2","Content","activeImage","setActiveImage","copy","description","onAccordionChange","button","Button","getButtonClasses","AwardBar","awards","getImageStyle","mediaDetails","award","src","widgetAwards","optionAward","url","QuickLinkCards","cards","card","Articles","latestPosts","LatestPosts","allWpPost","edges","excerpt","uri","ManualPosts","articles","article","Process","Intro","intro","Bottom","finishedTitle","colour","Cta","Cta50","ImageTitle","Copy","Cta100","mobileImage","CtaBasic","buttons","buttonStyles","footerText","QuickLinks","links","Tabs","label","tabTitles","getTabContent","setParentActiveTab","activeTab","setActiveTab","onClickTab","tabTitle","id","Partners","partnerData","tabData","widgetPartners","clubs","packagers","networks","Quote","Quote50","altText","quoteSourceName","quoteSourceCompany","Quote100","QuoteGlassdoor","ProductRange","staticQuery","productPageLink","pagesProducts","getUniqueProductRanges","values","json","productRange","uniqueValues","Set","b","localeCompare","getMinBaseRate","range","minValue","minPlusBBRValue","allProductsArePlusBBR","getMinValue","field","getMaxValue","maxValue","carouselSettings","productRanges","ProductRangeManual","ratesFrom","maxLtvFrom","LandbayExecTeam","activeProfile","setActiveProfile","tab","boardMembers","executiveTeam","photo","jobTitle","linkedin","profile","getActiveProfile","popupPhoto","bio","FeaturedProduct","productData","newSticker","backgroundColor","backgroundColour","manual","line1","line2","line3","line4","line5","line6","line7","landbayProduct","USPBar","usps","usp","Benefits","benefits","benefit","Downloads","downloads","blocks","block","download","widgetDownloads","optionDownload","RelatedArticles","Careers","response","setResponse","gotError","setGotError","handleResponse","ok","content","loadJobs","apiUrl","process","GATSBY_GREENHOUSE_API","fetch","headers","log","jobs","job","updated_at","DateTime","toLocaleString","location","CareersTabs","careersTabs","quoteText","getTabTitles","careersTabsTitle","HowWeDoThings","HorizontalLine","Sitemap","pages","allWpPage","parentId","wpChildren","Video","video","videoId","modalOpen","setModalOpen","toggleModal","getVimeoId","hash","frameBorder","allow","allowFullScreen","Widgets","widgets","__typename","Hero","color","fragments","status","setStatus","script","getAttribute","async","setAttribute","body","appendChild","setAttributeFromEvent","setStateFromEvent","tier","log10","suffix","scale","scaled","toFixed","countDecimals","split","numberWithCommas","React","IcArrow","defaultProps","IcChevronDown","IcDownload","IcPlay","IcQuote"],"sourceRoot":""}