{"roots":["0:3"],"nodeById":{"0:3":{"type":"WEBPAGE","id":"0:3","name":"/","absoluteBoundingBox":{"x":0.0,"y":0.0,"width":1408.0,"height":1244.0},"isolatedAbsoluteRenderBounds":{"x":0.0,"y":0.0,"width":1408.0,"height":1244.0},"relativeTransform":[[1.0,0.0,0.0],[0.0,1.0,0.0]],"size":{"x":1408.0,"y":1244.0},"fills":[{"opacity":0.0470588244497776,"blendMode":"NORMAL","type":"SOLID","color":{"r":1.0,"g":1.0,"b":1.0,"a":1.0},"visible":true}],"strokeAlign":"INSIDE","strokes":[],"accessibleHTMLTag":"AUTO","isDecorativeImage":false,"ariaAttributes":{},"interactions":[],"children":["0:4"]},"0:4":{"type":"FRAME","id":"0:4","name":"Desktop","absoluteBoundingBox":{"x":64.0,"y":100.0,"width":1280.0,"height":1080.0},"isolatedAbsoluteRenderBounds":{"x":64.0,"y":100.0,"width":1280.0,"height":1080.0},"relativeTransform":[[1.0,0.0,64.0],[0.0,1.0,100.0]],"size":{"x":1280.0,"y":1080.0},"fills":[{"blendMode":"NORMAL","type":"SOLID","color":{"r":1.0,"g":1.0,"b":1.0,"a":1.0},"visible":true,"opacity":1.0}],"strokeAlign":"INSIDE","strokes":[],"accessibleHTMLTag":"AUTO","isDecorativeImage":false,"ariaAttributes":{},"interactions":[],"clipsContent":true,"overflowDirection":"VERTICAL_SCROLLING","layoutMode":"VERTICAL","counterAxisSizingMode":"FIXED","isBreakpointFrame":true,"children":["0:7"]},"0:7":{"type":"CODE_INSTANCE","id":"0:7","name":"App","absoluteBoundingBox":{"x":64.0,"y":100.0,"width":1280.0,"height":1080.0},"isolatedAbsoluteRenderBounds":{"x":64.0,"y":100.0,"width":1280.0,"height":1080.0},"relativeTransform":[[1.0,0.0,0.0],[0.0,1.0,0.0]],"size":{"x":1280.0,"y":1080.0},"fills":[],"strokeAlign":"INSIDE","layoutAlign":"STRETCH","layoutGrow":1.0,"strokes":[],"accessibleHTMLTag":"AUTO","isDecorativeImage":false,"ariaAttributes":{},"interactions":[],"codeExportName":"Code0_8.default","componentProperties":{}}},"assetIdToGuid":{},"guidToUrl":{"0:3":"/"},"fonts":{},"assets":{"fcf5deb47d5da9c816f23a670b2d3dd64288d77f":{"type":"PAINT_ASSET","url":"fcf5deb47d5da9c816f23a670b2d3dd64288d77f.png","size":{"x":0.0,"y":0.0}},"f34fc171c792bcfed486ff51262f2358aafe20df":{"type":"PAINT_ASSET","url":"f34fc171c792bcfed486ff51262f2358aafe20df.png","size":{"x":0.0,"y":0.0}},"eaa3016882d8d6cb01114974b4fd104064b207fc":{"type":"PAINT_ASSET","url":"eaa3016882d8d6cb01114974b4fd104064b207fc.png","size":{"x":0.0,"y":0.0}},"dc791859c34af5e42b873a64e46bdb1d583bdaa6":{"type":"PAINT_ASSET","url":"dc791859c34af5e42b873a64e46bdb1d583bdaa6.png","size":{"x":0.0,"y":0.0}},"d9f30f4fbd57954fe14c43d062487910f623ea7d":{"type":"PAINT_ASSET","url":"d9f30f4fbd57954fe14c43d062487910f623ea7d.png","size":{"x":0.0,"y":0.0}},"d09b19a2bf0c3c4d24bb72d5ce0ab779ad8b6aac":{"type":"PAINT_ASSET","url":"d09b19a2bf0c3c4d24bb72d5ce0ab779ad8b6aac.png","size":{"x":0.0,"y":0.0}},"cdca596da98535c5816bc7822143383c3b9dc1c2":{"type":"PAINT_ASSET","url":"cdca596da98535c5816bc7822143383c3b9dc1c2.png","size":{"x":0.0,"y":0.0}},"c73e48d655c730187d41c75ee1c9275072106a3a":{"type":"PAINT_ASSET","url":"c73e48d655c730187d41c75ee1c9275072106a3a.png","size":{"x":0.0,"y":0.0}},"c7239bd5770d649c86c95b4176d349918d723804":{"type":"PAINT_ASSET","url":"c7239bd5770d649c86c95b4176d349918d723804.png","size":{"x":0.0,"y":0.0}},"c44b074acd70c097ab2bbc88d90444926103ced5":{"type":"PAINT_ASSET","url":"c44b074acd70c097ab2bbc88d90444926103ced5.png","size":{"x":0.0,"y":0.0}},"b53c88ef80daa979b8ce1438a3fbc24b1ef980ce":{"type":"PAINT_ASSET","url":"b53c88ef80daa979b8ce1438a3fbc24b1ef980ce.png","size":{"x":0.0,"y":0.0}},"af716bfe126d35ef74658a018ef39c7629c1643a":{"type":"PAINT_ASSET","url":"af716bfe126d35ef74658a018ef39c7629c1643a.png","size":{"x":0.0,"y":0.0}},"d439a6f0d037da66ba08480145cac22a13664e8e":{"type":"PAINT_ASSET","url":"d439a6f0d037da66ba08480145cac22a13664e8e.png","size":{"x":0.0,"y":0.0}},"2775269e178e90ebb3cd6e9200ba9618bd68162f":{"type":"PAINT_ASSET","url":"2775269e178e90ebb3cd6e9200ba9618bd68162f.png","size":{"x":0.0,"y":0.0}},"aae9f7c871dd6214789a4dbcd731119139ec5058":{"type":"PAINT_ASSET","url":"aae9f7c871dd6214789a4dbcd731119139ec5058.png","size":{"x":0.0,"y":0.0}},"a14c357bef1f8f5a3fec41a989b511d7ba639c96":{"type":"PAINT_ASSET","url":"a14c357bef1f8f5a3fec41a989b511d7ba639c96.png","size":{"x":0.0,"y":0.0}},"8ff31d9bb1c31bd261e29bd3d600d8a2c7f86804":{"type":"PAINT_ASSET","url":"8ff31d9bb1c31bd261e29bd3d600d8a2c7f86804.png","size":{"x":0.0,"y":0.0}},"8d151556eb032bec2a0e896cd6f5d9bbcccc745e":{"type":"PAINT_ASSET","url":"8d151556eb032bec2a0e896cd6f5d9bbcccc745e.png","size":{"x":0.0,"y":0.0}},"85ca1927334fcad888677bd1d1b0ce5099eaec0d":{"type":"PAINT_ASSET","url":"85ca1927334fcad888677bd1d1b0ce5099eaec0d.png","size":{"x":0.0,"y":0.0}},"fe17613958eb2795ae0b89c69bdb5e4b06131c20":{"type":"PAINT_ASSET","url":"fe17613958eb2795ae0b89c69bdb5e4b06131c20.png","size":{"x":0.0,"y":0.0}},"8046a1f0bd4f0b0370b1d7be7a540ff45b023f6e":{"type":"PAINT_ASSET","url":"8046a1f0bd4f0b0370b1d7be7a540ff45b023f6e.png","size":{"x":0.0,"y":0.0}},"7a6726b178519a0f1f8c6e37d4467e995f72c37d":{"type":"PAINT_ASSET","url":"7a6726b178519a0f1f8c6e37d4467e995f72c37d.png","size":{"x":0.0,"y":0.0}},"17f246d72b47d0792f9e49cdb763eb913f994746":{"type":"PAINT_ASSET","url":"17f246d72b47d0792f9e49cdb763eb913f994746.png","size":{"x":0.0,"y":0.0}},"67410a235c8ef22a6dbfce76f81a1c4361ff7640":{"type":"PAINT_ASSET","url":"67410a235c8ef22a6dbfce76f81a1c4361ff7640.png","size":{"x":0.0,"y":0.0}},"95b2689b8577b432415eb15642ab8e47155e0be4":{"type":"PAINT_ASSET","url":"95b2689b8577b432415eb15642ab8e47155e0be4.png","size":{"x":0.0,"y":0.0}},"6510ba970b41c9de1581dbd182e119dde63d2f8f":{"type":"PAINT_ASSET","url":"6510ba970b41c9de1581dbd182e119dde63d2f8f.png","size":{"x":0.0,"y":0.0}},"35e35057b47572a3a65afa14b6acb06a40eae3a1":{"type":"PAINT_ASSET","url":"35e35057b47572a3a65afa14b6acb06a40eae3a1.png","size":{"x":0.0,"y":0.0}},"619d4f40d18e685e6a60a2c4e237aa9d269e3c65":{"type":"PAINT_ASSET","url":"619d4f40d18e685e6a60a2c4e237aa9d269e3c65.png","size":{"x":0.0,"y":0.0}},"5d61443d18dd16e0343dcdd5355a4a3456517b79":{"type":"PAINT_ASSET","url":"5d61443d18dd16e0343dcdd5355a4a3456517b79.png","size":{"x":0.0,"y":0.0}},"fcffb906c66324f5e7574461f8473021cc0e8742":{"type":"PAINT_ASSET","url":"fcffb906c66324f5e7574461f8473021cc0e8742.png","size":{"x":0.0,"y":0.0}},"ef64fd192fa6beaebad3d538852a8cbc3a939bcf":{"type":"PAINT_ASSET","url":"ef64fd192fa6beaebad3d538852a8cbc3a939bcf.png","size":{"x":0.0,"y":0.0}},"b027a6f7efb23ae7a4d34407f7bcc99b4d10b44b":{"type":"PAINT_ASSET","url":"b027a6f7efb23ae7a4d34407f7bcc99b4d10b44b.png","size":{"x":0.0,"y":0.0}},"5824eb7b917b776b93d317a90320b85be7867e35":{"type":"PAINT_ASSET","url":"5824eb7b917b776b93d317a90320b85be7867e35.png","size":{"x":0.0,"y":0.0}},"55c86123fd0e569c72ba0ee96b2cd1d9033e5c55":{"type":"PAINT_ASSET","url":"55c86123fd0e569c72ba0ee96b2cd1d9033e5c55.png","size":{"x":0.0,"y":0.0}},"5c58aa0210e82cb1e4ca27c094d1391f8ffec670":{"type":"PAINT_ASSET","url":"5c58aa0210e82cb1e4ca27c094d1391f8ffec670.png","size":{"x":0.0,"y":0.0}},"4f8dafbac0828e792558b95a07b0d8c9200469d2":{"type":"PAINT_ASSET","url":"4f8dafbac0828e792558b95a07b0d8c9200469d2.png","size":{"x":0.0,"y":0.0}},"8b69ba0ee37fd0ced045f6ea9d7a73bd4c16cf96":{"type":"PAINT_ASSET","url":"8b69ba0ee37fd0ced045f6ea9d7a73bd4c16cf96.png","size":{"x":0.0,"y":0.0}},"f16bcc79c6aeb3c3327bd69b36f503c9b4376b80":{"type":"PAINT_ASSET","url":"f16bcc79c6aeb3c3327bd69b36f503c9b4376b80.png","size":{"x":0.0,"y":0.0}},"837f8972e32d4a3db7aa8cf573bdae62e6381485":{"type":"PAINT_ASSET","url":"837f8972e32d4a3db7aa8cf573bdae62e6381485.png","size":{"x":0.0,"y":0.0}},"fa24256fcc496263aaf2e7022bccb69c451f414c":{"type":"PAINT_ASSET","url":"fa24256fcc496263aaf2e7022bccb69c451f414c.png","size":{"x":0.0,"y":0.0}},"5175c89b69f1456bd211142b239c282f1c17cc49":{"type":"PAINT_ASSET","url":"5175c89b69f1456bd211142b239c282f1c17cc49.png","size":{"x":0.0,"y":0.0}},"5faab8453521423fcc94bf111a8190a75283e6e5":{"type":"GENERATED_ASSET","url":"5faab8453521423fcc94bf111a8190a75283e6e5.png","size":{"x":1200.0,"y":630.0},"offsets":{"top":{"value":0,"unit":"PIXELS"},"right":{"value":0,"unit":"PIXELS"},"bottom":{"value":0,"unit":"PIXELS"},"left":{"value":0,"unit":"PIXELS"}},"format":"PNG"},"4f07fa81a6f8c5ee231a1e13a93786e3192c52bb":{"type":"PAINT_ASSET","url":"4f07fa81a6f8c5ee231a1e13a93786e3192c52bb.png","size":{"x":0.0,"y":0.0}},"1517554343b2e3fcefdce62534fc41130c93eb41":{"type":"PAINT_ASSET","url":"1517554343b2e3fcefdce62534fc41130c93eb41.png","size":{"x":0.0,"y":0.0}},"1f23ccf35aa9834828356bc3be11a107aec807ec":{"type":"PAINT_ASSET","url":"1f23ccf35aa9834828356bc3be11a107aec807ec.png","size":{"x":0.0,"y":0.0}},"4ba349ab41bae78591fd9d8c100af496aebda8f5":{"type":"PAINT_ASSET","url":"4ba349ab41bae78591fd9d8c100af496aebda8f5.png","size":{"x":0.0,"y":0.0}},"e63f99b41d9ec72f4e46ad0f9976675fa66d7d31":{"type":"PAINT_ASSET","url":"e63f99b41d9ec72f4e46ad0f9976675fa66d7d31.png","size":{"x":0.0,"y":0.0}},"7c6e291a81d86436a53f888f37949be131ba623c":{"type":"PAINT_ASSET","url":"7c6e291a81d86436a53f888f37949be131ba623c.png","size":{"x":0.0,"y":0.0}},"f1c2d7fcfdd5ee200f681f9cdef17efc08225bdb":{"type":"PAINT_ASSET","url":"f1c2d7fcfdd5ee200f681f9cdef17efc08225bdb.png","size":{"x":0.0,"y":0.0}},"3ee22af2639adcd1ed3ed0fef6433e5c0ccbf810":{"type":"PAINT_ASSET","url":"3ee22af2639adcd1ed3ed0fef6433e5c0ccbf810.png","size":{"x":0.0,"y":0.0}},"2b3aee392f83ab23c8ad33e17ed795cb5236871e":{"type":"PAINT_ASSET","url":"2b3aee392f83ab23c8ad33e17ed795cb5236871e.png","size":{"x":0.0,"y":0.0}},"3d264999d0a491adfab9c2768faa96138ac7a056":{"type":"PAINT_ASSET","url":"3d264999d0a491adfab9c2768faa96138ac7a056.png","size":{"x":0.0,"y":0.0}},"f28a8bc32785170b803188e44f2952b24aa78f66":{"type":"PAINT_ASSET","url":"f28a8bc32785170b803188e44f2952b24aa78f66.png","size":{"x":0.0,"y":0.0}},"0b47349a03ad495bc64403f65e2f8e52418925c4":{"type":"PAINT_ASSET","url":"0b47349a03ad495bc64403f65e2f8e52418925c4.png","size":{"x":0.0,"y":0.0}},"6efce99b9c924977d28c8ac3130d439f10e02bd8":{"type":"PAINT_ASSET","url":"6efce99b9c924977d28c8ac3130d439f10e02bd8.png","size":{"x":0.0,"y":0.0}},"87ba06c543516a77269d5d3b46acc4d903c09134":{"type":"PAINT_ASSET","url":"87ba06c543516a77269d5d3b46acc4d903c09134.png","size":{"x":0.0,"y":0.0}},"5bda6298cd2c746ff6486a54d6c1da0dea9eacac":{"type":"PAINT_ASSET","url":"5bda6298cd2c746ff6486a54d6c1da0dea9eacac.png","size":{"x":0.0,"y":0.0}},"c0a88f265657acfb46591fa874d02f03645db5dc":{"type":"PAINT_ASSET","url":"c0a88f265657acfb46591fa874d02f03645db5dc.png","size":{"x":0.0,"y":0.0}},"551368d207253e9381d2c4f882839bd8639906c6":{"type":"PAINT_ASSET","url":"551368d207253e9381d2c4f882839bd8639906c6.png","size":{"x":0.0,"y":0.0}},"d095e6b3f1337cee1b4e3dffc2bb7ffea166679d":{"type":"PAINT_ASSET","url":"d095e6b3f1337cee1b4e3dffc2bb7ffea166679d.png","size":{"x":0.0,"y":0.0}},"b338ba1279bef09e15b30c5388344192b7e85bff":{"type":"PAINT_ASSET","url":"b338ba1279bef09e15b30c5388344192b7e85bff.png","size":{"x":0.0,"y":0.0}},"3e99aaaa2d7b00d3a8ebc6286dae4d56c7265127":{"type":"GENERATED_ASSET","url":"3e99aaaa2d7b00d3a8ebc6286dae4d56c7265127.png","size":{"x":48.0,"y":48.0},"offsets":{"top":{"value":0,"unit":"PIXELS"},"right":{"value":0,"unit":"PIXELS"},"bottom":{"value":0,"unit":"PIXELS"},"left":{"value":0,"unit":"PIXELS"}},"format":"PNG"},"d830ec11a9bd0c593e770ca2507327fafba8df9b":{"type":"PAINT_ASSET","url":"d830ec11a9bd0c593e770ca2507327fafba8df9b.png","size":{"x":0.0,"y":0.0}},"78f726875ded7dc366f2b3f1cdda3aa7a033f28b":{"type":"PAINT_ASSET","url":"78f726875ded7dc366f2b3f1cdda3aa7a033f28b.png","size":{"x":0.0,"y":0.0}},"1ef1968b9f2c84972606b73cb083105b724da415":{"type":"PAINT_ASSET","url":"1ef1968b9f2c84972606b73cb083105b724da415.png","size":{"x":0.0,"y":0.0}},"be043d7e0f225dbd7bea73953ec0e80e2d0f4a19":{"type":"PAINT_ASSET","url":"be043d7e0f225dbd7bea73953ec0e80e2d0f4a19.png","size":{"x":0.0,"y":0.0}},"7072540566aeee375472cc47ec379369e42a402d":{"type":"PAINT_ASSET","url":"7072540566aeee375472cc47ec379369e42a402d.png","size":{"x":0.0,"y":0.0}},"5e5cacaac6972956541a97241d1b32053ca65640":{"type":"PAINT_ASSET","url":"5e5cacaac6972956541a97241d1b32053ca65640.png","size":{"x":0.0,"y":0.0}},"2861973f56bdb422476033f028c86e3c58a082b8":{"type":"PAINT_ASSET","url":"2861973f56bdb422476033f028c86e3c58a082b8.png","size":{"x":0.0,"y":0.0}},"85ca163a8490300d5fc680ed8b3a9abe327a98c6":{"type":"PAINT_ASSET","url":"85ca163a8490300d5fc680ed8b3a9abe327a98c6.png","size":{"x":0.0,"y":0.0}},"0cabdbde48616388120b6a3e25005291786e679b":{"type":"PAINT_ASSET","url":"0cabdbde48616388120b6a3e25005291786e679b.png","size":{"x":0.0,"y":0.0}}},"stablePathToAssetInfo":{"130:3":{"hash":"5faab8453521423fcc94bf111a8190a75283e6e5"},"421:6":{"hash":"3e99aaaa2d7b00d3a8ebc6286dae4d56c7265127"}},"animateRootIds":[],"siteSettings":{"title":"Royale Golf Vacations | Scotland & Ireland Golf Trips","description":"Scotland & Ireland's hidden gem golf vacations. Bespoke itineraries, expert course curation, and premium travel for serious golfers. 150+ curated courses.","scalingMode":"REFLOW","lang":"en","customCodeHeadStart":"<!-- RGV first-touch repair 2026-08-04.\n     ORDER IS LOAD-BEARING: must stay ABOVE the attribution forwarder in this field.\n     That forwarder has no signal guard in its firstTouch(), so a param-less visit\n     wrote a signal-less rgv_ft for 180 days and every later paid click was discarded.\n     Moving this below the forwarder silently breaks gclid capture again. -->\n<script>\n(function () {\n  \"use strict\";\n  var FT = \"rgv_ft\";\n  var TTL = 60 * 60 * 24 * 180;\n  var KEYS = [\"gclid\",\"fbclid\",\"utm_source\",\"utm_medium\",\"utm_campaign\",\"utm_term\",\"utm_content\"];\n  function getCookie(name) {\n    var m = document.cookie.match(\"(?:^|; )\" + name + \"=([^;]*)\");\n    return m ? decodeURIComponent(m[1]) : null;\n  }\n  function setCookie(name, value) {\n    document.cookie = name + \"=\" + encodeURIComponent(value) +\n      \"; expires=\" + new Date(Date.now() + TTL * 1000).toUTCString() +\n      \"; path=/; domain=.royalegolfvacations.com; SameSite=Lax\";\n  }\n  function hasSignal(obj) {\n    if (!obj) return false;\n    return KEYS.some(function (k) { return !!obj[k]; });\n  }\n  var qs = new URLSearchParams(location.search);\n  var live = {};\n  KEYS.forEach(function (k) { var v = qs.get(k); if (v) live[k] = v; });\n  if (!hasSignal(live)) return;\n  live.landing_page = location.href;\n  if (document.referrer &&\n      document.referrer.indexOf(\"royalegolfvacations.com\") === -1 &&\n      document.referrer.indexOf(\"scoreapp.com\") === -1) {\n    live.referrer = document.referrer;\n  }\n  var existing = null;\n  try { var raw = getCookie(FT); if (raw) existing = JSON.parse(raw); } catch (e) {}\n  if (hasSignal(existing)) return;\n  setCookie(FT, JSON.stringify(live));\n})();\n</script>\n<style>\n  /* RGV Perf 2026-03-15 - GPU layer for header, defer off-screen blog rendering */\n  header{transform:translateZ(0);will-change:transform;}\n  main article>div{content-visibility:auto;contain-intrinsic-size:auto 2000px;}\n  </style>\n<script>\n  /* Force passive scroll/touch/wheel listeners - stops analytics blocking compositor */\n  ;(function(){var _a=EventTarget.prototype.addEventListener;EventTarget.prototype.addEventListener=function(t,fn,o){if(t==='scroll'||t==='touchstart'||t==='touchmove'||t==='wheel'){o=typeof o==='object'&&o?Object.assign({},o,{passive:true}):{passive:true,capture:!!o};}return _a.call(this,t,fn,o);};})();\n</script>\n</script>\n</style>\n<!-- PostHog Analytics (RGV project 343194) -->\n<script>\n  !function(t,e){var o,n,p,r;e.__SV||(window.posthog=e,e._i=[],e.init=function(i,s,a){function g(t,e){var o=e.split(\".\");2==o.length&&(t=t[o[0]],e=o[1]),t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}}(p=t.createElement(\"script\")).type=\"text/javascript\",p.async=!0,p.src=s.api_host+\"/static/array.js\",(r=t.getElementsByTagName(\"script\")[0]).parentNode.insertBefore(p,r);var u=e;for(void 0!==a?u=e[a]=[]:a=\"posthog\",u.people=u.people||[],u.toString=function(t){var e=\"posthog\";return\"posthog\"!==a&&(e+=\".\"+a),t||(e+=\" (stub)\"),e},u.people.toString=function(){return u.toString(1)+\".people (stub)\"},o=\"init capture register register_once unregister opt_out_capturing has_opted_out_capturing opt_in_capturing reset isFeatureEnabled onFeatureFlags getFeatureFlag getFeatureFlagPayload reloadFeatureFlags group updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures getActiveMatchingSurveys getSurveys onSessionId\".split(\" \"),n=0;n<o.length;n++)g(u,o[n]);e._i.push([i,s,a])},e.__SV=1)}(document,window.posthog||[]);\n  posthog.init(\"phc_hZlJGFRhsUW27FLZZ71Q0Nv3FlhKT4tRpQISN5Bgm2\",{api_host:\"https://t.royalegolfvacations.com\",person_profiles:\"identified_only\"});\n</script>\n<!-- Microsoft Clarity (RGV project vvu4937ctj) -->\n<script type=\"text/javascript\">\n  if(!window.__rgv_cl){window.__rgv_cl=1;(function(c,l,a,r,i,t,y){\n    c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};\n    t=l.createElement(r);t.async=1;t.src=\"https://www.clarity.ms/tag/\"+i;\n    y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);\n  })(window, document, \"clarity\", \"script\", \"vvu4937ctj\");}\n</script>\n\n<!-- RGV UTM Capture — saves UTMs before SPA router strips them (2026-03-21) -->\n<script>\n(function(){\n  if(window.__rgv_utm_captured)return;\n  window.__rgv_utm_captured=1;\n  var p=new URLSearchParams(window.location.search);\n  var u={};\n  ['utm_source','utm_medium','utm_campaign','utm_content','utm_term','fbclid'].forEach(function(k){\n    var v=p.get(k);if(v)u[k]=v;\n  });\n  if(Object.keys(u).length>0){\n    sessionStorage.setItem('rgv_utms',JSON.stringify(u));\n  }\n  var s=sessionStorage.getItem('rgv_utms');\n  if(s){\n    window.__rgv_campaign=JSON.parse(s);\n    window.dataLayer=window.dataLayer||[];\n    function gtag(){dataLayer.push(arguments);}\n    var c=window.__rgv_campaign;\n    if(c.utm_source){\n      gtag('set',{\n        campaign_source:c.utm_source,\n        campaign_medium:c.utm_medium||'(not set)',\n        campaign_name:c.utm_campaign||'(not set)',\n        campaign_content:c.utm_content||undefined,\n        campaign_term:c.utm_term||undefined\n      });\n    }\n  }\n})();\n</script>\n\n<!-- RGV attribution forwarding (Layer 3): capture real first-touch attribution site-wide and forward it into the ScoreApp instant-quote iframe, replacing the hardcoded internal utm_source=website. -->\n<script>\n(function () {\n  \"use strict\";\n  var COOKIE = \"rgv_ft\", DAYS = 180, HOST = \"instantquote.scoreapp.com\";\n  var UTM = [\"utm_source\",\"utm_medium\",\"utm_campaign\",\"utm_term\",\"utm_content\"];\n  function getCookie(n){ var m=document.cookie.match(\"(?:^|; )\"+n+\"=([^;]*)\"); return m?decodeURIComponent(m[1]):null; }\n  function setCookie(n,v){ var d=new Date(); d.setTime(d.getTime()+DAYS*864e5); document.cookie=n+\"=\"+encodeURIComponent(v)+\";expires=\"+d.toUTCString()+\";path=/;domain=.royalegolfvacations.com;SameSite=Lax\"; }\n  function gaClientId(){ var ga=getCookie(\"_ga\"); if(!ga) return null; var m=ga.match(/^GA\\d+\\.\\d+\\.(\\d+\\.\\d+)$/); return m?m[1]:null; }\n  function extRef(){ try { if(!document.referrer) return null; var h=new URL(document.referrer).hostname; if(h===location.hostname) return null; if(h.indexOf(\"scoreapp.com\")!==-1) return null; return document.referrer; } catch(e){ return null; } }\n  function firstTouch(){\n    var c=getCookie(COOKIE); if(c){ try { return JSON.parse(c); } catch(e){} }\n    var qs=new URLSearchParams(location.search), ft={};\n    UTM.forEach(function(k){ if(qs.get(k)) ft[k]=qs.get(k); });\n    if(qs.get(\"gclid\")) ft.gclid=qs.get(\"gclid\");\n    if(qs.get(\"fbclid\")) ft.fbclid=qs.get(\"fbclid\");\n    var r=extRef(); if(r) ft.referrer=r;\n    ft.landing_page=location.href;\n    setCookie(COOKIE, JSON.stringify(ft));\n    return ft;\n  }\n  function params(ft){\n    var p=new URLSearchParams();\n    UTM.forEach(function(k){ if(ft[k]) p.set(k,ft[k]); });\n    if(ft.gclid) p.set(\"gclid\",ft.gclid);\n    if(ft.fbclid) p.set(\"fbclid\",ft.fbclid);\n    if(ft.referrer) p.set(\"referrer\",ft.referrer);\n    if(ft.landing_page) p.set(\"landing_page\",ft.landing_page);\n    var cid=gaClientId(); if(cid) p.set(\"ga_client_id\",cid);\n    p.set(\"rgv\",\"1\");\n    return p.toString();\n  }\n  var ft=firstTouch();\n  function forward(f){ if(!f||!f.src||f.src.indexOf(HOST)===-1) return; if(f.src.indexOf(\"rgv=1\")!==-1) return; f.src=\"https://\"+HOST+\"/questions?\"+params(ft); }\n  function scan(){ document.querySelectorAll('iframe[src*=\"'+HOST+'\"]').forEach(forward); }\n  scan();\n  if(document.readyState===\"loading\") document.addEventListener(\"DOMContentLoaded\", scan);\n  new MutationObserver(scan).observe(document.documentElement, { childList:true, subtree:true, attributes:true, attributeFilter:[\"src\"] });\n})();\n</script>\n\n\n<!-- RGV attribution Layer 3b: on ScoreApp lead capture, POST first-touch + ga_client_id to the backend keyed by email (embedded hidden fields can't prefill, so we stitch server-side by email). Self-contained; reads the rgv_ft cookie set by the forwarding snippet above. -->\n<script>\n(function () {\n  \"use strict\";\n  var HOST = \"instantquote.scoreapp.com\";\n  var ENRICH_URL = \"https://rgv-backend-production.up.railway.app/api/attribution/scoreapp-enrich\";\n  function getCookie(n){ var m=document.cookie.match(\"(?:^|; )\"+n+\"=([^;]*)\"); return m?decodeURIComponent(m[1]):null; }\n  function gaClientId(){ var ga=getCookie(\"_ga\"); if(!ga) return null; var m=ga.match(/^GA\\d+\\.\\d+\\.(\\d+\\.\\d+)$/); return m?m[1]:null; }\n  function firstTouch(){ var c=getCookie(\"rgv_ft\"); if(c){ try { return JSON.parse(c); } catch(e){} } return {}; }\n  var sent = {};\n  window.addEventListener(\"message\", function (e) {\n    if (e.origin !== \"https://\" + HOST) return;\n    var m = e.data;\n    if (!m || m.event !== \"scoreapp_lead\" || !m.data) return;\n    var email = m.data.email;\n    if (!email || sent[email]) return;\n    sent[email] = 1;\n    var t = firstTouch();\n    var payload = { email: email };\n    var cid = gaClientId(); if (cid) payload.ga_client_id = cid;\n    [\"gclid\",\"fbclid\",\"referrer\",\"landing_page\",\"utm_source\",\"utm_medium\",\"utm_campaign\",\"utm_term\",\"utm_content\"]\n      .forEach(function (k) { if (t[k]) payload[k] = t[k]; });\n    try { navigator.sendBeacon(ENRICH_URL, JSON.stringify(payload)); } catch (err) {}\n  });\n})();\n</script>\n","customCodeHeadEnd":"<!-- Dynamic canonical + social URL — fixes all-pages-as-homepage-duplicate GSC issue -->\n<script>\n  (function() {\n    var BASE = 'https://royalegolfvacations.com';\n    function setCanonical() {\n      var path = window.location.pathname;\n      if (path.length > 1 && path.slice(-1) === '/') path = path.slice(0, -1);\n      var canonical = BASE + path;\n      var link = document.querySelector('link[rel=\"canonical\"]');\n      if (!link) { link = document.createElement('link'); link.rel = 'canonical'; document.head.appendChild(link); }\n      if (link.href !== canonical) link.href = canonical;\n      var og = document.querySelector('meta[property=\"og:url\"]');\n      if (og) og.setAttribute('content', canonical);\n      var tw = document.querySelector('meta[name=\"twitter:url\"]');\n      if (tw) tw.setAttribute('content', canonical);\n    }\n    setCanonical();\n    var _origPush = history.pushState;\n    history.pushState = function() { _origPush.apply(this, arguments); setCanonical(); };\n    var _origReplace = history.replaceState;\n    history.replaceState = function() { _origReplace.apply(this, arguments); setCanonical(); };\n    window.addEventListener('popstate', setCanonical);\n    window.__rgv_canonical = 1;\n  })();\n</script>\n\n<!-- RGV Analytics — royalegolfvacations.com -->\n<script>\n  (function() {\n    if (window.location.hostname !== 'royalegolfvacations.com') {\n      console.log('[RGV] Analytics disabled on non-production host (' + window.location.hostname + ')');\n      window.dataLayer = window.dataLayer || [];\n      window.gtag = function() {};\n      window.fbq = function() { return { track: function(){} }; };\n      return;\n    }\n  })();\n</script>\n\n<!-- Google Analytics (GA4) — base init (idempotent, safe to run twice) -->\n<script async src=\"https://www.googletagmanager.com/gtag/js?id=G-T4BE02VME6\"></script>\n<script>\n  window.dataLayer = window.dataLayer || [];\n  function gtag(){dataLayer.push(arguments);}\n</script>\n\n<!-- Meta Pixel — base init (IIFE guard prevents double-init) -->\n<script>\n  !function(f,b,e,v,n,t,s)\n  {if(f.fbq)return;n=f.fbq=function(){n.callMethod?\n  n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n  if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n  n.queue=[];t=b.createElement(e);t.async=!0;\n  t.src=v;s=b.getElementsByTagName(e)[0];\n  s.parentNode.insertBefore(t,s)}(window, document,'script',\n  'https://connect.facebook.net/en_US/fbevents.js');\n</script>\n<noscript>\n  <img height=\"1\" width=\"1\" style=\"display:none\"\n    src=\"https://www.facebook.com/tr?id=2346952942427570&ev=PageView&noscript=1\"/>\n</noscript>\n\n<!-- Fire-once block: config, PageView, event listeners -->\n<script>\n  if (!window.__rgv_t) {\n    window.__rgv_t = 1;\n\n    gtag('js', new Date());\n    // Consent Mode v2 — EEA/GB denied by default + ROW granted by default.\n    gtag('consent', 'default', {\n      'ad_storage':         'denied',\n      'ad_user_data':       'denied',\n      'ad_personalization': 'denied',\n      'analytics_storage':  'denied',\n      region: ['AT','BE','BG','HR','CY','CZ','DK','EE','FI','FR','DE','GR','HU','IS','IE','IT','LV','LI','LT','LU','MT','NL','NO','PL','PT','RO','SK','SI','ES','SE','GB']\n    });\n    gtag('consent', 'default', {\n      'ad_storage':         'granted',\n      'ad_user_data':       'granted',\n      'ad_personalization': 'granted',\n      'analytics_storage':  'granted'\n    });\n    gtag('config', 'G-T4BE02VME6', {\n      'send_page_view': false,\n      'debug_mode': false,\n      'linker': {\n        'domains': [\n          'royalegolfvacations.scoreapp.com',\n          'tripplanner.scoreapp.com',\n          'coursesmap.royalegolfvacations.com'\n        ]\n      }\n    });\n\n    fbq('init', '2346952942427570');\n    fbq('track', 'PageView');\n\n    (function(){var _f=window.fbq;window.fbq=function(){var a=arguments;if(a[0]==='track'&&a[1]==='Subscribe')return;if(a[0]==='track'&&a[1]==='Lead'){var p=window.location.pathname;if(p!=='/thank-you'&&p!=='/teaser-result')return;if(a[2]&&typeof a[2]==='object'){delete a[2].value;delete a[2].currency;}}return _f.apply(this,a);};for(var k in _f)window.fbq[k]=_f[k];})();\n\n    document.addEventListener('DOMContentLoaded', function() {\n      document.querySelectorAll('a[href]').forEach(function(link) {\n        try {\n          var url = new URL(link.href, window.location.origin);\n          var isInternal = url.hostname === window.location.hostname;\n          if (isInternal) {\n            ['utm_source','utm_medium','utm_campaign','utm_term','utm_content'].forEach(function(p) {\n              url.searchParams.delete(p);\n            });\n            link.href = url.toString();\n          } else {\n            var src = url.searchParams.get('utm_source');\n            var med = url.searchParams.get('utm_medium');\n            if (src && !med) {\n              url.searchParams.set('utm_medium', 'referral');\n              link.href = url.toString();\n            }\n          }\n        } catch(e) {}\n      });\n    });\n\n    window.addEventListener('load', function() {\n      document.querySelectorAll(\n        'a[href*=\"instant-quote\"], a[href*=\"scoreapp\"]'\n      ).forEach(function(link) {\n        link.addEventListener('click', function() {\n          if (typeof gtag !== 'undefined') gtag('event', 'quiz_started', { source: 'main_website' });\n          if (typeof fbq !== 'undefined') fbq('track', 'InitiateCheckout', { content_name: 'Quiz Started' });\n        });\n      });\n\n      document.querySelectorAll(\n        'a[href*=\"coursesmap\"], a[href*=\"course-map\"], a[href*=\"trip-builder\"]'\n      ).forEach(function(link) {\n        link.addEventListener('click', function() {\n          if (typeof gtag !== 'undefined') gtag('event', 'trip_builder_opened', { source: 'main_website' });\n          if (typeof fbq !== 'undefined') fbq('track', 'InitiateCheckout', { content_name: 'Trip Builder Opened' });\n        });\n      });\n\n      document.querySelectorAll(\n        'a[href*=\"book-call\"], a[href*=\"calendly\"], a[href*=\"cal.com\"], a[href*=\"google.com/calendar\"]'\n      ).forEach(function(link) {\n        link.addEventListener('click', function() {\n          (window.dataLayer = window.dataLayer || []).push({ event: 'call_booking_started' });\n          if (typeof gtag !== 'undefined') gtag('event', 'call_booking_started', { source: 'main_website' });\n          if (typeof fbq !== 'undefined') fbq('track', 'Schedule', { content_name: 'Call Booking Started' });\n        });\n      });\n\n      var scrollDepths = [25, 50, 75, 100];\n      var trackedDepths = [];\n      window.addEventListener('scroll', function() {\n        var total = document.documentElement.scrollHeight - window.innerHeight;\n        if (total <= 0) return;\n        var pct = (window.scrollY / total) * 100;\n        scrollDepths.forEach(function(d) {\n          if (pct >= d && trackedDepths.indexOf(d) === -1) {\n            trackedDepths.push(d);\n            if (typeof gtag !== 'undefined') gtag('event', 'scroll_depth', { depth: d });\n          }\n        });\n      });\n    });\n  }\n</script>\n\n","customCodeBodyStart":"  <!-- Google Tag Manager (noscript) -->\n  <noscript><iframe src=\"https://www.googletagmanager.com/ns.html?id=GTM-WFCVK8F8\"\n  height=\"0\" width=\"0\" style=\"display:none;visibility:hidden\"></iframe></noscript>\n  <!-- End Google Tag Manager (noscript) -->","customCodeBodyEnd":"<!-- ScoreApp Instant Quote Popup -->\n<style>\n#_rgvqm{display:none;position:fixed;inset:0;background:rgba(6,21,39,.92);z-index:99999;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);align-items:center;justify-content:center;}\n#_rgvqm.open{display:flex;}\n#_rgvqb{position:relative;width:min(700px,96vw);height:min(90vh,840px);background:#061527;border:1px solid rgba(197,165,114,.25);overflow:hidden;box-shadow:0 24px 80px rgba(0,0,0,.6);}\n#_rgvqx{position:absolute;top:10px;right:10px;z-index:2;width:32px;height:32px;border-radius:50%;border:1px solid rgba(197,165,114,.4);background:rgba(197,165,114,.1);color:#C5A572;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;font-family:sans-serif;}\n#_rgvqf{width:100%;height:100%;border:none;display:block;}\n</style>\n<div id=\"_rgvqm\"><div id=\"_rgvqb\"><button id=\"_rgvqx\" title=\"Close\">&#x2715;</button><iframe id=\"_rgvqf\" src=\"\" allow=\"camera;microphone\"></iframe></div></div>\n<script>\nif(!window.__rgvQuizLoaded){window.__rgvQuizLoaded=true;\n(function(){\nfunction open(){var f=document.getElementById('_rgvqf');if(!f.src||f.src===location.href)f.src='https://royalegolfvacations.scoreapp.com/questions';document.getElementById('_rgvqm').classList.add('open');document.body.style.overflow='hidden';}\nfunction close(){document.getElementById('_rgvqm').classList.remove('open');document.body.style.overflow='';}\ndocument.getElementById('_rgvqx').addEventListener('click',close);\ndocument.getElementById('_rgvqm').addEventListener('click',function(e){if(e.target===this)close();});\ndocument.addEventListener('keydown',function(e){if(e.key==='Escape')close();});\ndocument.addEventListener('click',function(e){var a=e.target.closest('a[href*=\"scoreapp.com\"]');if(a){e.preventDefault();e.stopImmediatePropagation();open();}},true);\nwindow.openRGVQuiz=open;\n})();}\n</script>","faviconFilename":"3e99aaaa2d7b00d3a8ebc6286dae4d56c7265127.png","socialImageFilename":"5faab8453521423fcc94bf111a8190a75283e6e5.png","labs":{"E5FBBA911B2B7A09E649D4BE6CDF8591EAEFC881":false}},"sourceCodeHash":"b64a07a9ca8a98a3c3c783f95c8f4f3faec01cf3"}