PageSourceSearch

https://www.penheaven.co.uk/blog/10-meaningful-engraving-ideas-for-every-occasion

html penheaven.co.uk collected 2026-10-02 11:56:59 UTC 206,497 bytes, 608 lines download raw bytes

1 <!doctype html><html lang="en"><head >
1<script> var LOCALE = 'en\u002DGB'; var BASE_URL = 'https\u003A\u002F\u002Fwww.penheaven.co.uk\u002F'; var require = { 'baseUrl': 'https\u003A\u002F\u002Fwww.penheaven.co.uk\u002Fstatic\u002Fversion1789060698\u002Ffrontend\u002Fpenheaven\u002Fdefault\u002Fen_GB' };</script>
1 <meta charset="utf-8"/>
1<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:[]}};(window.NREUM||(NREUM={})).loader_config={xpid:"VgYFVV9TCxABXFlQBwAOX10=",licenseKey:"c1722f695e",applicationID:"188201999",browserID:"267243640"};;/*! For license information please see nr-loader-full-1.323.0.min.js.LICENSE.txt */
2(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,1e6,"KC",0,i,"qh",0,"SESSION_ERROR"])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.323.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"SecurityPolicyViolation",JSE:"JavaScriptError",LOG:"Log",PVE:"PageView",PVT:"PageViewTiming",SR:"SessionReplay",ST:"SessionTrace",BI:"BrowserInteraction"}])},9752(e,t,r){"use strict";const n="newrelic-iframe-",i=n+"timing-update",s=n+"api",a=n+"api-response",o=n+"vitals-update",c=n+"ajax";r.d(t,["$8",0,o,"Gi",0,a,"KU",0,c,"Pl",0,n,"cS",0,s,"cr",0,i])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,s="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===a?.document?.visibilityState),c=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=d&&"undefined"==typeof SharedWorker,l=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),f=Date.now()-(0,n.t)();r.d(t,["OF",0,d,"RI",0,i,"WN",0,f,"bv",0,s,"gm",0,a,"lR",0,l,"m",0,c,"mw",0,o,"sb",0,u,"zk",0,()=>{const e=a?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<a.performance.now())return e}])},7295(e,t,r){"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>s});var n=[];function i(e){if(!e||s(e))return!1;if(0===n.length)return!0;if("*"===n[0].hostname)return!1;for(var t=0;t<n.length;t++){var r=n[t];if(r.hostname.test(e.hostname)&&r.pathname.test(e.pathname))return!1}return!0}function s(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;if("*"===r)return void(n=[{hostname:"*"}]);0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let s,a;i>0?(s=r.substring(0,i),a=r.substring(i)):(s=r,a="*");let[c]=s.split(":");n.push({hostname:o(c),pathname:o(a,!0)})}}function o(e,t=!1){const r=e.replace(/[.+?^${}()|[\]\\]/g,e=>"\\"+e).replace(/\*/g,".*?");return new RegExp((t?"^":"")+r+"$")}},3241(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(6154);function i(e={}){try{n.gm.dispatchEvent(new CustomEvent("newrelic",{detail:e}))}catch(e){}}},1687(e,t,r){"use strict";r.d(t,{Ak:()=>o,Ze:()=>d,x3:()=>c});var n=r(3241),i=r(3606),s=r(860),a=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:s.P3[t]||0};
2e.runtime.drainRegistry.get(t)||e.runtime.drainRegistry.set(t,r)}function c(e,t){if(!e)return;const r=e.runtime.drainRegistry;r&&(r.get(t)&&r.delete(t),l(e,t,!1),r.size&&u(e))}function d(e,t="feature",r=!1){if(e){if(!e.runtime.drainRegistry.get(t)||r)return l(e,t);e.runtime.drainRegistry.get(t).staged=!0,u(e)}}function u(e){if(!e)return;const t=Array.from(e.runtime.drainRegistry);t.every(([e,t])=>t.staged)&&(t.sort((e,t)=>e[1].priority-t[1].priority),t.forEach(([t])=>{e.runtime.drainRegistry.delete(t),l(e,t)}))}function l(e,t,r=!0){if(!e)return;const s=e.ee,o=i.i.handlers;if(s&&!s.aborted&&s.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=s.backlog[t],r=o[t];if(r){for(let t=0;e&&t<e.length;++t)f(e[t],r);Object.entries(r).forEach(([e,t])=>{Object.values(t||{}).forEach(t=>{t[0]?.on&&t[0].context()instanceof a.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}s.isolatedBacklog||delete o[t],s.backlog[t]=null,s.emit("drain-"+t,[])}}function f(e,t){var r=e[1];Object.values(t[r]||{}).forEach(t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],s=e[2];n.apply(i,s)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),s=r(2646),a=r(5607);const o="nr@context:".concat(a.W),c=function e(t,r){var n={},a={},u={},l=!1;try{l=16===r.length&&d.initializedAgents?.[r]?.runtime.isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,s){!1!==s&&(s=!0);if(c.aborted&&!i)return;t&&s&&t.emit(e,r,n);var o=h(n);g(e).forEach(e=>{e.apply(o,r)});var d=v()[a[e]];d&&d.push([f,e,r,o]);return o},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{a[n]=t,t in r||(r[t]=[])})},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach(e=>{delete f.backlog[e]})},isBuffering:function(e){return!!v()[a[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof s.y?e:e?(0,i.I)(e,o,()=>new s.y(o)):new s.y(o)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return u[t]=u[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=c),r.d(t,["P",0,o,"ee",0,c])},2646(e,t,r){"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908(e,t,r){"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,s){s?(s.buffer([e],i),s.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(9908);s.on=a;var i=s.handlers={};function s(e,t,r,s){a(s||n.d,i,e,t,r)}function a(e,t,r,i,s){s||(s="feature"),e||(e=n.d);var a=t[s]=t[s]||{};(a[r]=a[r]||[]).push([e,i])}},3878(e,t,r){"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function s(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>s,jT:()=>n,sp:()=>i})},5607(e,t,r){"use strict";const n=(0,r(9566).bz)();r.d(t,["W",0,n])},9566(e,t,r){"use strict";r.d(t,{LA:()=>a,ZF:()=>o,bz:()=>s,el:()=>c});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function s(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("").map(e=>"x"===e?i(t,r++).toString(16):"y"===e?(3&i()|8).toString(16):e).join("")}function a(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,s=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var o=0;o<e;o++)a.push(i(r,s++).toString(16));return a.join("")}function o(){return a(16)}function c(){return a(32)}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","g",0,{OFF:0,FULL:1,ERROR:2},"iL",0,{SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},"tS",0,{STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},"wk",0,144e5])},733(e,t,r){"use strict";function n(e,t){return function(e){let t=2166136261;for(let r=0;r<e.length;r++)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(16).padStart(8,"0")}("".concat(String(e),":").concat(String(t)))}r.d(t,{Y:()=>n})},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},9119(e,t,r){"use strict";r.d(t,{L:()=>s});var n=/([^?#]*)[^#]*(#[^?]*|$).*/,i=/([^?#]*)().*/;function s(e,t){return e?e.replace(t?n:i,"$1$2"):e}},7485(e,t,r){"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},7866(e,t,r){"use strict";r.d(t,["Nc",0,/^\s*at Function code \(Function code:\d+:\d+\)\s*/i,"cn",0,/^\s*(?:([^@]*)(?:\(.*?\))?@)?((?:file|http|https|chrome|safari-extension).*?):(\d+)(?::(\d+))?\s*$/i,"fL",0,/^\s*at .+ \(eval at \S+ \((?:(?:file|http|https):[^)]+)?\)(?:, [^:]*:\d+:\d+)?\)$/i,"h3",0,/function (.+?)\s*\(/,"hB",0,/^\s*at (?:((?:\[object object\])?(?:[^(]*\([^)]*\))*[^()]*(?: \[as \S+\])?) )?\(?((?:file|http|https|chrome-extension):.*?)?:(\d+)(?::(\d+))?\)?\s*$/i])},944(e,t,r){"use strict";r.d(t,{R:()=>i});var n=r(3241);function i(e,t){"function"==typeof console.debug&&(console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t),(0,n.W)({drained:null,type:"data",name:"warn",feature:"warn",data:{code:e,secondary:t}}))}},8990(e,t,r){"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389(e,t,r){"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout(()=>{i=clearTimeout(i)},t)),n||(clearTimeout(i),i=setTimeout(()=>{e.apply(this,r)},t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},1910(e,t,r){"use strict";r.d(t,{i:()=>s});var n=r(944);const i=new Map;function s(...e){return e.every(e=>{if(i.has(e))return i.get(e);const t="function"==typeof e?e.toString():"",r=t.includes("[native code]"),s=t.includes("nrWrapper");return r||s||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},3304(e,t,r){"use strict";r.d(t,{A:()=>i});var n=r(7836);function i(e){try{return JSON.stringify(e,(()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}})())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},9232(e,t,r){"use strict";r.d(t,["f",0,{MFE:"MFE",BA:"BA"}])},7560(e,t,r){"use strict";r.d(t,{N:()=>a,j:()=>c});var n=r(9119),i=r(944);const s=(0,r(6389).J)(e=>(0,i.R)(80,e));function a(e){if(!Array.isArray(e?.assets)||!e.assets.length)return;
2const t=e.assets.map(o).filter(Boolean);return t.length?{assets:t,scripts:t.filter(e=>e.isScript)}:void 0}function o(e){if(!e||"object"!=typeof e)return;const{matcher:t,type:r}=e;let i="string"==typeof t&&t.endsWith(".js");return void 0!==r&&(!function(e){return"script"===e||"asset"===e}(r)?s(r):i=function(e){return"script"===e}(r)),a=t,"[object RegExp]"===Object.prototype.toString.call(a)?{pattern:t,test:e=>(t.lastIndex=0,t.test((0,n.L)(e))),isScript:i}:"string"==typeof t&&t.length>0?{pattern:t,test:e=>(0,n.L)(e).includes(t),isScript:i}:void s(t);var a}function c(e,t,{scriptsOnly:r=!1}={}){if(!e||!t)return!1;return(r?e.scripts:e.assets).some(e=>e.test(t))}},5718(e,t,r){"use strict";r.d(t,{xo:()=>T,AZ:()=>v,cI:()=>g,Qr:()=>S,QL:()=>y});var n=r(6154),i=r(1863),s=r(9119),a=r(7866);class o{dom=new c;performance=new c;constructor(e){this.url=e,this.claimedBy=new Set}get script(){const e=Math.max(this.dom.start,this.performance.end);return{start:e,end:Math.max(this.dom.end,this.performance.end,e)}}}class c{start=0;end=0;value=void 0}function d(e=()=>{},t){return{get:()=>void 0!==t?t:e(),set:e=>{t=e}}}let u;try{u=v(y())[0]}catch(e){u=v(e)[0]}const l=new Map;let f=[];const h=new WeakMap;function p(e){let t=h.get(e);return t||(t={weighedAssetUrls:new Set,recordManifestScriptWindow:(t,r)=>{t&&(e.scriptStart=e.scriptStart>0?Math.min(e.scriptStart,t):t),r&&(e.scriptEnd=e.scriptEnd>0?Math.max(e.scriptEnd,r):r)}},h.set(e,t)),t}function g(e){return l.get(e)}function m(e){const t=g(e);
2if(t)return t;const r=new o(e);if(l.set(e,r),l.size>1e3){const e=l.keys().next().value;l.delete(e)}return r}if(n.gm.MutationObserver&&n.gm.document){new MutationObserver(e=>{e.forEach(e=>{e.addedNodes.forEach(e=>{if("SCRIPT"===e.nodeName&&e.src){const t=m((0,s.L)(e.src));t.dom.start=(0,i.t)(),t.dom.value=e;const r=()=>{t.dom.end=(0,i.t)()};["load","error"].forEach(t=>e.addEventListener(t,r,{once:!0}))}})})}).observe(n.gm.document,{childList:!0,subtree:!0})}if(n.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{if((e=>"script"===e.initiatorType||["link","fetch"].includes(e.initiatorType)&&(0,s.L)(e.name).endsWith(".js"))(e)){const t=m((0,s.L)(e.name));t.performance.start=Math.floor(e.startTime),t.performance.end=Math.floor(e.responseEnd),t.performance.value=e}if(!f.length)return;const t=[];f.forEach(({test:r,addedAt:n},s)=>{(r(e)||(0,i.t)()-n>1e4)&&t.push(s)}),f=f.filter((e,r)=>!t.includes(r))})}).observe({type:"resource",buffered:!0})}function v(e){if(!e||"string"!=typeof e)return[];const t=new Set,r=e.split("\n");for(const e of r){const r=e.match(a.cn)||e.match(a.hB)||e.match(a.fL);if(r&&r[2])t.add((0,s.L)(r[2]));else{const r=e.match(/\(([^)]+\.js):\d+:\d+\)/)||e.match(/^\s+at\s+([^\s(]+\.js):\d+:\d+/);r&&r[1]&&t.add((0,s.L)(r[1]))}}return[...t]}function y(){let e;try{const t=Error.stackTraceLimit;Error.stackTraceLimit=50,e=(new Error).stack,Error.stackTraceLimit=t}catch(t){e=(new Error).stack}return e}function b(e,t){return(0,s.L)(e.name)===t}function E(e,t){e.fetchStart=Math.floor(t.startTime),e.fetchEnd=Math.floor(t.responseEnd),e.asset=t.name,e.type=t.initiatorType,R(e,t)}function R(e,t){const r=(0,s.L)(t.name),{weighedAssetUrls:n}=p(e);n.has(r)||(n.add(r),e.totalWeight=(e.totalWeight||0)+(t.transferSize||0),"blocking"===t.renderBlockingStatus?e.renderBlocking=!0:"non-blocking"===t.renderBlockingStatus&&!0!==e.renderBlocking&&(e.renderBlocking=!1))}function w(e,t,r,n,i){if(R(e,t),"scripts"!==i&&"all"!==i)return;if("all"===i||r.isScript){const r=Math.floor(t.startTime),n=Math.floor(t.responseEnd);e.fetchStart=e.fetchStart>0?Math.min(e.fetchStart,r):r,e.fetchEnd=e.fetchEnd>0?Math.max(e.fetchEnd,n):n}if(r.isScript){const r=g((0,s.L)(t.name));if(r){const t=()=>{const{start:t,end:n}=r.script;p(e).recordManifestScriptWindow(t,n)};t(),!r.dom.end&&r.dom.value&&["load","error"].forEach(e=>r.dom.value.addEventListener(e,t,{once:!0}))}n.resolved||(e.asset=t.name,e.type=t.initiatorType,n.resolved=!0)}}function T(e,t){const r=t?.manifest;if(!r||!r.assets.length)return;const s={resolved:!1},a=new Set(r.assets);(n.gm.performance?.getEntriesByType("resource")||[]).forEach(r=>{const n=[...a].find(e=>e.test(r.name));n&&(w(e,r,n,s,t.timingMethod),a.delete(n))}),a.size&&function(e,t,r,s){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:n=>{const i=[...t].find(e=>e.test(n.name));return i&&(w(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function S(e){const t=e?.id,r={registeredAt:(0,i.t)(),reportedAt:void 0,fetchStart:0,fetchEnd:0,scriptStart:0,scriptEnd:0,asset:void 0,type:"unknown",totalWeight:0,renderBlocking:void 0},a=y();if(!a)return r;const o=n.gm.performance?.getEntriesByType("navigation")?.[0]?.name||"";try{const e=v(a),c=(e.length>1?e.filter(e=>u!==e):e)[0];if(!c)return r;if(o.includes(c))return r.asset=(0,s.L)(o),r.type="inline",r;r.correlation=g(c);const l=r.correlation?.performance.value||n.gm.performance?.getEntriesByType("resource")?.find(e=>b(e,c));if(l)E(r,l);else{(function(e){if(!e||!n.gm.document)return!1;try{const t=n.gm.document.querySelectorAll('link[rel="preload"][as="script"]');for(const r of t)if((0,s.L)(r.href)===e)return!0}catch(e){}return!1})(c)&&(r.asset=c,r.type="preload"),function(e,t){n.gm.PerformanceObserver?.supportedEntryTypes?.includes("resource")&&f.push({addedAt:(0,i.t)(),test:r=>!!b(r,t)&&(E(e,r),!0)})}(r,c)}const h=r.correlation,m=!!t&&!!h?.claimedBy.has(t);h&&t&&h.claimedBy.add(t);const y=()=>{const e=h?.script.start;if(!m||!e)return!1;return r.registeredAt-e>1e4};let R=0,w=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(R=R>0?Math.min(R,e):e),t&&(w=w>0?Math.max(w,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return R>0?Math.min(e,R):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return w>0?Math.max(e,w):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
2o,Ms:()=>d,NG:()=>c,Ux:()=>h,YA:()=>p,yx:()=>l});var n=r(5718),i=r(7560),s=r(9119),a=r(9232);function o(e){return e?.type===a.f.MFE}function c(e,t){if(!y(e,t))return;const r=t.runtime.registeredEntities;return r?.find(t=>t.metadata.target.iframeInterfaceId===e)}function d(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities;return r?.filter(t=>String(t.metadata.target.id)===String(e)).map(e=>e.metadata.target)||[]}function u(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=(0,s.L)(e),a=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!1}):!!t.metadata.timings?.asset&&(0,s.L)(t.metadata.timings.asset)===n});return f(a).map(e=>e.metadata.target)}function l(e,t){if(!y(e,t))return[];const r=t.runtime.registeredEntities,n=r?.filter(t=>{const r=t.metadata.target?.manifest;return r?(0,i.j)(r,e,{scriptsOnly:!0}):!!t.metadata.timings?.asset?.endsWith(e)});return f(n).map(e=>e.metadata.target)}function f(e){if(!e?.length)return e||[];const t=new Map,r=[];for(const n of e){const e=n.metadata?.timings?.asset;if(!e){r.push(n);continue}const i="".concat(e,"::").concat(n.metadata?.target?.id),s=t.get(i);if(s){if(s.metadata.target?.blocked&&!n.metadata.target?.blocked){const e=r.indexOf(s);-1!==e&&(r[e]=n),t.set(i,n)}}else t.set(i,n),r.push(n)}return r}function h(e,t){return v(t)?o(e)?e.attributes:t.agentRef.runtime.v2Target.attributes:{}}function p(e,t){return g(e,t)?{"child.id":e.id,"child.type":e.type,...h(void 0,t)}:{}}function g(e,t){return o(e)&&!!v(t)&&t.agentRef.init.api.register.duplicate_data_to_container}function m(e){if(!e?.runtime)return[];if(!y(!0,e)||!e.runtime.registeredEntities?.length)return[e.runtime.v2Target];const t=[];try{var r=(0,n.AZ)((0,n.QL)());let i=r.length-1;for(;r[i];)t.push(...l(r[i--],e))}catch(e){}const i=function(e){const t=new Set,r=[];for(const n of e){const e=n?.instance;t.has(e)||(t.add(e),r.push(n))}return r}(t);return i.length||i.push(e.runtime.v2Target),i}function v(e){return 2===e?.harvestEndpointVersion}function y(e,t){return!!e&&!!t?.init.api.register.enabled}},5289(e,t,r){"use strict";r.d(t,{GG:()=>a,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function s(){return"undefined"==typeof document||"complete"===document.readyState}function a(e,t){if(s())return e();const r=(0,i.J)(e),a=setInterval(()=>{s()&&(clearInterval(a),r())},500);(0,n.sp)("load",r,t)}function o(e){if(s())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(s())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>u,dV:()=>d,pV:()=>l});var n=r(6154),i=r(1863),s=r(944),a=r(1910);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function c(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function d(){let e=c();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate||n.gm.setInterval,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket},(0,a.i)(...Object.values(e.o))),e}function u(e,t){let r=c();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t,2===Object.keys(r.initializedAgents).length&&(0,s.R)(69)}function l(){return function(){let e=c();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=c();const t=e.init||{};e.init={...t}}(),d(),function(){let e=c();const t=e.loader_config||{};e.loader_config={...t}}(),c()}r.d(t,["NT",0,o])},2843(e,t,r){"use strict";r.d(t,{G:()=>s,u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)},r,i)}function s(e,t,r){(0,n.sp)("pagehide",e,t,r)}},8139(e,t,r){"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),s=r(8990),a=r(6154);const o={},c=a.gm.XMLHttpRequest,d="addEventListener",u="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e,t){var r=function(e){return(e||n.ee).get("events")}(e);if(o[r.debugId]++)return r;o[r.debugId]=1;var f=(0,i.YM)(r,!0,t);function p(e){f.inPlace(e,[d,u],"-",g)}function g(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,p),c&&h(c.prototype,p),h(a.gm,p)),r.on(d+"-start",function(e,t){var r=e[1];if(null!==r&&("function"==typeof r||"object"==typeof r)&&"newrelic"!==e[0]){var n=(0,s.I)(r,l,function(){var e={object:function(){if("function"!=typeof r.handleEvent)return;return r.handleEvent.apply(r,arguments)},function:r}[typeof r];return e?f(e,"fn-",null,e.name||"anonymous"):r});this.wrapped=e[1]=n}}),r.on(u+"-start",function(e){e[1]=this.wrapped||e[1]}),r}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,d);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434(e,t,r){"use strict";r.d(t,{YM:()=>d});var n=r(7836),i=r(5607),s=r(5732);const a="nr@original:".concat(i.W);var o=Object.prototype.hasOwnProperty,c=!1;function d(e,t,r){return e||(e=n.ee),i.inPlace=function(e,t,r,n,s,a){r||(r="");const o="-"===r.charAt(0);for(let c=0;c<t.length;c++){const d=t[c],u=e[d];l(u)||(e[d]=i(u,o?d+r:r,n,d,s,a))}},i.flag=a,i;function i(t,n,i,c,f,h){return l(t)?t:(n||(n=""),nrWrapper[a]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach(function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})}),t}catch(e){u([e],r)}for(var n in e)o.call(e,n)&&(t[n]=e[n])}
2(t,nrWrapper,e),nrWrapper);function nrWrapper(){var a,o,l,p;let g,m;try{o=this,a=[...arguments],m=h?(0,s.$5)(r):[r?.runtime?.v2Target],l="function"==typeof i?i(a,o):i||{}}catch(t){u([t,"",[a,o,c],l],e)}d(n+"start",[a,o,c,m],l,f);const v=performance.now();let y;try{return p=t.apply(o,a),y=performance.now(),p}catch(e){throw y=performance.now(),d(n+"err",[a,o,e,m],l,f),g=e,g}finally{const e=y-v,t={start:v,end:y,duration:e,isLongTask:e>=50,methodName:c,thrownError:g};t.isLongTask&&d("long-task",[t,o,m],l,f),d(n+"end",[a,o,p,m],l,f)}}}function d(r,n,i,s){if(!c||t){var a=c;c=!0;try{e.emit(r,n,i,t,s)}catch(t){u([t,r,n,i],e)}c=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function l(e){return!(e&&"function"==typeof e&&e.apply&&!e[a])}r.d(t,["Jt",0,a])},9300(e,t,r){"use strict";const n=r(860).K7.ajax;r.d(t,["TZ",0,n,"f5",0,"ajaxRequest.id","mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},3333(e,t,r){"use strict";var n=r(981);const i=r(860).K7.genericEvents,s=[n.R.PA,n.R.UA,n.R.BP];r.d(t,["$v",0,{RESOURCES:"experimental.resources",REGISTER:"register"},"TZ",0,i,"Zp",0,["auxclick","click","copy","keydown","paste","scrollend"],"kd",0,s,"qN",0,["focus","blur"]])},6774(e,t,r){"use strict";const n=r(860).K7.jserrors;r.d(t,["T",0,n])},993(e,t,r){"use strict";const n=r(860).K7.logging;r.d(t,["A$",0,{OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},"TZ",0,n,"p_",0,{ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"}])},3785(e,t,r){"use strict";r.d(t,{R:()=>c,b:()=>d});var n=r(9908),i=r(1863),s=r(860),a=r(3969),o=r(993);function c(e,t,r={},c=o.p_.INFO,d=!0,u,l=(0,i.t)()){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,s.K7.metrics,e),(0,n.p)("log",[l,t,r,c,d,u],void 0,s.K7.logging,e)}function d(e){return"string"==typeof e&&Object.values(o.p_).some(t=>t===e.toUpperCase().trim())}},3969(e,t,r){"use strict";const n=r(860).K7.metrics;r.d(t,["TZ",0,n,"XG",0,"storeEventMetrics","xV",0,"storeSupportabilityMetrics"])},6630(e,t,r){"use strict";const n=r(860).K7.pageViewEvent;r.d(t,["T",0,n])},782(e,t,r){"use strict";const n=r(860).K7.pageViewTiming;r.d(t,["T",0,n])},6344(e,t,r){"use strict";var n=r(2614);const i=r(860).K7.sessionReplay,s={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0}
2;r.d(t,["Qb",0,{API:"api",RESUME:"resume",SWITCH_TO_FULL:"switchToFull",INITIALIZE:"initialize",PRELOAD:"preload"},"TZ",0,i,"Vh",0,"errorDuringReplay","_s",0,{DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},"bc",0,{RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},"yP",0,s])},5270(e,t,r){"use strict";r.d(t,{Aw:()=>a,SR:()=>s,rF:()=>o});var n=r(384),i=r(7767);function s(e){return!!(0,n.dV)().o.MO&&(0,i.V)(e)&&!0===e?.session_trace.enabled}function a(e){return!0===e?.session_replay.preload&&s(e)}function o(e,t){try{if("string"==typeof t?.type&&"password"===t.type.toLowerCase())return"*".repeat(e?.length||0);if(void 0!==t?.dataset?.nrUnmask||t?.classList?.contains("nr-unmask"))return e}catch(e){}return"string"==typeof e?e.replace(/[\S]/g,"*"):"*".repeat(e?.length||0)}},3738(e,t,r){"use strict";const n=r(860).K7.sessionTrace,i="-start",s="-end",a="fn"+i,o="fn"+s;r.d(t,["He",0,"bstResource","Kp",0,s,"Lc",0,o,"Rz",0,"pushState","TZ",0,n,"bD",0,"resource","bc",0,{CROSS_TAB:{message:"Session Entity was set to OFF on another tab"},ENTITLEMENTS:{message:"Session Trace is not allowed and will not be started"},RESET:{message:"Session was reset"},SESSION_CHANGED:{message:"Session identifier changed unexpectedly"}},"d3",0,i,"uP",0,a])},4234(e,t,r){"use strict";r.d(t,{W:()=>i});var n=r(1687);class i{constructor(e,t){this.agentRef=e,this.ee=e?.ee,this.featureName=t,this.blocked=!1}deregisterDrain(){(0,n.x3)(this.agentRef,this.featureName)}}},7767(e,t,r){"use strict";var n=r(6154);r.d(t,["V",0,e=>n.RI&&!0===e?.privacy.cookies_enabled])},8362(e,t,r){"use strict";r.d(t,{d:()=>s});var n=r(9566),i=r(1741);class s extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>s});var n=r(944),i=r(4261);class s{#e(e,...t){if(this[e]!==s.prototype[e])return this[e](...t);(0,n.R)(35,e)}addPageAction(e,t){return this.#e(i.hG,e,t)}register(e){return this.#e(i.eY,e)}recordCustomEvent(e,t){return this.#e(i.fF,e,t)}setPageViewName(e,t){return this.#e(i.Fw,e,t)}setCustomAttribute(e,t,r){return this.#e(i.cD,e,t,r)}noticeError(e,t){return this.#e(i.o5,e,t)}setUserId(e,t=!1){return this.#e(i.Dl,e,t)}setApplicationVersion(e){return this.#e(i.nb,e)}setErrorHandler(e){return this.#e(i.bt,e)}addRelease(e,t){return this.#e(i.k6,e,t)}log(e,t){return this.#e("log",e,t)}start(){return this.#e("start")}finished(e){return this.#e(i.BL,e)}recordReplay(){return this.#e(i.CH)}pauseReplay(){return this.#e(i.Tb)}addToTrace(e){return this.#e(i.U2,e)}setCurrentRouteName(e){return this.#e(i.PA,e)}interaction(e){return this.#e(i.dT,e)}wrapLogger(e,t,r){return this.#e(i.Wb,e,t,r)}measure(e,t){return this.#e(i.V1,e,t)}consent(e){return this.#e(i.Pv,e)}}},4261(e,t,r){"use strict";r.d(t,["BL",0,"finished","CH",0,"recordReplay","Dl",0,"setUserId","Fw",0,"setPageViewName","PA",0,"setCurrentRouteName","Pv",0,"consent","Tb",0,"pauseReplay","U2",0,"addToTrace","V1",0,"measure","Wb",0,"wrapLogger","bt",0,"setErrorHandler","cD",0,"setCustomAttribute","dT",0,"interaction","eY",0,"register","fF",0,"recordCustomEvent","hG",0,"addPageAction","k6",0,"addRelease","nb",0,"setApplicationVersion","o5",0,"noticeError"])},1738(e,t,r){"use strict";r.d(t,{U:()=>l,Y:()=>u});var n=r(3241),i=r(9908),s=r(1863),a=r(944),o=r(3969),c=r(8362),d=r(860);function u(e,t,r,s){const u=s||r;!u||u[e]&&u[e]!==c.d.prototype[e]||(u[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,d.K7.metrics,r.ee),(0,n.W)({drained:!!r.runtime?.activatedFeatures,type:"data",name:"api",feature:"api-"+e,data:{}});try{return t.apply(this,arguments)}catch(e){(0,a.R)(23,e)}})}function l(e,t,r,n,a){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(a||null===r)&&(0,i.p)("api-"+n,[(0,s.t)(),t,r],void 0,"session",e.ee)}},8374(e,t,r){r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860(e,t,r){"use strict";const n="events",i="jserrors",s="browser/blobs",a="browser/logs",o={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations"},c={[o.pageViewEvent]:1,[o.pageViewTiming]:2,[o.metrics]:3,[o.jserrors]:4,[o.softNav]:5,[o.ajax]:6,[o.sessionTrace]:7,[o.sessionReplay]:8,[o.logging]:9,[o.genericEvents]:10},d={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:s,[o.sessionReplay]:s,[o.logging]:a,[o.genericEvents]:"ins"};r.d(t,["$J",0,d,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,a,"df",0,s,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const s=t[n]={exports:{}};return e[n](s,s.exports,r),s.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],s=t[n++];r.o(e,i)?0===s&&n++:0===s?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:s})}else for(var i in t)r.o(t,i)&&!r.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},r.f={},r.e=e=>Promise.all(Object.keys(r.f).reduce((t,n)=>(r.f[n](e,t),t),[])),r.u=e=>({95:"nr-full-compressor",222:"nr-full-recorder",649:"nr-full-iframe-message-handler",89
21:"nr-full"}[e]+"-1.323.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.323.0.PROD:";r.l=(n,i,s,a)=>{if(e[n])return void e[n].push(i);let o,c;if(void 0!==s){const e=document.getElementsByTagName("script");for(var d=0;d<e.length;d++){const r=e[d];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+s){o=r;break}}}if(!o){c=!0;var u={891:"sha512-3jboCmrue7pvfLFAQ9FaZC6iM4mLMLaZF6lKolNEXSkSEV504XyvxAZYc2IA7anoBv2V+k1HPTEP1kEgaIYkeg==",222:"sha512-VSWDjY6WtlUmQRPiGWVhKHgN3DMcL8oP9fKdTus8nteEdkVzXz/VhtS6N3wJyto6jHNHRLawzAny60sfcHbBNQ==",95:"sha512-JfHJ5y7GJR1Z5RXbhGTJAaX+pDpLAzH+9IdJQc7Lc7hz3fR+zqyabKG7hPG4eQQ3dZhcuoJKdfj+OhPePveplQ==",649:"sha512-mN3SeCI8QgOG4PdhbG1UlLTWP/P9Ckx3bEoFST53PE7ctYb2Pwk/sVJpCoVwkXTlhP17BH8L/BkzHI4sD+yo6Q=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+s),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),u[a]&&(o.integrity=u[a])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];if(delete e[n],o.parentNode?.removeChild(o),i?.forEach(e=>e(r)),t)return t(r)},f=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),c&&document.head.appendChild(o)}})(),r.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.p="https://js-agent.newrelic.com/",(()=>{const e={85:0,959:0};r.f.j=(t,n)=>{let i=r.o(e,t)?e[t]:void 0;if(0!==i)if(i)n.push(i[2]);else{const s=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=s);const a=r.p+r.u(t),o=new Error,c=n=>{if(r.o(e,t)&&(i=e[t],0!==i&&(e[t]=void 0),i)){const e=n&&("load"===n.type?"missing":n.type),r=n&&n.target&&n.target.src;o.message="Loading chunk "+t+" failed: ("+e+": "+r+")",o.name="ChunkLoadError",o.type=e,o.request=r,i[1](o)}};r.l(a,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,s,a]=n;var o,c,d=0;if(i.some(t=>0!==e[t])){for(o in s)r.o(s,o)&&(r.m[o]=s[o]);if(a)a(r)}for(t&&t(n);d<i.length;d++)c=i[d],r.o(e,c)&&e[c]&&e[c][0](),e[c]=0},n=self["webpackChunk:NRBA-1.323.0.PROD"]=self["webpackChunk:NRBA-1.323.0.PROD"]||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),(()=>{"use strict";r(8374);var e=r(8362),t=r(860);const n=Object.values(t.K7);var i=r(384),s=r(1741);var a=r(2555),o=r(3333),c=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var u=r(2614),l=r(944),f=r(8122);const h="[data-nr-mask]",p=e=>(0,f.a)(e,(()=>{const e={feature_flags:[],experimental:{register:!1,resources:!1,iframe_bridge:!1,iframe_domains:[]},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0,capture_payloads:c.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(o.$v.REGISTER)||e.experimental.register},set enabled(t){e.experimental.register=t},duplicate_data_to_container:!1,get allow_iframe_bridge(){return e.feature_flags.includes(o.$v.IFRAME_BRIDGE)||e.experimental.iframe_bridge},set allow_iframe_bridge(t){e.experimental.iframe_bridge=t},get iframe_domains(){return e.experimental.iframe_domains},set iframe_domains(t){Array.isArray(t)?e.experimental.iframe_domains=t:(0,l.R)(1,t)}}},browser_consent_mode:{enabled:!1},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1,capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(o.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:u.wk,inactiveMs:u.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inl
2ine_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){d(t)?e.mask_selector="".concat(t,",").concat(h):""===t||null===t?e.mask_selector=h:(0,l.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){d(t)?e.block_selector+=",".concat(t):""!==t&&(0,l.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,l.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]},web_sockets:{enabled:!1}}})());var g=r(6154),m=r(9324);let v=0;const y={buildEnv:"PROD",distMethod:"CDN",version:m.x,originTime:g.WN},b={consented:!1},E={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||b.consented},set consented(e){b.consented=e},customTransaction:void 0,denyList:[],disabled:!1,drainRegistry:new Map,connector:void 0,harvester:void 0,v2Target:void 0,isolatedBacklog:!1,isRecording:!1,loaderType:void 0,maxBytes:3e4,obfuscator:void 0,onerror:void 0,ptid:void 0,releaseIds:{},session:void 0,timeKeeper:void 0,registeredEntities:[],jsAttributesMetadata:{bytes:0},get harvestCount(){return++v},listeningForIframeMessages:!1};var R=r(9232);var w=r(7836),T=r(3241);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var A=r(9908),x=r(9752);function _(e,t={},n,o){let{init:c,info:d,loader_config:u,runtime:l={},exposed:h=!0}=t;if(!d){const e=(0,i.pV)();c=e.init,d=e.info,u=e.loader_config}var m;e.init=p(c||{}),e.loader_config=(m=u||{},(0,f.a)(m,S)),d.jsAttributes??={},g.bv&&(d.jsAttributes.isWorker=!0),e.info=(0,a.D)(d);const v=e.init;e.runtime??=(e=>{const t=(0,f.a)(e,E),r=Object.keys(y).reduce((e,t)=>(e[t]={value:y[t],writable:!1,configurable:!0,enumerable:!0},e),{});return Object.defineProperties(t,r)})(l),e.runtime.v2Target??={type:R.f.BA,instance:e.agentIdentifier,get id(){return e.runtime.appMetadata?.agents?.[0]?.entityGuid},get attributes(){return{"entity.guid":this.id,appId:e.info.applicationID}}},v.proxy.assets&&(e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e})(v.proxy.assets),e.runtime.configured||(Object.defineProperty(e,"beacons",{get:()=>[e.info.beacon,e.info.errorBeacon,e.init.proxy.assets,e.init.proxy.beacon].filter(Boolean)}),Object.defineProperty(e.runtime,"denyList",{get:()=>[...e.init.ajax.deny_list||[],...e.init.ajax.block_internal?e.beacons:[]]}),e.runtime.ptid=e.agentIdentifier,function(e){const t=(0,i.pV)();Object.getOwnPropertyNames(s.W.prototype).forEach(r=>{const n=s.W.prototype[r];if("function"!=typeof n||"constructor"===n)return;let i=t[r];e[r]&&!1!==e.exposed&&"micro-agent"!==e.runtime?.loaderType&&(t[r]=(...t)=>{const n=e[r](...t);return i?i(...t):n})})}(e),e.runtime.loaderType=n,e.ee=w.ee.get(e.agentIdentifier),e.exposed=h,(0,T.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&g.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(x.Pl)&&(0,A.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var O=r(1863),k=r(4261),L=r(1738);var M=r(1687),P=r(4234),N=r(5289),j=r(5270),I=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends P.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,M.Ak)(e,this.featureName),t()}))}):(0,M.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,a.f)(e.info))return(0,l.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(H.has(e))return H.get(e);const i=(async()=>
2{if((0,I.V)(e.init))try{const{setupAgentSession:t}=await r.e(891).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,A.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(649).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(891).then(r.bind(r,6589)),r.e(891).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new s(e);const a=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(a.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();H.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,l.R)(79,e),this.ee.abort(),void this.loadedSuccessfully(!1)}try{if(!this.#r(this.featureName,e.runtime.session,e.init))return this.abortHandler?.(),(0,M.Ze)(this.agentRef,this.featureName),void this.loadedSuccessfully(!1);const{Aggregate:r}=await t();this.featAggregate=new r(e,n),e.runtime.harvester.initializedAggregates.push(this.featAggregate),this.loadedSuccessfully(!0)}catch(e){(0,l.R)(34,e),this.abortHandler?.(),(0,M.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,N.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,j.SR)(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!B.has(e)&&(B.add(e),!(0,a.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}_(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var K=r(6630);class U extends W{static featureName=K.T;constructor(e){var t;super(e,K.T),this.setupInspectionEvents(),t=e,(0,L.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,A.p)("api-"+k.Fw,[(0,O.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(891).then(r.bind(r,908)):r.e(891).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,T.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,N.sB)(t=>{e(t,"DOMContentLoaded")}),(0,N.GG)(t=>{e(t,"load")}),(0,N.Qr)(t=>{e(t,"navigate")}),this.ee.on(u.tS.UPDATE,(e,t)=>{(0,T.W)({type:"lifecycle",name:"session",data:t})})}}class F extends e.d{constructor(e){var t;(super(),g.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(U),_(this,e,e.loaderType||"agent"),t=this,(0,L.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,L.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,L.Y)(k.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,l.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,A.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,L.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,L.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,L.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,L.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,L.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,A.p)("api-"+k.Pv,[t],void 0,"session",e.ee),e.runtime.consented=t,t){const t=e.features.page_view_event;t.onAggregateImported.then(e=>{const r=t.featAggregate;e&&!r.sentRum&&r.sendRum?.()})}}else(0,l.R)(65,typeof t)},e)}(this),this.run()):(0,l.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}get api(){return this}run(){try{const e=function(e){const t={};return n.forEach(r=>{t[r]=!!e[r]?.enabled}),t}(this.init),r=[...this.desiredFeatures],i=this.init.feature_flags.includes("rum_v2");r.sort((e,r)=>t.P3[e.featureName]-t.P3[r.featureName]),r.forEach(r=>{if(!e[r.featureName]&&(i||r.featureName!==t.K7.pageViewEvent))return;const n=function(e){switch(e){case t.K7.ajax:return[t.K7.jserrors];case t.K7.sessionTrace:return[t.K7.ajax,t.K7.pageViewEvent];case t.K7.sessionReplay:return[t.K7.sessionTrace];case t.K7.pageViewTiming:return[t.K7.pageViewEvent];default:return[]}}(r.featureName).filter(e=>!(e in this.features));n.length>0&&(0,l.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,l.R)(22,e);for(const e in this.features)this.features[e].abortHandler?.();const t=(0,i.Zm)();delete t.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return t.ee.get(this.agentIdentifier).abort(),!1}}}var V=r(2843),z=r(782);class G extends W{static featureName=z.T;constructor(e){super(e,z.T),g.RI&&((0,V.u)(()=>(0,A.p)("docHidden",[(0,O.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,A.p)("winPagehide",[(0,O.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(891).then(r.bind(r,9018))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(891).then(r.bind(r,6555)))}}var Z=r(6774),J=r(3878),X=r(3304);class Q{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,X.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function ee(e){return ne(e)?e:new Q(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic,e?.cause)}function te(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(ne(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return ee(e.reason)}const r=ee(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function re(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new Q(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic,e.cause);return t.name=SyntaxError.name,t}return ne(e.error)?e.error:ee(e)}function ne(e){return e instanceof Error&&!!e.stack}function ie(e,r,n,i,s=(0,O.t)()){"string"==typeof e&&(e=new Error(e)),(0,A.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,A.p)("uaErr",[],void 0,t.K7.genericEvents,n.ee)}var se=r(993),ae=r(3785);function oe(e,{customAttributes:t={},level:r=se.p_.INFO}={},n,i,s=(0,O.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,O.t)()){(0,A.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,O.t)()){const{start:a,end:o,customAttributes:c}=r||{},d={customAttributes:c||{}};if("object"!=typeof d.customAttributes||"string"!=typeof e||0===e.length)return void(0,l.R)(57);const u=(e,t)=>
2null==e?t:"number"==typeof e?e:e instanceof PerformanceMark?e.startTime:Number.NaN;if(d.start=u(a,0),d.end=u(o,s),Number.isNaN(d.start)||Number.isNaN(d.end))(0,l.R)(57);else{if(d.duration=d.end-d.start,!(d.duration<0))return(0,A.p)("api-"+k.V1,[d,e,i],void 0,t.K7.genericEvents,n.ee),d;(0,l.R)(58)}}function ue(e,r={},n,i,s=(0,O.t)()){(0,A.p)("api-"+k.fF,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}var le=r(5718);const fe=(e,t)=>e?.nrMfeId===t.id&&(!e?.nrMfeObserved||e?.nrMfeObserved===t.instance),he=e=>{try{return g.gm.CSS.escape(e)}catch(t){return e}},pe=(e,t={})=>{const r=t.id,n=t.instance;if(!e||!r||!n)return!1;try{let r=1===e.nodeType?e:e.parentElement;for(;r?.tagName;){if(fe(r.dataset,t))return r.dataset.nrMfeObserved=n,!0;r=r.parentNode}}catch(e){}return!1},ge=(e,t)=>{const r=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]')),n=(Array.from(r)||[]).find(t=>fe(t.dataset,e));let i=!!n;i&&(n.dataset.nrMfeObserved??=e.instance);const s=new g.gm.MutationObserver(r=>{r.forEach(r=>{r.addedNodes.forEach(r=>{const n=1===r.nodeType?r:null;!i&&fe(n?.dataset,e)&&(s.disconnect(),s.observe(n,{childList:!0,subtree:!0}),i=!0,n.dataset.nrMfeObserved=e.instance),(e=>{try{return e?.textContent?.trim()||["img","video","canvas","svg"].includes(e?.nodeName?.toLowerCase())}catch(e){return!1}})(r)&&(i||pe(r,e))&&t(r,s)})})});return s.observe(n||g.gm.document,{childList:!0,subtree:!0}),s},me=(e,t,r)=>{try{const n=new g.gm.PerformanceObserver(e=>{e.getEntries().forEach(r)});return n.observe(t),e.push(n),n}catch(e){return null}};function ve(e,t){let r,n,i=!1;const s=e=>null==e?e:e-(t?.scriptStart||t?.registeredAt||0),a={fcp:{get value(){const e=s(r);return e>1e4?void 0:e},set value(e){i||(r=e)}},lcp:{get value(){if(void 0!==a.fcp.value)return s(n)},set value(e){i||(n=e)}},cls:{value:void 0},inp:{value:void 0},disconnect:()=>{}};if(!(e&&g.RI&&g.gm.MutationObserver&&g.gm.PerformanceObserver))return a;const o=[];setTimeout(()=>{r||a.disconnect()},1e4);const c=()=>{if(!i){if(null==r){const e=(0,O.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,O.t)(),a.cls.value??=0}},d=ge(e,(e,t)=>{c(),t.disconnect()});o.push(d);let u=0,l=null;const f=new Set;try{l=new g.gm.ResizeObserver(e=>{i||e.forEach(e=>{try{const t=e.contentRect.width*e.contentRect.height;t>u&&(u=t,a.lcp.value=(0,O.t)()),l.unobserve(e.target)}catch(e){}})})}catch(e){}const h=ge(e,e=>{if(c(),l)try{const t=1===e.nodeType?e:e.parentElement;t&&!f.has(t)&&(f.add(t),"IMG"===t.tagName?t.complete?l.observe(t):t.addEventListener("load",()=>{l.observe(t)},{once:!0}):"VIDEO"===t.tagName?t.readyState>=2?l.observe(t):t.addEventListener("loadeddata",()=>{l.observe(t)},{once:!0}):l.observe(t))}catch(e){}});l&&o.push(l),o.push(h),me(o,{type:"layout-shift",buffered:!0},t=>{i||t.hadRecentInput||(t.sources||[]).some(r=>!!pe(r.node,e)&&(c(),a.cls.value+=t.value,!0))}),me(o,{type:"event",buffered:!0,durationThreshold:40},t=>{!i&&t.interactionId&&pe(t.target,e)&&(void 0===a.inp.value||t.duration>a.inp.value)&&(c(),a.inp.value=t.duration)});const p=["pointerdown","keydown"],m=()=>{p.forEach(e=>{g.gm.removeEventListener(e,v,{passive:!0})})};a.disconnect=()=>{i=!0,o.forEach(e=>{try{e?.disconnect()}catch(e){}}),m(),["visibilitychange","pagehide"].forEach(e=>{g.gm.removeEventListener(e,a.disconnect,{once:!0,passive:!0})})};const v=t=>{pe(t?.target,e)&&((()=>{try{h?.disconnect(),l?.disconnect()}catch(e){}})(),m())};p.forEach(e=>{g.gm.addEventListener(e,v,{passive:!0})}),["visibilitychange","pagehide"].forEach(e=>{g.gm.addEventListener(e,a.disconnect,{once:!0,passive:!0})});const y=g.gm.document?.querySelectorAll('[data-nr-mfe-id="'.concat(he(e.id),'"]'));return Array.from(y||[]).some(t=>fe(t.dataset,e))&&c(),a}var ye=r(9566),be=r(7560),Ee=r(9119);const Re=["entry","scripts","all"],we=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Se={experimental:(0,C.J)(()=>(0,l.R)(54,"newrelic.register")),disabled:(0,C.J)(()=>(0,l.R)(55)),invalidTarget:(0,C.J)(e=>(0,l.R)(48,e)),deregistered:(0,C.J)(()=>(0,l.R)(68)),invalidTimingMethod:(0,C.J)(e=>(0,l.R)(80,e)),duplicateName:(0,C.J)(e=>(0,l.R)(81,e)),duplicateId:(0,C.J)(e=>(0,l.R)(82,e))};function Ae(e){(0,L.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Se.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=R.f.MFE,r.licenseKey||=e.info.licenseKey,r.blocked=!1,("object"!=typeof r.tags||null===r.tags||Array.isArray(r.tags))&&(r.tags={}),r.parent??={get id(){return e.runtime.appMetadata.agents?.[0].entityGuid},type:R.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||Re.includes(r.timingMethod)||(Se.invalidTimingMethod(r.timingMethod),r.timingMethod=void 0);const n=(0,le.Qr)(r);r.manifest&&(0,le.xo)(n,r);const i=ve(r,n),s=(0,Ee.L)(""+location),a={};Object.prototype.hasOwnProperty.call(r,"attributes")||Object.defineProperty(r,"attributes",{get:()=>({...a,"source.id":r.id,"source.name":r.name,"source.type":r.type,"parent.type":r.parent?.type||R.f.BA,"parent.id":r.parent?.id})}
2),Object.entries(r.tags).forEach(([e,t])=>{we.includes(e)||(a["source.".concat(e)]=t)});let o=()=>{};const c=e.runtime.registeredEntities,d=e=>{r.blocked=!0,o=e};function u(e){return"string"==typeof e&&!!e.trim()&&e.trim().length<501}e.init.api.register.enabled||d(Se.disabled),u(r.id)&&u(r.name)||d(()=>Se.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Se.duplicateName(r),n===r.id&&t!==r.name&&Se.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Se.deregistered)},log:(t,n={})=>m(oe,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),measure:(t,n={})=>m(de,[t,{...n,customAttributes:{...a,...n.customAttributes||{}}},e],r),noticeError:(t,n={})=>m(ie,[t,{...a,...n},e],r),recordCustomEvent:(t,n={})=>m(ue,[t,{...a,...n},e],r),setApplicationVersion:e=>g("application.version",e),setCustomAttribute:(e,t)=>g(e,t),setUserId:e=>g("enduser.id",e),metadata:{get customAttributes(){return a},target:r,timings:n,vitals:i,events:{latestTimestamp:void 0}}},h=()=>(r.blocked&&o(),r.blocked);function p(){if(n.reportedAt)return;n.reportedAt=(0,O.t)(),i.disconnect(),n.fcp=i.fcp,n.lcp=i.lcp,n.cls=i.cls,n.inp=i.inp;const e=n.fetchEnd-n.fetchStart,t=n.scriptEnd-n.scriptStart,r={assetUrl:n.asset,assetType:n.type,registerUrl:s,deregisterUrl:(0,Ee.L)(""+location),pageUrl:void 0,currentUrl:void 0,timeAlive:n.reportedAt-n.registeredAt,timeToBeRequested:n.fetchStart,timeToExecute:t,timeToFetch:e,timeToLoad:e+t,t
2imeToRegister:n.registeredAt,totalWeight:n.totalWeight,...void 0!==n.renderBlocking&&{renderBlocking:n.renderBlocking},...i.fcp.value>=0&&{"vitals.fcp.value":i.fcp.value},...i.lcp.value>=0&&{"vitals.lcp.value":i.lcp.value},...i.cls.value>=0&&{"vitals.cls.value":i.cls.value},...i.inp.value>=0&&{"vitals.inp.value":i.inp.value}};f.recordCustomEvent("MicroFrontEndTiming",r)}h()||(c.push(f),(0,V.G)(p));const g=(e,t)=>{h()||(a[e]=t)},m=(r,n,i)=>{if(h()&&r!==xe)return;const s=f.metadata.events.latestTimestamp??(0,O.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,A.p)(q.xV,["API/register/".concat(a,"/called")],void 0,t.K7.metrics,e.ee);try{return r(...n,i,s)}catch(e){(0,l.R)(50,e)}};return f}class _e extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,L.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,L.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,L.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Ae(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,A.p)("ierr",[ee(t),(0,O.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,A.p)("err",[te(t),(0,O.t)(),!1,{unhandledPromiseRejection:1},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),g.gm.addEventListener("error",t=>{this.abortHandler&&(0,A.p)("err",[re(t),(0,O.t)(),!1,{},e.runtime.isRecording],void 0,this.featureName,this.ee)},(0,J.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e,()=>r.e(891).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var Oe=r(8990);let ke=1;function Le(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,Oe.I)(e,"nr@id",function(){return ke++})}function Me(e){if("string"==typeof e)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,X.A)(e).length}catch(e){return}}}var Pe=r(8139),Ne=r(3434),je=r(5732);const Ie={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||w.ee;const n=function(e){return(e||w.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(Ie[n.debugId]++)return n;Ie[n.debugId]=1,(0,Pe.u)(r,t);var i=(0,Ne.YM)(n,void 0,t),s=g.gm.XMLHttpRequest,a=g.gm.MutationObserver,o=g.gm.Promise,c=g.gm.setInterval,d="readystatechange",u=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],f=[],h=g.gm.XMLHttpRequest=function(e){const r=new s(e),a=n.context(r);a.targets=(0,je.$5)(t);try{n.emit("new-xhr",[r],a),r.addEventListener(d,(o=a,function(){var e=this;e.readyState>3&&!o.resolved&&(o.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,u,"fn-",E)}),(0,J.jT)(!1))}catch(e){(0,l.R)(15,e);try{n.emit("internal-error",[e])}catch(e){}}var o;return r};function p(e,t){i.inPlace(t,["onreadystatechange"],"fn-",E)}if(function(e,t){for(var r in e)t[r]=e[r]}(s,h),h.prototype=s.prototype,i.inPlace(h.prototype,Ce,"-xhr-",E),n.on("send-xhr-start",function(e,t){p(e,t),function(e){f.push(e),a&&(m?m.then(b):c?c(b):(v=-v,y.data=v))}(t)}),n.on("open-xhr-start",p),a){var m=o&&o.resolve();if(!c&&!o){var v=1,y=document.createTextNode(v);new a(b).observe(y,{characterData:!0})}}else r.on("fn-end",function(e){e[0]&&e[0].type===d||b()});function b(){for(var e=0;e<f.length;e++)p(0,f[e]);f.length&&(f=[])}function E(e,t){return t}return n}var Be="fetch-",He=Be+"body-",We=["arrayBuffer","blob","json","text","formData"],Ke=g.gm.Request,Ue=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||w.ee).get("fetch")}(e);if(!(Ke&&Ue&&g.gm.fetch))return r;if(Ve[r.debugId]++)return r;function n(e,n,i){var s=e[n];"function"==typeof s&&(e[n]=function(){var e=[...arguments];const n={},a=(0,je.$5)(t);var o;r.emit(i+"before-start",[e],n),n[w.P]&&n[w.P].dt&&(o=n[w.P].dt);var c=s.apply(this,e);return r.emit(i+"start",[e,o],c),c.then(function(e){return r.emit(i+"end",[null,e,a],c),e},function(e){throw r.emit(i+"end",[e,void 0,a],c),e})})}
2return Ve[r.debugId]=1,We.forEach(e=>{n(Ke[Fe],e,He),n(Ue[Fe],e,He)}),n(g.gm,"fetch",Be),r.on(Be+"end",function(e,n,i){var s=this;if(s.targets=i||[t.runtime.v2Target],n){var a=n.headers.get("content-length");null!==a&&(s.rxSize=a),r.emit(Be+"done",[null,n],s)}else r.emit(Be+"done",[e],s)}),r}var Ge=r(7485);class qe{constructor(e){this.agentRef=e}generateTracePayload(e){const t=this.agentRef.loader_config;if(!this.shouldGenerateTrace(e)||!t)return null;var r=(t.accountID||"").toString()||null,n=(t.agentID||"").toString()||null,i=(t.trustKey||"").toString()||null;if(!r||!n)return null;var s,a=(0,ye.ZF)(),o=(0,ye.el)(),c=Date.now();this.agentRef.runtime?.timeKeeper?.ready&&(s=Math.floor(this.agentRef.runtime.timeKeeper.correctAbsoluteTimestamp(c)));var d={spanId:a,traceId:o,timestamp:c,timestampCorrected:s};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(d.traceContextParentHeader=this.generateTraceContextParentHeader(a,o),d.traceContextStateHeader=this.generateTraceContextStateHeader(a,s??c,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(d.newrelicHeader=this.generateTraceHeader(a,o,s??c,r,n,i)),d}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,s){if(!("function"==typeof g.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return s&&n!==s&&(a.d.tk=s),btoa((0,X.A)(a))}shouldGenerateTrace(e){return this.agentRef.init?.distributed_tracing?.enabled&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1;const r=this.agentRef.init?.distributed_tracing;if(e.sameOrigin)t=!0;else if(r?.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,Ge.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}excludeNewrelicHeader(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=this.agentRef.init?.distributed_tracing;return!!e&&!!e.cors_use_tracecontext_headers}}var Ye=r(7295);function Ze(e){return"string"==typeof e?e:e instanceof(0,i.dV)().o.REQ?e.url:g.gm?.URL&&e instanceof URL?e.href:void 0}function $e(e,t){var r=(0,Ge.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}var Je=["load","error","abort","timeout"],Xe=Je.length,Qe=(0,i.dV)().o.REQ,et=(0,i.dV)().o.XHR;const tt="X-NewRelic-App-Data",rt="internal-error";class nt extends W{static featureName=c.TZ;constructor(e){super(e,c.TZ),this.dt=new qe(e),this.handler=(e,t,r,n)=>(0,A.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};g.gm?.performance?.getEntriesByType("resource").forEach(r=>{if(r.initiatorType in e&&0!==r.responseStatus){const n={status:r.responseStatus},i={rxSize:r.transferSize,duration:Math.floor(r.duration),cbTime:0};$e(n,r.name),this.handler("xhr",[n,i,r.startTime,r.responseEnd,e[r.initiatorType]],void 0,t.K7.ajax)}})}catch(e){}ze(this.ee,e),De(this.ee,e),function(e,r,n,i){const s=[c.mo.ALL,c.mo.FAILURES].includes(e.init.ajax?.capture_payloads);function a(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=S,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},t.latestLongtaskEnd=0,e.addEventListener("load",function(r){_(t,e)},(0,J.jT)(!1)),g.lR||e.addEventListener("progress",function(e){t.lastSize=e.loaded},(0,J.jT)(!1))}function o(e){this.params={method:e[0]},$e(this,e[1]),this.metrics={}}function d(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var n=i.generateTracePayload(this.parsedOrigin);if(n){var s=!1;n.newrelicHeader&&(r.setRequestHeader("newrelic",n.newrelicHeader),s=!0),n.traceContextParentHeader&&(r.setRequestHeader("traceparent",n.traceContextParentHeader),n.traceContextStateHeader&&r.setRequestHeader("tracestate",n.traceContextStateHeader),s=!0),s&&(this.dt=n)}}function u(e,t){s&&e.length>=2&&(this.requestHeaders??={},this.requestHeaders[e[0].toLowerCase()]=e[1])}function l(e,t){var n=this.metrics,i=e[0],s=this;if(n&&i){var a=Me(i);a&&(n.txSize=a)}this.startTime=(0,O.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
2!==e.type||s.called===s.totalCbs&&(s.onloadCalled||"function"!=typeof t.onload)&&"function"==typeof s.end)&&s.end(t)}catch(e){try{r.emit(rt,[e])}catch(e){}}};for(var o=0;o<Xe;o++)t.addEventListener(Je[o],this.listener,(0,J.jT)(!1))}function f(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function h(e,t){var r=""+Le(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Le(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,O.t)()}function v(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-added",[e[1],e[2]],t)}function y(e,t){t instanceof et&&"load"===e[0]&&r.emit("xhr-load-removed",[e[1],e[2]],t)}function b(e,t,r){t instanceof et&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,O.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,O.t)()-this.xhrCbStart,this.onload,t],t)}function R(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&g.RI&&(t=""+g.gm.location.href):e[0]&&e[0].url?t=e[0].url:g.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,Ge.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var n=i.generateTracePayload(this.parsedOrigin);if(n&&(n.newrelicHeader||n.traceContextParentHeader))if(e[0]&&e[0].headers)o(e[0].headers,n)&&(this.dt=n);else{var s={};for(var a in r)s[a]=r[a];s.headers=new Headers(r.headers||{}),o(s.headers,n)&&(this.dt=n),e.length>1?e[1]=s:e.push(s)}}function o(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function w(e,t){this.params={},this.metrics={},this.startTime=(0,O.t)(),this.dt=t;let[r,n={}]=e;$e(this,Ze(r));const i=(""+(r&&r instanceof Qe&&r.method||n.method||"GET")).toUpperCase();this.params.method=i,this.txSize=Me(n.body||r?.body)||0;try{var a=n.headers||r?.headers;if(s&&a)if(this.requestHeaders??={},a instanceof Headers)a.forEach(function(e,t){this.requestHeaders[t.toLowerCase()]=e}.bind(this));else if("object"==typeof a)for(var o in a)this.requestHeaders[o.toLowerCase()]=a[o]}catch(e){}this.requestBody=n.body||r?.body}function T(e,t){if(this.endTime=(0,O.t)(),this.params||(this.params={}),(0,Ye.iW)(this.params))return;this.params.status=t?t.status:0;const n=()=>{const e=+this.rxSize,t=null==this.rxSize||isNaN(e)?void 0:e,r={txSize:this.txSize,rxSize:t,duration:this.endTime-this.startTime},n=[this.params,r,this.startTime,this.endTime,"fetch"];this.targets.forEach(e=>x(n,this,e))};t&&s?t.clone().text().then(e=>{this.responseBody=e,this.rxSize&&"0"!==this.rxSize&&0!==this.rxSize||void 0===e||0===this.params.status||(this.rxSize=Me(e)),t?.headers&&(this.responseHeaders={},t.headers.forEach(function(e,t){this.responseHeaders[t.toLowerCase()]=e}.bind(this)))}).catch(e=>{r.emit(rt,[e])}).finally(()=>{n()}):n()}function S(e){const t=this.params,n=this.metrics;if(this.ended)return;this.ended=!0;for(let t=0;t<Xe;t++)e.removeEventListener(Je[t],this.listener,!1);if(t.aborted)return;if((0,Ye.iW)(t))return;if(n.duration=this.endTime-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):_(this,e),n.cbTime=this.cbTime,s){try{this.responseBody=e.responseText}catch(t){this.responseBody=e.response}if((!n.rxSize||0===n.rxSize)&&void 0!==this.responseBody&&0!==t.status){const e=Me(this.responseBody);void 0!==e&&(n.rxSize=e)}try{this.responseHeaders=function(e){const t={};return e?(e.split("\r\n").forEach(function(e){const r=e.indexOf(": ");if(r>0){const n=e.substring(0,r),i=e.substring(r+2);t[n.toLowerCase()]=i}}),t):t}(e.getAllResponseHeaders())}catch(e){r.emit(rt,[e])}}const i=[t,n,this.startTime,this.endTime,"xhr"];this.targets.forEach(e=>x(i,this,e))}function x(e,r,i){n("xhr",[...e,i],r,t.K7.ajax)}function _(e,n){e.params.status=n.status;var i=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?Me(e.response):"text"===r||""===r||void 0===r?Me(e.responseText):void 0}(n,e.lastSize);if(void 0!==i&&0!==n.status&&(e.metrics.rxSize=i),e.sameOrigin&&n.getAllResponseHeaders().indexOf(tt)>=0){var s=n.getResponseHeader(tt);s&&((0,A.p)("sm",["Ajax/CrossApplicationTracing/Header/Seen"],void 0,t.K7.metrics,r),e.params.cat=s.split(", ").pop())}e.loadCaptureCalled=!0}r.on("new-xhr",a),r.on("open-xhr-start",o),r.on("open-xhr-end",d),r.on("send-xhr-start",l),r.on("setRequestHeader-xhr-start",u),r.on("xhr-cb-time",f),r.on("xhr-load-added",h),r.on("xhr-load-removed",p),r.on("xhr-resolved",m),r.on("addEventListener-end",v),r.on("removeEventListener-end",y),r.on("fn-end",E),r.on("fetch-before-start",R),r.on("fetch-start",w),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(891).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||w.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Ne.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,L.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,A.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,A.p)("api-"+k.hG,[n,k.BL],void 0,t.K7.genericEvents,e.ee)},e)}const{He:dt,bD:ut,d3:lt,Kp:ft,TZ:ht,Lc:pt,uP:gt,Rz:mt}=ot;class vt extends W{static featureName=ht;constructor(e){var n;super(e,ht),n=e,(0,L.Y)(k.U2,function(e){if(!(e&&"object"==typeof e&&e.name&&e.start))return;const r={n:e.name,s:e.start-g.WN,e:(e.end||e.start)-g.WN,o:e.origin||"",t:"api"};r.s<0||r.e<0||r.e<r.s?(0,l.R)(61,{start:r.s,end:r.e}):(0,A.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
2if(!(0,I.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Pe.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,O.t)()}),this.eventsEE.on(pt,function(e,r){(0,A.p)("bst",[e[0],r,this.bstStart,(0,O.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,O.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,A.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,t.K7.sessionTrace,i)});try{s=new PerformanceObserver(e=>{const r=e.getEntries();(0,A.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(891).then(r.bind(r,6974)),{resourceObserver:s})}}var yt=r(733),bt=r(6344);class Et extends W{static featureName=bt.TZ;#i;recorder;constructor(e){var n;let i;super(e,bt.TZ),n=e,(0,L.Y)(k.CH,function(){(0,A.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,L.Y)(k.Tb,function(){(0,A.p)(k.Tb,[],void 0,t.K7.sessionReplay,e.ee)},e)}(e);const s="".concat(u.Wt).concat((0,yt.Y)(e.info.licenseKey,e.info.applicationID));try{i=JSON.parse(localStorage.getItem(s))}catch(e){}(0,j.SR)(e.init)&&this.ee.on(k.CH,()=>this.#s()),this.#a(i)&&this.importRecorder().then(e=>{e.startRecording(bt.Qb.PRELOAD,i?.sessionReplayMode)}),this.abortHandler=this.#n,this.importAggregator(this.agentRef,()=>r.e(891).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,A.p)(bt.Vh,[e],void 0,this.featureName,this.ee))})}#a(e){return e&&(e.sessionReplayMode===u.g.FULL||e.sessionReplayMode===u.g.ERROR)||(0,j.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(891),r.e(222)]).then(r.bind(r,4866)).then(({Recorder:e})=>(this.recorder=new e(this),this.recorder)).catch(e=>{throw this.ee.emit("internal-error",[e]),this.blocked=!0,e}),this.#i)}#s(){this.blocked||(this.featAggregate?this.featAggregate.mode!==u.g.FULL&&this.featAggregate.initializeRecording(u.g.FULL,!0,bt.Qb.API):this.importRecorder().then(()=>{this.recorder.startRecording(bt.Qb.API,u.g.FULL)}))}#n(){this.recorder?.stopRecording()}}var Rt=r(981);const wt={},Tt=new Set;function St(e){return"string"==typeof e?{type:"string",size:(new TextEncoder).encode(e).length}:e instanceof ArrayBuffer?{type:"ArrayBuffer",size:e.byteLength}:e instanceof Blob?{type:"Blob",size:e.size}:e instanceof DataView?{type:"DataView",size:e.byteLength}:ArrayBuffer.isView(e)?{type:"TypedArray",size:e.byteLength}:{type:"unknown",size:0}}class At{constructor(e,t){this.timestamp=(0,O.t)(),this.currentUrl=(0,Ee.L)(window.location.href),this.socketId=(0,ye.LA)(8),this.requestedUrl=(0,Ee.L)(e),this.requestedProtocols=Array.isArray(t)?t.join(","):t||"",this.openedAt=void 0,this.protocol=void 0,this.extensions=void 0,this.binaryType=void 0,this.messageOrigin=void 0,this.messageCount=0,this.messageBytes=0,this.messageBytesMin=0,this.messageBytesMax=0,this.messageTypes=void 0,this.sendCount=0,this.sendBytes=0,this.sendBytesMin=0,this.sendBytesMax=0,this.sendTypes=void 0,this.closedAt=void 0,this.closeCode=void 0,this.closeReason="unknown",this.closeWasClean=void 0,this.connectedDuration=0,this.hasErrors=void 0}}class xt extends W{static featureName=o.TZ;constructor(e){super(e,o.TZ);const n=e.init.feature_flags.includes("websockets")||e.init.web_sockets?.enabled,s=!e.init.feature_flags.includes("no_spv"),a=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.performance.resources.enabled,e.init.user_actions.enabled,n,s];var c;let d;if(c=e,(0,L.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,L.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Ae(e),function(e){(0,L.Y)(k.V1,(t,r)=>de(t,r,e),e)}(e),this.removeOnAbort=new AbortController,this.abortHandler=()=>{this.removeOnAbort.abort(),this.abortHandler=void 0},n){const u=function(e,t){if(!(0,i.dV)().o.WS)return e;const r=e.get("websockets");if(wt[r.debugId]++)return r;wt[r.debugId]=1,(0,V.G)(()=>{const e=(0,O.t)();Tt.forEach(t=>{t.nrData.closedAt=e,t.nrData.closeCode=1001,t.nrData.closeReason="Page navigating away",t.nrData.closeWasClean=!1,t.nrData.openedAt&&(t.nrData.connectedDuration=e-t.nrData.openedAt),r.emit("ws",[t.nrData,t.targets],t)})});
2class n extends WebSocket{static name=Rt.R.WS;static toString(){return"function WebSocket() { [native code] }"}toString(){return"[object WebSocket]"}get[Symbol.toStringTag](){return n.name}#o(e){(e.__newrelic??={}).socketId=this.nrData.socketId,this.nrData.hasErrors??=!0}constructor(...e){super(...e),this.nrData=new At(e[0],e[1]),this.targets=(0,je.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,O.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),Tt.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=St(e.data);this.nrData.messageOrigin??=(0,Ee.L)(e.origin),this.nrData.messageCount++,this.nrData.messageBytes+=r,this.nrData.messageBytesMin=Math.min(this.nrData.messageBytesMin||1/0,r),this.nrData.messageBytesMax=Math.max(this.nrData.messageBytesMax,r),(this.nrData.messageTypes??"").includes(t)||(this.nrData.messageTypes=this.nrData.messageTypes?"".concat(this.nrData.messageTypes,",").concat(t):t)}),this.addEventListener("close",e=>{this.nrData.closedAt=(0,O.t)(),this.nrData.closeCode=e.code,e.reason&&(this.nrData.closeReason=e.reason),this.nrData.closeWasClean=e.wasClean,this.nrData.connectedDuration=this.nrData.closedAt-this.nrData.openedAt,Tt.delete(this),r.emit("ws",[this.nrData,this.targets],this)})}addEventListener(e,t,...r){const n=this,i="function"==typeof t?function(...e){try{return t.apply(this,e)}catch(e){throw n.#o(e),e}}:t?.handleEvent?{handleEvent:function(...e){try{return t.handleEvent.apply(t,e)}catch(e){throw n.#o(e),e}}}:t;return super.addEventListener(e,i,...r)}send(e){if(this.readyState===WebSocket.OPEN){const{type:t,size:r}=St(e);this.nrData.sendCount++,this.nrData.sendBytes+=r,this.nrData.sendBytesMin=Math.min(this.nrData.sendBytesMin||1/0,r),this.nrData.sendBytesMax=Math.max(this.nrData.sendBytesMax,r),(this.nrData.sendTypes??"").includes(t)||(this.nrData.sendTypes=this.nrData.sendTypes?"".concat(this.nrData.sendTypes,",").concat(t):t)}try{return super.send(e)}catch(e){throw this.#o(e),e}}close(...e){try{super.close(...e)}catch(e){throw this.#o(e),e}}}return g.gm.WebSocket=n,r}(this.ee,e);u.on("ws",(e,t)=>{(0,A.p)("ws-complete",[e,t],void 0,this.featureName,this.ee)})}if(s){if("function"==typeof g.gm.ReportingObserver){const l=new g.gm.ReportingObserver(e=>{e.forEach(e=>{(0,A.p)("spv",[_t(e),(0,O.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,A.p)("spv",[_t(e),e.timeStamp],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal))}if(g.RI){if(ze(this.ee,e),De(this.ee,e),d=at(this.ee,e),e.init.user_actions.enabled){function f(t){const r=(0,Ge.D)(t);return e.beacons.includes(r.hostname+":"+r.port)}function h(){d.emit("navChange")}o.Zp.forEach(e=>(0,J.sp)(e,e=>(0,A.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
2h(e=>{const t=(0,C.s)(e=>{(0,A.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,A.p)("uaErr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(!1,this.removeOnAbort.signal)),this.ee.on("open-xhr-start",(e,r)=>{f(e[1])||r.addEventListener("readystatechange",()=>{2===r.readyState&&(0,A.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)},(0,J.jT)(void 0,this.removeOnAbort.signal))}),this.ee.on("fetch-start",e=>{e.length>=1&&!f(Ze(e[0]))&&(0,A.p)("uaXhr",[],void 0,t.K7.genericEvents,this.ee)}),d.on("pushState-end",h),d.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,J.jT)(!0,this.removeOnAbort.signal)),window.addEventListener("popstate",h,(0,J.jT)(!0,this.removeOnAbort.signal))}if(e.init.performance.resources.enabled&&g.gm.PerformanceObserver?.supportedEntryTypes.includes("resource")){new PerformanceObserver(e=>{e.getEntries().forEach(e=>{(0,A.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(891).then(r.bind(r,8019))):this.deregisterDrain()}}function _t(e){const t=e.body??e;return{blockedUrl:t.blockedURL??e.blockedURI,documentUrl:t.documentURL??e.documentURI,effectiveDirective:t.effectiveDirective,originalPolicy:t.originalPolicy,sourceFile:t.sourceFile,statusCode:t.statusCode,lineNumber:t.lineNumber,columnNumber:t.columnNumber,disposition:"reporting"===t.disposition?"report":t.disposition,sample:t.sample,referrer:t.referrer}}var Ot=r(2646);const kt=new Map;function Lt(e,t,r,n,i=!0,s){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const a=function(e){return(e||w.ee).get("logger")}(e),o=(0,Ne.YM)(a,void 0,s),c=new Ot.y(w.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Ne.Jt]||t[r];return kt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>kt.get(d),void 0,!0),a}var Mt=r(1910);class Pt extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,L.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,L.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Lt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Ae(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Mt.i)(g.gm.console[t]),Lt(n,g.gm.console,t,{level:"log"===t?"info":t},void 0,e)}),this.ee.on("wrap-logger-end",function([t],r,i,s=[e.runtime.v2Target]){const{level:a,customAttributes:o,autoCaptured:c}=this;s.forEach(e=>{(0,ae.R)(n,t,o,a,c,e)})}),this.importAggregator(e,()=>r.e(891).then(r.bind(r,5288)))}}new F({features:[U,G,vt,Et,nt,Y,_e,xt,Pt],loaderType:"pro"})})()})();</script>
2
3<meta name="title" content="Personalising Your Pen: 10 Meaningful Engraving Ideas for Every Occasion - Blog"/>
4<meta name="description" content="Call 020 731 8610, talk to an expert. Next day delivery &amp; same day despatch on personalised items. Luxury engraved pens, embossed leather journals"/>
5<meta name="robots" content="INDEX,FOLLOW"/>
6<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"/>
7<meta name="format-detection" content="telephone=no"/>
8<title>Personalising Your Pen: 10 Meaningful Engraving Ideas for Every Occasion - Blog</title>
9<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/mage/calendar.min.css" />
10<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Mageplaza_Blog/css/mpBlogIcon.min.css" />
11<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Amasty_LibSwiperJs/vendor/swiper/swiper.min.css" />
12<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Pinpoint_Feefo/css/source/slick.min.css" />
13<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Pinpoint_Feefo/css/source/slick-theme.min.css" />
14<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Pinpoint_Feefo/css/source/fontawesome-stars.min.css" />
15<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Pinpoint_Feefo/css/style.min.css" />
16<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/StripeIntegration_Payments/css/wallets.min.css" />
17<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Mageplaza_Core/css/grid-mageplaza.min.css" />
18<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Mageplaza_Core/css/font-awesome.min.css" />
19<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Mageplaza_Core/css/owl.carousel.min.css" />
20<link  rel="stylesheet" type="text/css"  media="all" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Mageplaza_Core/css/owl.theme.min.css" />
21<link  rel="stylesheet" type="text/css"  media="all and (min-width: 1px)" href="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/css/styles.min.css" />
22<link  rel="stylesheet" type="text/css"  media="all" href="https://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css" />
23<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/requirejs/require.min.js"></script>
vendor: 1 bytes, line 23
23
24<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/requirejs-min-resolver.min.js"></script>
vendor: 1 bytes, line 24
24
25<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/mage/requirejs/mixins.min.js"></script>
vendor: 1 bytes, line 25
25
26<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/requirejs-config.min.js"></script>
vendor: 1 bytes, line 26
26
27<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/BestResponseMedia_EngravingAndEmbossing/js/color-thief.min.js"></script>
vendor: 1 bytes, line 27
27
28<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/BestResponseMedia_EngravingAndEmbossing/js/tinycolor.min.js"></script>
vendor: 1 bytes, line 28
28
29<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/BestResponseMedia_EngravingAndEmbossing/js/JournalColourHandler.min.js"></script>
vendor: 1 bytes, line 29
29
30<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/BestResponseMedia_EngravingAndEmbossing/js/JournalEmbossingColour.min.js"></script>
vendor: 1 bytes, line 30
30
31<script  type="text/javascript"  src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/BestResponseMedia_EngravingAndEmbossing/js/embossingColour.min.js"></script>
vendor: 1 bytes, line 31
31
32<script  type="text/javascript"  async="async" src="//ww2.feefo.com/api/ecommerce/plugin/widget/merchant/pen-heaven"></script>
32
33<link  rel="canonical" href="https://www.penheaven.co.uk/blog/10-meaningful-engraving-ideas-for-every-occasion" />
34<link  rel="alternate" hreflang="en-GB" href="https://www.penheaven.co.uk/blog/10-meaningful-engraving-ideas-for-every-occasion" />
35<link  rel="alternate" hreflang="x-default" href="https://www.penheaven.com/blog/10-meaningful-engraving-ideas-for-every-occasion" />
36<link  rel="icon" type="image/x-icon" href="https://www.penheaven.co.uk/media/favicon/default/pen-heaven-favicon.png" />
37<link  rel="shortcut icon" type="image/x-icon" href="https://www.penheaven.co.uk/media/favicon/default/pen-heaven-favicon.png" />
38<!--c492726cbfeb9b2705506492d9c91f9f-->
39<!--RnBZs803qIqDMCQYJWPS2KEW1PD363wu-->
40<meta name="p:domain_verify" content="1268602ee4fcebcdd110f299283faafb"/>
41<meta name="google-site-verification" content="EklBOGU4s4RkYClNnrTMyrLnbqKMGlQPDYQF9VQygvI" />
42<meta name="google-site-verification" content="yoL-bydNUfGIrPATkqP6RXcFYI62rByd3gVhaIplLZk" />
43<meta name="google-site-verification" content="JmwS3Jq_cR4-95n8g8tk3smgoVF5lvkfzlQj49KR6I4" />
44<meta name="p:domain_verify" content="2dfQGWCHUAMXsBN679BHLDqgSuGNcmcU"/>
45<meta name="msvalidate.01" content="6B4C5D5F374EF74005BA95E4CFD5B7F5" />
46
47
48<!-- Start of penheaven Zendesk Widget script -->
49<script id="ze-snippet" src="https://static.zdassets.com/ekr/snippet.js?key=ba57d78a-92a8-4ffc-8192-08e68faf092b"> </script>
49
50<!-- End of penheaven Zendesk Widget script -->
51
52
53<!-- Hotjar Tracking Code for https://www.penheaven.co.uk -->
54<script>
vendor: 128 bytes, lines 54-57
54
55    (function(h,o,t,j,a,r){
56        h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};
57        h._hjSettings={hjid:
573420475
vendor: 264 bytes, lines 57-62
57,hjsv:6};
58        a=o.getElementsByTagName('head')[0];
59        r=o.createElement('script');r.async=1;
60        r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;
61        a.appendChild(r);
62    })(window,document,'https://static.hotjar.com/c/hotjar-','.js?sv=');
63</script>
63   
63<script type="text/x-magento-init">
64        {
65            "*": {
66                "Magento_PageCache/js/form-key-provider": {
67                    "isPaginationCacheEnabled":
68                        0                }
69            }
70        }</script>
70   
70<script>require(['magentoStorefrontEvents'], function (magentoStorefrontEvents) {
71    if(!magentoStorefrontEvents) return;
72
73    window.magentoStorefrontEvents = magentoStorefrontEvents;
74    magentoStorefrontEvents.context.setStorefrontInstance(
75        {"storeUrl":"https:\/\/www.penheaven.co.uk\/","websiteId":1,"websiteCode":"base","storeId":1,"storeCode":"GBP","storeViewId":1,"storeViewCode":"default","websiteName":"Pen Heaven","storeName":"British Pound Sterling","storeViewName":"GBP","baseCurrencyCode":"GBP","storeViewCurrencyCode":"GBP","catalogExtensionVersion":"103.4.8","environmentId":"61428b31-4a1a-48fb-b682-64f4c7f5baf8","environment":"Production","storefrontTemplate":"Luma"}
76    );
77    magentoStorefrontEvents.context.setMagentoExtension({
78        magentoExtensionVersion: "7.7.0",
79    });
80    magentoStorefrontEvents.context.setDataServicesExtension({
81        version: "7.7.0",
82    });
83    magentoStorefrontEvents.context.setPage({
84        pageType: "Default"
85    });
86    magentoStorefrontEvents.context.setContext("pageExtended", {
87        action: "page-view"
88    });
89    
90});</script>
90 
90<script type="text/x-magento-init">
91    {
92        "*": {
93            "dataServicesBase": {
94                "isCookieRestrictionModeEnabled": 0,
95                "isEnabled": 1            },
96            "magentoStorefrontEventCollector": {}
97        }
98    }</script>
98  <!-- GOOGLE TAG MANAGER -->
98<script type="text/x-magento-init">
99            {
100                "*": {
101                    "Magento_GoogleTagManager/js/google-tag-manager": {"isCookieRestrictionModeEnabled":false,"currentWebsite":1,"cookieName":"user_allowed_save_cookie","gtmAccountId":"GTM-KT388B8","storeCurrencyCode":"GBP","ordersData":[]}                }
102            }</script>
102<!-- END GOOGLE TAG MANAGER -->
102<script type="text&#x2F;javascript" src="http&#x3A;&#x2F;&#x2F;chimpstatic.com&#x2F;mcjs-connected&#x2F;js&#x2F;users&#x2F;af78a71599f742901dc258fce&#x2F;c825e2a1368f7bc3752baa7f1.js" defer="defer">
103</script>
103  
103<script>
104                          (function(d) {
105                            var config = {
106                              kitId: 'hxi7one',
107                              scriptTimeout: 3000,
108                              async: true
109                            },
110                            h=d.documentElement,t=setTimeout(function(){h.className=h.className.replace(/\bwf-loading\b/g,"")+" wf-inactive";},config.scriptTimeout),tk=d.createElement("script"),f=false,s=d.getElementsByTagName("script")[0],a;h.className+=" wf-loading";tk.src='https://use.typekit.net/'+config.kitId+'.js';tk.async=true;tk.onload=tk.onreadystatechange=function(){a=this.readyState;if(f||a&&a!="complete"&&a!="loaded")return;f=true;clearTimeout(t);try{Typekit.load(config)}catch(e){}};s.parentNode.insertBefore(tk,s)
111                          })(document);
112                        </script>
112 <!--Open Graph Meta tags by Mageplaza--><meta property="og:url" content="https://www.penheaven.co.uk/blog/10-meaningful-engraving-ideas-for-every-occasion" /><meta property="og:title" content="Personalising Your Pen: 10 Meaningful Engraving Ideas for Every Occasion" /><meta property="og:image" content="https://www.penheaven.co.uk/media/mageplaza/blog/post/b/l/blog-hero-engraving-ideas-2025.jpg" /><meta property="og:description" content="" /><!--End Open Graph Meta tags by Mageplaza--><!-- /** * Copyright © Fisheye Media Ltd. All rights reserved. * See LICENCE.txt for licence details. */ -->
112<script type="text/x-magento-init">
113    {
114        "*": {
115            "penheaven/calculateStyles": {}
116        }
117    }</script>
117</head><body data-container="body" data-mage-init='{"loaderAjax": {}, "loader": { "icon": "https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images/loader-2.gif"}}' class="store-default blog-page mpblog-post-view page-layout-2columns-right" store-code="default" id="html-body">             
117<script type="text/x-magento-init">
118    {
119        "*": {
120            "Magento_PageBuilder/js/widget-initializer": {
121                "config": {"[data-content-type=\"slider\"][data-appearance=\"default\"]":{"Magento_PageBuilder\/js\/content-type\/slider\/appearance\/default\/widget":false},"[data-content-type=\"map\"]":{"Magento_PageBuilder\/js\/content-type\/map\/appearance\/default\/widget":false},"[data-content-type=\"row\"]":{"Magento_PageBuilder\/js\/content-type\/row\/appearance\/default\/widget":false},"[data-content-type=\"tabs\"]":{"Magento_PageBuilder\/js\/content-type\/tabs\/appearance\/default\/widget":false},"[data-content-type=\"slide\"]":{"Magento_PageBuilder\/js\/content-type\/slide\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-slide-button","showOverlay":"hover","dataRole":"slide"}},"[data-content-type=\"banner\"]":{"Magento_PageBuilder\/js\/content-type\/banner\/appearance\/default\/widget":{"buttonSelector":".pagebuilder-banner-button","showOverlay":"hover","dataRole":"banner"}},"[data-content-type=\"buttons\"]":{"Magento_PageBuilder\/js\/content-type\/buttons\/appearance\/inline\/widget":false},"[data-content-type=\"products\"][data-appearance=\"carousel\"]":{"Magento_PageBuilder\/js\/content-type\/products\/appearance\/carousel\/widget":false},"[data-content-type=\"product_recommendations\"]":{"Magento_PageBuilderProductRecommendations\/js\/content-type\/product-recommendations\/appearance\/default\/widget":false},"[data-content-type=\"accordion\"]":{"Fisheye_PageBuilder\/js\/content-type\/accordion\/appearance\/default\/widget":false},"[data-content-type=\"modal\"]":{"Fisheye_PageBuilder\/js\/content-type\/modal\/appearance\/default\/widget":false}},
122                "breakpoints": {"desktop":{"label":"Desktop","stage":true,"default":true,"class":"desktop-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-desktop.svg","conditions":{"min-width":"1024px"},"options":{"products":{"default":{"slidesToShow":"5"}}}},"tablet":{"conditions":{"max-width":"1024px","min-width":"768px"},"options":{"products":{"default":{"slidesToShow":"4"},"continuous":{"slidesToShow":"3"}}}},"mobile":{"label":"Mobile","stage":true,"class":"mobile-switcher","icon":"Magento_PageBuilder::css\/images\/switcher\/switcher-mobile.svg","media":"only screen and (max-width: 768px)","conditions":{"max-width":"300px","min-width":"640px"},"options":{"products":{"default":{"slidesToShow":"3"}}}},"mobile-small":{"conditions":{"max-width":"640px"},"options":{"products":{"default":{"slidesToShow":"2"},"continuous":{"slidesToShow":"1"}}}}}            }
123        }
124    }</script>
124 <div class="cookie-status-message" id="cookie-status">The store will not work correctly when cookies are disabled.</div> 
124<script type="text&#x2F;javascript">document.querySelector("#cookie-status").style.display = "none";</script>
124 
124<script type="text/x-magento-init">
125    {
126        "*": {
127            "cookieStatus": {}
128        }
129    }</script>
129 
129<script type="text/x-magento-init">
130    {
131        "*": {
132            "mage/cookies": {
133                "expires": null,
134                "path": "\u002F",
135                "domain": ".www.penheaven.co.uk",
136                "secure": true,
137                "lifetime": "86400"
138            }
139        }
140    }</script>
140  <noscript><div class="message global noscript"><div class="content"><p><strong>JavaScript seems to be disabled in your browser.</strong> <span> For the best experience on our site, be sure to turn on Javascript in your browser.</span></p></div></div></noscript>   
140<script>    require.config({
141        map: {
142            '*': {
143                wysiwygAdapter: 'mage/adminhtml/wysiwyg/tiny_mce/tinymceAdapter'
144            }
145        }
146    });</script>
146 
146<script> window.cookiesConfig = window.cookiesConfig || {}; window.cookiesConfig.secure = true; </script>
146 
146<script>    require.config({
147        paths: {
148            googleMaps: 'https\u003A\u002F\u002Fmaps.googleapis.com\u002Fmaps\u002Fapi\u002Fjs\u003Fv\u003D3\u0026key\u003D'
149        },
150        config: {
151            'Magento_PageBuilder/js/utils/map': {
152                style: '',
153            },
154            'Magento_PageBuilder/js/content-type/map/preview': {
155                apiKey: '',
156                apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fwww.penheaven.co.uk\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.'
157            },
158            'Magento_PageBuilder/js/form/element/map': {
159                apiKey: '',
160                apiKeyErrorMessage: 'You\u0020must\u0020provide\u0020a\u0020valid\u0020\u003Ca\u0020href\u003D\u0027https\u003A\u002F\u002Fwww.penheaven.co.uk\u002Fadminhtml\u002Fsystem_config\u002Fedit\u002Fsection\u002Fcms\u002F\u0023cms_pagebuilder\u0027\u0020target\u003D\u0027_blank\u0027\u003EGoogle\u0020Maps\u0020API\u0020key\u003C\u002Fa\u003E\u0020to\u0020use\u0020a\u0020map.'
161            },
162        }
163    });</script>
163<script>
164    require.config({
165        shim: {
166            'Magento_PageBuilder/js/utils/map': {
167                deps: ['googleMaps']
168            }
169        }
170    });</script>
170 <!-- GOOGLE TAG MANAGER -->
vendor: 67 bytes, line 170
170<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
170GTM-KT388B8
vendor: 82 bytes, line 170
170" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
170<!-- END GOOGLE TAG MANAGER --> 
170<script type="text/x-magento-init">
171    {
172        "*": {
173            "Magento_GoogleTagManager/js/google-tag-manager-cart": {
174                "blockNames": ["category.products.list","product.info.upsell","catalog.product.related","checkout.cart.crosssell","search_result_list"],
175                "cookieAddToCart": "add_to_cart",
176                "cookieRemoveFromCart":
177                    "remove_from_cart",
178                "advancedAddToCart": "add_to_cart_advanced"
179            }
180        }
181    }</script>
181  
181<script>
182        require([
183                'jquery',
184                'Mirasvit_SearchAutocomplete/js/autocomplete',
185                'Mirasvit_SearchAutocomplete/js/typeahead',
186            ], function ($, autocomplete, typeahead) {
187                var selector = 'input#search, input#mobile_search, .minisearch input[type="text"]';
188
189                $(document).ready(function () {
190                    $('#search_mini_form').prop("minSearchLength", 10000);
191
192                    const $input = $(selector);
193
194                    $input.each(function (index, searchInput) {
195                         new autocomplete($(searchInput)).init({"query":"","priceFormat":{"pattern":"\u00a3%s","precision":2,"requiredPrecision":2,"decimalSymbol":".","groupSymbol":",","groupLength":3,"integerRequired":false},"minSearchLength":3,"url":"https:\/\/www.penheaven.co.uk\/searchautocomplete\/ajax\/suggest\/","storeId":"1","delay":250,"isAjaxCartButton":false,"isShowCartButton":false,"isShowImage":true,"isShowPrice":true,"isShowSku":false,"isShowRating":false,"isShowDescription":false,"isShowStockStatus":false,"layout":"1column","popularTitle":"Popular Suggestions","popularSearches":["Cross","Kaweco","Waterman","Commercial","Sonnet","Ink","Black","Parker pen"],"isTypeaheadEnabled":false,"typeaheadUrl":"https:\/\/www.penheaven.co.uk\/searchautocomplete\/ajax\/typeahead\/","minSuggestLength":2,"currency":"GBP","limit":32});
196                    });
197                });
198            }
199        );</script>
199<script id="searchAutocompletePlaceholder" type="text/x-custom-template">
200    <div class="mst-searchautocomplete__autocomplete">
201        <div class="mst-searchautocomplete__spinner">
202            <div class="spinner-item spinner-item-1"></div>
203            <div class="spinner-item spinner-item-2"></div>
204            <div class="spinner-item spinner-item-3"></div>
205            <div class="spinner-item spinner-item-4"></div></div>
206
207        <div class="mst-searchautocomplete__close">&times;</div></div></script>
207<script id="searchAutocompleteWrapper" type="text/x-custom-template">
208    <div class="mst-searchautocomplete__wrapper">
209        <div class="mst-searchautocomplete__results" data-bind="{
210            visible: result().noResults == false,
211            css: {
212                __all: result().urlAll && result().totalItems > 0
213            }
214        }">
215            <div data-bind="foreach: { data: result().indexes, as: 'index' }">
216                <div data-bind="visible: index.totalItems, attr: {class: 'mst-searchautocomplete__index ' + index.identifier}">
217                    <div class="mst-searchautocomplete__index-title">
218                        <span data-bind="text: index.title"></span>
219                        <span data-bind="visible: index.isShowTotals">
220                            (<span data-bind="text: index.totalItems"></span>)</span></div>
221
222                    <ul data-bind="foreach: { data: index.items, as: 'item' }">
223                        <li data-bind="
224                            template: { name: index.identifier, data: item },
225                            attr: {class: 'mst-searchautocomplete__item ' + index.identifier},
226                            event: { mouseover: $parents[1].onMouseOver, mouseout: $parents[1].onMouseOut, mousedown: $parents[1].onClick },
227                            css: {_active: $data.isActive}"></li></ul></div></div>
228
229            <div class="mst-searchautocomplete__show-all" data-bind="visible: result().urlAll && result().totalItems > 0">
230                <a data-bind="attr: { href: result().urlAll }">
231                    <span data-bind="text: result().textAll"></span></a></div></div>
232
233        <div class="mst-searchautocomplete__empty-result" data-bind="visible: result().noResults == true && !loading()">
234            <span data-bind="text: result().textEmpty"></span></div></div></script>
234<script id="popular" type="text/x-custom-template">
235    <a class="title" data-bind="text: query"></a></script>
235<script id="magento_search_query" type="text/x-custom-template">
236    <a class="title" data-bind="text: query_text, attr: {href: url}, highlight"></a> <span class="num_results" data-bind="text: num_results"></span></script>
236<script id="magento_catalog_product" type="text/x-custom-template">
237    <!-- ko if: (imageUrl && $parents[2].config.isShowImage) -->
238    <a rel="noreferrer" data-bind="attr: {href: url}">
239        <div class="mst-product-image-wrapper"><img data-bind="attr: {src: imageUrl}"/></div></a>
240    <!-- /ko -->
241
242    <div class="meta">
243        <div class="title">
244            <a rel="noreferrer" data-bind="html: name, attr: {href: url}, highlight"></a>
245
246            <!-- ko if: (sku && $parents[2].config.isShowSku) -->
247            <span class="sku" data-bind="text: sku, highlight"></span>
248            <!-- /ko --></div>
249
250        <!-- ko if: (description && $parents[2].config.isShowDescription) -->
251        <div class="description" data-bind="text: description, highlight"></div>
252        <!-- /ko -->
253
254        <!-- ko if: (rating && $parents[2].config.isShowRating) -->
255        <div>
256            <div class="rating-summary">
257                <div class="rating-result">
258                    <span data-bind="style: { width: rating + '%' }"></span></div></div></div>
259        <!-- /ko -->
260
261        <!-- ko if: (stockStatus && $parents[2].config.isShowStockStatus) -->
262        <span class="stock_status" data-bind="text: stockStatus, processStockStatus"></span>
263        <!-- /ko -->
264
265        <!-- ko if: (addToCartUrl && $parents[2].config.isShowCartButton) -->
266        <div class="to-cart">
267            <a class="action primary mst__add_to_cart" data-bind="attr: { _href: addToCartUrl }">
268                <span>Add To Cart</span></a></div>
269        <!-- /ko --></div>
270
271    <!-- ko if: (price && $parents[2].config.isShowPrice) -->
272    <div class="store">
273        <div data-bind="html: price" class="price"></div></div>
274    <!-- /ko --></script>
274<script id="magento_catalog_categoryproduct" type="text/x-custom-template">
275    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
275<script id="magento_catalog_category" type="text/x-custom-template">
276    <a class="title" data-bind="html: name, attr: {href: url}, highlight"></a></script>
276<script id="magento_cms_page" type="text/x-custom-template">
277    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
277<script id="magento_catalog_attribute" type="text/x-custom-template">
278    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
278<script id="magento_catalog_attribute_2" type="text/x-custom-template">
279    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
279<script id="magento_catalog_attribute_3" type="text/x-custom-template">
280    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
280<script id="magento_catalog_attribute_4" type="text/x-custom-template">
281    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
281<script id="magento_catalog_attribute_5" type="text/x-custom-template">
282    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
282<script id="mirasvit_kb_article" type="text/x-custom-template">
283    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
283<script id="external_wordpress_post" type="text/x-custom-template">
284    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
284<script id="amasty_blog_post" type="text/x-custom-template">
285    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
285<script id="amasty_faq_question" type="text/x-custom-template">
286    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
286<script id="magefan_blog_post" type="text/x-custom-template">
287    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
287<script id="mageplaza_blog_post" type="text/x-custom-template">
288    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
288<script id="aheadworks_blog_post" type="text/x-custom-template">
289    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
289<script id="mirasvit_blog_post" type="text/x-custom-template">
290    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
290<script id="mirasvit_gry_registry" type="text/x-custom-template">
291    <a class="title" data-bind="text: title, attr: {href: url}, highlight"></a>
292    <p data-bind="text: name, highlight"></p></script>
292<script id="ves_blog_post" type="text/x-custom-template">
293    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
293<script id="fishpig_glossary_word" type="text/x-custom-template">
294    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
294<script id="blackbird_contentmanager_content" type="text/x-custom-template">
295    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
295<script id="mirasvit_brand_page" type="text/x-custom-template">
296    <a class="title" data-bind="text: name, attr: {href: url}, highlight"></a></script>
296  <div class="page-wrapper"><div id="globale-placeholder-shipping-message" class="globale-placeholder-shipping-message"></div><div class="page-topbar"><div class="container2"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><div class="slide"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/icons/engraving.svg" alt="Same Day Dispatch"/> Same Day Dispatch on Engraved Pens</div>
297<div class="slide"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/icons/delivery.png" alt="Delivery"/>Order by 3pm for Same Day Dispatch</div>
298<div class="slide"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/feefo.svg" alt="Feefo Reviews"/></div></div></div>
298<script type="text/x-magento-init">
299    {
300        "*" : { "Magento_Theme/js/topbar" : {} }
301    }</script>
301</div><header class="page-header"><div class="page-header__content container2"><span data-action="toggle-navigation" class="toggle-navigation"><span>Toggle Nav</span> <b></b> <b></b> <b></b></span> <span data-action="toggle-nav" class="action nav-toggle"><span>Toggle Nav</span></span> <a class="logo" href="https://www.penheaven.co.uk/" title="Pen&#x20;Heaven" aria-label="store logo"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/logo.svg" title="Pen&#x20;Heaven" alt="Pen&#x20;Heaven" width="206" height="42" /></a>   <nav class="primary-navigation"><div class="primary-navigation__header mobile-only"><span data-action="toggle-navigation"><svg width="17" height="17" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22 0.879419L21.1185 0L10.999 10.1195L0.879419 0L0 0.879419L10.1195 10.999L0 21.1185L0.879419 22L10.999 11.8805L21.1185 22L22 21.1185L11.8805 10.999L22 0.879419Z" fill="black"/></svg></span></div><ul class="primary-navigation__list">  <li class="primary-navigation__item  primary-navigation__item--parent">   <a href="https://www.penheaven.co.uk/pen-brands" class="primary-navigation__link"  data-menu="menu-2">Brands</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level1" data-menu="menu-2">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-5">Featured Brands</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-5">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/caran-d-ache-pens" class="primary-navigation__inner-link"  data-menu="menu-8">Caran d'Ache</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/cross-pens" class="primary-navigation__inner-link"  data-menu="menu-11">Cross</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/hugo-boss-pens" class="primary-navigation__inner-link"  data-menu="menu-14">Hugo Boss</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/kaweco-pens" class="primary-navigation__inner-link"  data-menu="menu-17">Kaweco</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/lamy-pens" class="primary-navigation__inner-link"  data-menu="menu-20">LAMY</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/parker-pens" class="primary-navigation__inner-link"  data-menu="menu-26">Parker</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/sheaffer-pens" class="primary-navigation__inner-link"  data-menu="menu-23">Sheaffer</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/twsbi" class="primary-navigation__inner-link"  data-menu="menu-29">TWSBI</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/waterman-pens" class="primary-navigation__inner-link"  data-menu="menu-32">Waterman</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2 has-arrow">   <a href="https://www.penheaven.co.uk/pen-brands" class="primary-navigation__inner-link"  data-menu="menu-35">View All Brands</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-38">Best Selling Ranges</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-38">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/cross-pens/cross-bailey" data-menu="menu-41" class="primary-navigation__inner-link">Cross Bailey</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/kaweco-pens/kaweco-sport" data-menu="menu-47" class="primary-navigation__inner-link">
301Kaweco Sport</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/lamy-pens/lamy-al-star" data-menu="menu-50" class="primary-navigation__inner-link">LAMY AL-star</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/lamy-pens/lamy-safari" data-menu="menu-53" class="primary-navigation__inner-link">LAMY safari</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/parker-pens/parker-IM" data-menu="menu-56" class="primary-navigation__inner-link">Parker IM</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/parker-pens/parker-jotter" data-menu="menu-59" class="primary-navigation__inner-link">Parker Jotter</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/parker-pens/parker-sonnet" data-menu="menu-62" class="primary-navigation__inner-link">Parker Sonnet</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/waterman-pens/waterman-expert" data-menu="menu-451" class="primary-navigation__inner-link">Waterman Expert</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/waterman-pens/waterman-hemisphere" data-menu="menu-65" class="primary-navigation__inner-link">Waterman Hemisphere</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-68">Best Brand For...</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-68">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/art-design" class="primary-navigation__inner-link"  data-menu="menu-71">Art & Design</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/distinguished-classics" class="primary-navigation__inner-link"  data-menu="menu-74">Distinguished Classics</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/fashion-forward" class="primary-navigation__inner-link"  data-menu="menu-77">Fashion Forward</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/italian-luxury" class="primary-navigation__inner-link"  data-menu="menu-80">Italian Luxury</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/made-by-h
301and" class="primary-navigation__inner-link"  data-menu="menu-83">Made By Hand</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/modern-minimalist" class="primary-navigation__inner-link"  data-menu="menu-86">Modern & Minimalist</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/new-writers" class="primary-navigation__inner-link"  data-menu="menu-89">New Writers </a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/standout-style" class="primary-navigation__inner-link"  data-menu="menu-92">Standout Style</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/best-brands-for/travel-companions" class="primary-navigation__inner-link"  data-menu="menu-95">Travel Companions</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 image-column">   <a href="/pen-brands/visconti-pens/visconti-michelangelo" data-menu="menu-98" class="primary-navigation__inner-link"><img src="https://www.penheaven.co.uk/media/snowdog/menu/node/v/i/visconti-michelangelo.jpg" alt="New&#x20;Visconti&#x20;Michelangelo&#x20;collection&#x20;" loading="lazy" /></a>  <a class="image-link-title"  href="/pen-brands/visconti-pens/visconti-michelangelo" data-menu="menu-98" class="primary-navigation__inner-link">New Visconti Michelangelo Collection </a> </li> </ul></li>   <li class="primary-navigation__item  primary-navigation__item--parent">   <a href="https://www.penheaven.co.uk/pens-by-type" class="primary-navigation__link"  data-menu="menu-101">Pens</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level1" data-menu="menu-101">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-119">Writing Type</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-119">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/fountain-pens" class="primary-navigation__inner-link"  data-menu="menu-122">Fountain Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/ballpoint-pens" class="primary-navigation__inner-link"  data-menu="menu-125">Ballpoint Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/rollerball-pens" class="primary-navigation__inner-link"  data-menu="menu-128">Rollerball Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/pen-sets" class="primary-navigation__inner-link"  data-menu="menu-131">Pen Sets</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/pencils" class="primary-navigation__inner-link"  data-menu="menu-134">Pencils</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/feather-quills-dip-pens" class="primary-navigation__inner-link"  data-menu="menu-137">Feather Quills & Dip Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/multifunction-pens" class="primary-navigation__inner-link"  data-menu="menu-140">Multifunction Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-type/calligraphy-pens" class="primary-navigation__inner-link"  data-menu="menu-143">Calligraphy Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2 has-arrow">   <a href="https://www.penheaven.co.uk/pens-by-type/view-all" class="primary-navigation__inner-link"  data-menu="menu-146">View All Pens</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-149">Price</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-149">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pens-by-type/view-all?price=-25" data-menu="menu-152" class="primary-navigation__inner-link">Under £25</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pens-by-type/view-all?price=25-50" data-menu="menu-155" class="primary-navigation__inner-link">£25 - £50</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pens-by-type/view-all?price=50-100" data-menu="menu-158" class="primary-navigation__inner-link">£50 - £100</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pens-by-type/view-all?price=100-200" data-menu="menu-161" class="primary-navigation__inner-link">£100 - £200</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pens-by-type/view-all?price=200-500" data-menu="menu-164" class="primary-navigation__inner-link">£200 - £500</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pens-by-type/view-all?price=500-" data-menu="menu-167" class="primary-navigation__inner-link">£500 +</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/special-offers-2" class="primary-navigation__inner-link"  data-menu="menu-170">Special Offers</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-173">Feature</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-173">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/home-page-featured/new-in" class="primary-navigation__inner-link"  data-menu="menu-197">New In</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" class="primary-navigation__inner-link"  data-menu="menu-176">Engraved Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/limited-editions" class="primary-navigation__inner-link"  data-menu="menu-188">Limited Editions</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/left-handers" class="primary-navigation__inner-link"  data-menu="menu-179">For Left Handers</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/extra-fine-nibs" class="primary-navigation__inner-link"  data-menu="menu-182">Extra Fine Nibs</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/ergonomic" class="primary-navigation__inner-link"  data-menu="menu-185">Ergonomic</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/piston-filler" class="primary-navigation__inner-link"  data-menu="menu-194">Piston Filler</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/stub-italic-nibs" class="primary-navigation__inner-link"  data-menu="menu-191">Stub & Italic Nibs</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 image-column">   <a href="/twsbi-eco-white-cherry-blossom-fountain-pen" data-menu="menu-200" class="primary-navigation__inner-link"><img src="https://www.penheaven.co.uk/media/snowdog/menu/node/t/w/twsbi-eco-white-cherry-blossom-fountain-pen-mega-menu_1.jpg" alt="TWSBI&#x20;ECO&#x20;White&#x20;Cherry&#x20;Blossom" loading="lazy" /></a>  <a class="image-link-title"  href="/twsbi-eco-white-cherry-blossom-fountain-pen" data-menu="menu-200" class="primary-navigation__inner-link">New In: TWSBI ECO White Cherry Blossom</a> </li> </ul></li>   <li class="primary-navigation__item  primary-navigation__item--parent">   <a href="https://www.penheaven.co.uk/gift-ideas" class="primary-navigation__link"  data-menu="menu-107">Gifts</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level1" data-menu="menu-107">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-257">By Recipient</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-257">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/gifts-for-him" class="primary-navigation__inner-link"  data-menu="menu-260">For Him</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/gifts-for-her" class="primary-navigation__inner-link"  data-menu="menu-263">For Her</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/children-s-pens" class="primary-navigation__inner-link"  data-menu="menu-446">For Kids</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/graduation-gifts" class="primary-navigation__inner-link"  data-menu="menu-269">For a Graduate</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/gifts-for-teachers" class="primary-navigation__inner-link"  data-menu="menu-272">For Teachers </a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/pen-connoisseurs" class="primary-navigation__inner-link"  data-menu="menu-284">For Pen Connoisseurs</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/stationery" class="primary-navigation__inner-link"  data-menu="menu-278">For Stationery Lovers</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/corporate-gifts" class="primary-navigation__inner-link"  data-menu="menu-281">Corporate Gifts</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-287">Inspiration</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-287">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/gift-sets" class="primary-navigation__inner-link"  data-menu="menu-293">
301Gift Sets</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/gift-hampers" class="primary-navigation__inner-link"  data-menu="menu-311">Gift Hampers</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/home-page-featured/seasonal-selections" class="primary-navigation__inner-link"  data-menu="menu-296">Autumn Collection</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/journal-pen-set" class="primary-navigation__inner-link"  data-menu="menu-305">Journal and Pen Sets</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/mindful-writing-wellness" class="primary-navigation__inner-link"  data-menu="menu-302">Wellness Gifts </a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/bestselling-pens-journal-gifts" class="primary-navigation__inner-link"  data-menu="menu-299">Bestselling Gifts</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/a-little-something" class="primary-navigation__inner-link"  data-menu="menu-290">A Little Something</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/sterling-silver-pens" class="primary-navigation__inner-link"  data-menu="menu-308">Sterling Silver Pens</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-314">Personalised</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-314">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" class="primary-navigation__inner-link"  data-menu="menu-449">Engraved Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/artamis-hip-flasks" class="primary-navigation__inner-link"  data-menu="menu-944">Engraved Hip Flasks</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/zippo-lighters-personalised-gift-ideas" class="primary-navigation__inner-link"  data-menu="menu-916">Engraved Zippo Lighters</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/stationery/leather-journals?personalisation_1=18921" data-menu="menu-320" class="primary-navigation__inner-link">Embossed Leather Journals</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/stationery/notebooks?personalisation_1=18921" data-menu="menu-323" class="primary-navigation__inner-link">Embossed Notebooks</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/gift-ideas/leather-wallets-personalised" class="primary-navigation__inner-link"  data-menu="menu-326">Embossed Wallets</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 image-column">   <a href="https://www.penheaven.co.uk/gift-ideas/gift-hampers" class="image-link"><img src="https://www.penheaven.co.uk/media/snowdog/menu/node/t/h/the-sophisticated-hamper-mega-menu.jpg" alt="Exclusive&#x20;Gift&#x20;Hampers&#x20;from&#x20;Pen&#x20;Heaven" loading="lazy" /></a>  <a href="https://www.penheaven.co.uk/gift-ideas/gift-hampers" class="primary-navigation__inner-link image-link-title"  data-menu="menu-329">Exclusive Gift Hampers from Pen Heaven</a> </li> </ul></li>   <li class="primary-navigation__item  primary-navigation__item--parent">   <a href="https://www.penheaven.co.uk/stationery" class="primary-navigation__link"  data-menu="menu-104">Stationery</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level1" data-menu="menu-104">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-203">Books</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-203">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/leather-journals" class="primary-navigation__inner-link"  data-menu="menu-209">Leather Journals</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/notebooks" class="primary-navigation__inner-link"  data-menu="menu-206">Notebooks</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/leather-diaries" class="primary-navigation__inner-link"  data-menu="menu-215">Diaries & Planners</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/personal-organisers" class="primary-navigation__inner-link"  data-menu="menu-212">Organisers</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/leather-photo-albums" class="primary-navigation__inner-link"  data-menu="menu-218">Photo Albums</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/journal-pen-set" class="primary-navigation__inner-link"  data-menu="menu-221">Journal & Pen Sets</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/stationery-sets" class="primary-navigation__inner-link"  data-menu="menu-910">Stationery Sets</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-224">Accessories</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-224">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/pen-cases" class="primary-navigation__inner-link"  data-menu="menu-227">Pen Cases</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/pencil-cases" class="primary-navigation__inner-link"  data-menu="menu-456">Pencil Cases</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/writing-paper-envelopes" class="primary-navigation__inner-link"  data-menu="menu-230">Writing Paper</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/desk-accessories" class="primary-navigation__inner-link"  data-menu="menu-233">Desk Accessories</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/colour-pencil-sets" class="primary-navigation__inner-link"  data-menu="menu-453">Colour Pencil Sets </a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/pencil-sharpeners" class="primary-navigation__inner-link"  data-menu="menu-459">Pencil Sharpeners </a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-236">Refills</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-236">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/diary-refills" class="primary-navigation__inner-link"  data-menu="menu-239">Diary Refills</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/filofax/filofax-refills-inserts" class="primary-navigation__inner-link"  data-menu="menu-242">Filofax Inserts</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/journal-refills" class="primary-navigation__inner-link"  data-menu="menu-245">Journal Refills</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/refills-ink/journals-diaries-organisers-refills-inserts?manufacturer=1120" data-menu="menu-248" class="primary-navigation__inner-link">Stamford Notebook</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/refills-ink/journals-diaries-organisers-refills-inserts?manufacturer=18784" data-menu="menu-251" class="primary-navigation__inner-link">TRAVELER'S COMPANY</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 image-column">   <a href="/pen-brands/letts-diaries" data-menu="menu-254" class="primary-navigation__inner-link"><img src="https://www.penheaven.co.uk/media/snowdog/menu/node/l/e/letts-2027-megamenu.jpg" alt="New&#x20;In&#x20;-&#x20;2027&#x20;Letts&#x20;Diaries" loading="lazy" /></a>  <a class="image-link-title"  href="/pen-brands/letts-diaries" data-menu="menu-254" class="primary-navigation__inner-link">New In, 2027 Letts Diaries</a> </li> </ul></li>   <li class="primary-navigation__item  primary-navigation__item--parent">   <a href="https://www.penheaven.co.uk/refills-ink" class="primary-navigation__link"  data-menu="menu-110">Refills</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level1" data-menu="menu-110">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-332">Fountain Pens</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-332">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/ink-bottles" class="primary-navigation__inner-link"  data-menu="menu-335">Ink Bottles</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/ink-cartridges" class="primary-navigation__inner-link"  data-menu="menu-338">Ink Cartridges</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/fountain-pen-converters" class="primary-navigation__inner-link"  data-menu="menu-341">Ink Converters</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/fountain-pen-nibs" class="primary-navigation__inner-link"  data-menu="menu-344">Fountain Pen Nibs</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-347">Other Writing Types</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-347">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/ballpoint-refills" class="primary-navigation__inner-link"  data-menu="menu-350">Ballpoint Refills</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/rollerball-refills" class="primary-navigation__inner-link"  data-menu="menu-353">Rollerball Refills</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/pencil-leads" class="primary-navigation__inner-link"  data-menu="menu-356">Pencil Leads</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/pencil-erasers" class="primary-navigation__inner-link"  data-menu="menu-359">Erasers</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-362">Paper</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-362">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/diary-refills" class="primary-navigation__inner-link"  data-menu="menu-365">Diary Refills</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/filofax/filofax-refills-inserts" class="primary-navigation__inner-link"  data-menu="menu-368">Filofax Inserts</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/refills-ink/journal-refills" class="primary-navigation__inner-link"  data-menu="menu-371">Journal Refills</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/refills-ink/journals-diaries-organisers-refills-inserts?manufacturer=1120" data-menu="menu-374" class="primary-navigation__inner-link">Stamford Notebook</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/refills-ink/journals-diaries-organisers-refills-inserts?manufacturer=18784" data-menu="menu-377" class="primary-navigation__inner-link">TRAVELER'S COMPANY</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 image-column">   <a href="https://www.penheaven.co.uk/pen-brands/jacques-herbin-inks" class="image-link"><img src="https://www.penheaven.co.uk/media/snowdog/menu/node/j/a/jacques-herbin-mega-menu.jpg" alt="Jacques&#x20;Herbin&#x20;Inks.&#x20;Pure&#x20;ink-spiration" loading="lazy" /></a>  <a href="https://www.penheaven.co.uk/pen-brands/jacques-herbin-inks" class="primary-navigation__inner-link image-link-title"  data-menu="menu-380">Jacques Herbin Inks. Pure ink-spiration</a> </li> </ul></li>   <li class="primary-navigation__item ">   <a href="https://www.penheaven.co.uk/special-offers-2" class="primary-navigation__link"  data-menu="menu-113">Sale</a> </li>   <li class="primary-navigation__item  primary-navigation__item--parent gold-highlight">   <a  href="/personalisation" data-menu="menu-116" class="primary-navigation__link">Personalisation</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level1" data-menu="menu-116">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-383">Engraved</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-383">   <li  class="primary-navigation__inner-item primary-naviga
301tion__inner-item--level2">   <a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" class="primary-navigation__inner-link"  data-menu="menu-386">Pens</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/gift-ideas/gift-sets?personalisation_1=18927" data-menu="menu-389" class="primary-navigation__inner-link">Gift Sets</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/artamis-hip-flasks" class="primary-navigation__inner-link"  data-menu="menu-947">Hip Flasks</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/pen-brands/zippo-lighters-personalised-gift-ideas" class="primary-navigation__inner-link"  data-menu="menu-919">Zippo Lighters</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pen-brands/pularys-card-holders?personalisation_1=18927" data-menu="menu-931" class="primary-navigation__inner-link">Credit Card Holders</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/pens-by-feature/engraved-pens?price=0.00-25.00&price-ranges=1" data-menu="menu-392" class="primary-navigation__inner-link">Great Value</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/gift-ideas/gifts-for-him?personalisation_1=18927" data-menu="menu-398" class="primary-navigation__inner-link">For Him</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/gift-ideas/gifts-for-her?personalisation_1=18927" data-menu="menu-401" class="primary-navigation__inner-link">For Her</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/gift-ideas/hot-sellers?personalisation_1=18927" data-menu="menu-395" class="primary-navigation__inner-link">Bestsellers</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-404">Embossed</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-404">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/stationery/leather-journals?personalisation_1=18921" data-menu="menu-410" class="primary-navigation__inner-link">Leather Journals</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/stationery/notebooks?personalisation_1=18921" data-menu="menu-413" class="primary-navigation__inner-link">Notebooks</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/stationery/pen-cases?personalisation_1=18921" data-menu="menu-416" class="primary-navigation__inner-link">Pen Cases</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/stationery/personal-organisers?personalisation_1=18921" data-menu="menu-419" class="primary-navigation__inner-link">Organisers</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/gift-ideas/leather-wallets-personalised" data-menu="menu-422" class="primary-navigation__inner-link">Wallets</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a href="https://www.penheaven.co.uk/stationery/leather-photo-albums" class="primary-navigation__inner-link"  data-menu="menu-425">Photo Albums</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/stationery/journal-pen-set?personalisation_1=18921" data-menu="menu-428" class="primary-navigation__inner-link">Journal & Pen Sets</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/gift-ideas/hot-sellers?personalisation_1=18921" data-menu="menu-407" class="primary-navigation__inner-link">Bestsellers</a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 primary-navigation__inner-item--parent">   <a href="#" class="primary-navigation__inner-link no-link"  data-menu="menu-434">Info</a>    <ul  class="primary-navigation__inner-list primary-navigation__inner-list--level2" data-menu="menu-434">   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/engraving" data-menu="menu-437" class="primary-navigation__inner-link">Engraving Service</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/embossing" data-menu="menu-440" class="primary-navigation__inner-link">Embossing Service</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/corporate-sales" data-menu="menu-443" class="primary-navigation__inner-link">Corporate & Logos</a> </li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level2">   <a  href="/blog/10-meaningful-engraving-ideas-for-every-occasion" data-menu="menu-935" class="primary-navigation__inner-link">Top 10 Engraving Ideas </a> </li> </ul></li>   <li  class="primary-navigation__inner-item primary-navigation__inner-item--level1 image-column">   <a href="https://www.penheaven.co.uk/gift-ideas/corporate-gifts" class="image-link"><img src="https://www.penheaven.co.uk/media/snowdog/menu/node/m/e/mega-menu-corporate-gifting.jpg" alt="" loading="lazy" /></a>  <a href="https://www.penheaven.co.uk/gift-ideas/corporate-gifts" class="primary-navigation__inner-link image-link-title"  data-menu="menu-431">Make Your Brand Stand Out with Personalised Pens</a> </li> </ul></li> </ul><div class="primary-navigation__additional mobile-only"><ul><li> <a href="https://www.penheaven.co.uk/contact/" title="Contact Us"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" fill="none"><g fill="#312E2A" clip-path="url(#a)">
301<path d="M10.36 0C4.99 0 .62 3.577.62 7.975c0 3.978 3.578 7.286 8.237 7.88V20l3.89-4.293c4.22-.875 7.353-4.009 7.353-7.732C20.1 3.577 15.731 0 10.36 0Zm2.163 15.084-.113.021-.137.152-2.762 3.047v-3.047h-.327.246c-4.575-.377-8.156-3.5-8.156-7.283 0-4.036 4.077-7.32 9.086-7.32 5.01 0 9.087 3.284 9.087 7.32 0 3.438-2.955 6.327-6.924 7.11Z"></path><path d="M15.84 6.537H5.127v.653h10.712v-.653ZM15.84 9.151H5.127v.654h10.712v-.654Z"></path></g><defs><clipPath id="a"><path fill="#fff" d="M.62 0H20.1v20H.62z"></path></clipPath></defs></svg>Contact Us</a></li><li class="international-switcher-mobile"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/uk-flag.svg" alt="UK Flag" width="21" height="21" />Delivering to United Kingdom <a href="https://www.penheaven.com" title="Visit our international Website">Change</a></li> <li class="globale-placeholder-mobile"></li></ul></div></nav>
301<script type="text/x-magento-init">
302        {
303            "*": {
304                "Snowdog_Menu/js/menu":{}
305            }
306        }</script>
306<div class="header-controls"><div class="search-dropdown"><span class="dropdown-dialog-trigger search-dropdown-trigger header-controls-dropdown__trigger"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21"><path fill="#312E2A" d="M19.7253,20.49915 L14.34615,15.11895 C16.2112715,13.4825175 17.2807191,11.1216976 17.2809,8.64045 C17.2788,3.8745 13.4043,0 8.6394,0 C3.87555,0 0,3.8745 0,8.6394 C0,13.4043 3.8745,17.2788 8.6394,17.2788 C10.4971325,17.2809975 12.3055764,16.6812528 13.79385,15.5694 L19.2234,21 L19.7253,20.49915 Z M0.7077,8.6394 C0.7077,4.26615 4.26615,0.7077 8.6394,0.7077 C13.0137,0.7077 16.5711,4.26615 16.5711,8.6394 C16.5711,13.0137 13.0137,16.5711 8.6394,16.5711 C4.26615,16.5711 0.7077,13.0137 0.7077,8.6394 Z"/></svg></span> <div id="search-dropdown-dialog" data-role="dropdownDialog" class="search-dropdown-content" style="display:none">  <div class="block block-search"><div class="block block-title"><strong>Search</strong></div><div class="block block-content"><form class="form minisearch" id="search_mini_form" action="https://www.penheaven.co.uk/catalogsearch/result/" method="get"> <div class="field search"><label class="label" for="search" data-role="minisearch-label"><span>Search</span></label> <div class="control"><input id="search" data-mage-init='{ "quickSearch": { "formSelector": "#search_mini_form", "url": "https://www.penheaven.co.uk/search/ajax/suggest/", "destinationSelector": "#search_autocomplete", "minSearchLength": "1" } }' type="text" name="q" value="" placeholder="Enter&#x20;your&#x20;search&#x20;terms" class="input-text" maxlength="128" role="combobox" aria-haspopup="false" aria-autocomplete="both" autocomplete="off" aria-expanded="false"/><div id="search_autocomplete" class="search-autocomplete"></div></div></div><div class="actions"><button type="submit" title="Search" class="action search" aria-label="Search" ><span>Search</span></button></div></form></div></div></div></div>
306<script type="text/x-magento-init">
307    {
308        "#search-dropdown-dialog" : { "Magento_Search/js/search-dropdown" : {} }
309    }</script>
309 <div data-block="contact-dropdown" class="header-controls-dropdown contact-dropdown"><span class="header-controls-dropdown__trigger contact-dropdown-trigger"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" fill="none"><g fill="#312E2A" clip-path="url(#a)"><path d="M10.36 0C4.99 0 .62 3.577.62 7.975c0 3.978 3.578 7.286 8.237 7.88V20l3.89-4.293c4.22-.875 7.353-4.009 7.353-7.732C20.1 3.577 15.731 0 10.36 0Zm2.163 15.084-.113.021-.137.152-2.762 3.047v-3.047h-.327.246c-4.575-.377-8.156-3.5-8.156-7.283 0-4.036 4.077-7.32 9.086-7.32 5.01 0 9.087 3.284 9.087 7.32 0 3.438-2.955 6.327-6.924 7.11Z"/><path d="M15.84 6.537H5.127v.653h10.712v-.653ZM15.84 9.151H5.127v.654h10.712v-.654Z"/></g><defs><clipPath id="a"><path fill="#fff" d="M.62 0H20.1v20H.62z"/></clipPath></defs></svg></span> <div class="" style="display:none" data-role="dropdownDialog" data-mage-init='{"dropdownDialog":{ "appendTo":"[data-block=contact-dropdown]", "triggerTarget":".contact-dropdown-trigger", "timeout": "1000", "closeOnMouseLeave": false, "closeOnEscape": true, "triggerClass":"active", "parentClass":"active", "bodyClass": "has-dropdown", "buttons":[]}}'><div class="contact-dropdown-content header-controls-dropdown__content"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><strong class="title">Contact Us</strong>
310<p>Our customer service team is here to answer all your questions.</p>
311<ul>
312    <li>
313        <a href="tel:+442087318610">
314            <span class="icon-phone"></span>
315            <span>0208 731 8610</span>
316        </a>
317    </li>
318    <li>
319        <a href="/cdn-cgi/l/email-protection#b6c5c3c6c6d9c4c2f6c6d3d8ded3d7c0d3d898d5d998c3dd">
320            <span class="icon-envelope"></span>
321            <span><span class="__cf_email__" data-cfemail="e5969095958a9791a595808b8d808493808bcb868acb908e">[email&#160;protected]</span></span>
322        </a>
323    </li>
324</ul>
325<p><a class="cta" href="https://www.penheaven.co.uk/contact">Fill in our contact form</a></p></div></div></div></div><div data-block="account-dropdown" class="header-controls-dropdown account-dropdown"><span class="header-controls-dropdown__trigger account-dropdown-trigger"><!-- <span class="person-icon icon-block"></span> --><svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" fill="none"><g fill="#312E2A" clip-path="url(#a)"><path d="M10.265 9.904c-2.85 0-5.167-2.222-5.167-4.952S7.416 0 10.265 0c2.85 0 5.168 2.221 5.168 4.952 0 2.73-2.318 4.952-5.168 4.952Zm0-9.26C7.786.643 5.77 2.575 5.77 4.951c0 2.375 2.017 4.308 4.496 4.308 2.48 0 4.497-1.933 4.497-4.308 0-2.376-2.017-4.309-4.497-4.309ZM20.266 20h-.671c0-4.29-4.186-7.781-9.33-7.781-5.143 0-9.328 3.49-9.328 7.781H.266c0-4.646 4.486-8.424 10-8.424s10 3.778 10 8.424Z"/></g><defs><clipPath id="a"><path fill="#fff" d="M.266 0h20v20h-20z"/></clipPath></defs></svg></span> <div class="" style="display:none" data-role="dropdownDialog" data-mage-init='{"dropdownDialog":{ "appendTo":"[data-block=account-dropdown]", "triggerTarget":".account-dropdown-trigger", "timeout": "2000", "closeOnMouseLeave": false, "closeOnEscape": true, "triggerClass":"active", "parentClass":"active", "bodyClass": "has-dropdown", "buttons":[]}}'><div class="account-dropdown-content header-controls-dropdown__content"><ul id="customer-account-links" class="links"><li><a href="https://www.penheaven.co.uk/customer/account/" id="idbXTDicTj" >My Account</a></li><li><a href="https://www.penheaven.co.uk/customer/account/create/" id="idJwI7b3fT" >Create an Account</a></li> <li class="link authorization-link"><div class="link authorization-wrapper mobile-only"><svg xmlns="http://www.w3.org/2000/svg" width="21" height="20" fill="none"><g fill="#312E2A" clip-path="url(#a)"><path d="M10.265 9.904c-2.85 0-5.167-2.222-5.167-4.952S7.416 0 10.265 0c2.85 0 5.168 2.221 5.168 4.952 0 2.73-2.318 4.952-5.168 4.952Zm0-9.26C7.786.643 5.77 2.575 5.77 4.951c0 2.375 2.017 4.308 4.496 4.308 2.48 0 4.497-1.933 4.497-4.308 0-2.376-2.017-4.309-4.497-4.309ZM20.266 20h-.671c0-4.29-4.186-7.781-9.33-7.781-5.143 0-9.328 3.49-9.328 7.781H.266c0-4.646 4.486-8.424 10-8.424s10 3.778 10 8.424Z"></path></g><defs><clipPath id="a"><path fill="#fff" d="M.266 0h20v20h-20z"></path></clipPath></defs></svg> <a href="https://www.penheaven.co.uk/customer/account/login/">Sign In / Create a new account</a></div><a href="https://www.penheaven.co.uk/customer/account/login/" class="desktop-only">Sign In</a></li>
vendor: 109 bytes, line 325
325 <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
325<script>
326    require([
327        'jquery',
328        'mage/mage',
329        'domReady!'
330    ], function ($) {
331        'use strict';
332
333        
334        var authClone = $('.authorization-link').clone();
335        $('.primary-navigation .primary-navigation__additional > ul').prepend(authClone);
336    });</script>
336</ul></div></div></div> <div class="cart-wrapper cart-icon-wrap"><span class="header-control-target" data-target=""><div class="action showcart header-controls-dropdown__trigger" data-bind="scope: 'minicart_content'"><svg xmlns="http://www.w3.org/2000/svg" width="23" height="22" viewBox="0 0 23 22"><g fill="#312E2A"><path d="M22.29216,22.00011 L0.2921875,22.00011 L0.2921875,5.315508 L22.29216,5.315508 L22.29216,22.00011 Z M1.0304426,21.26179 L21.55395,21.26179 L21.55395,6.053762 L1.0304426,6.053762 L1.0304426,21.26179 Z"/><path d="M18.30554,8.342279 L17.56733,8.342279 C17.56733,4.148991 14.75166,0.7382551 11.29216,0.7382551 C7.832704,0.7382551 5.017001,4.148991 5.017001,8.342279 L4.278747,8.342279 C4.278747,3.742959 7.425187,0 11.29216,0 C15.1591,0 18.30554,3.742959 18.30554,8.342279 Z"/></g></svg><span class="counter qty empty" data-bind="css: { empty: !!getCartParam('summary_count') == false }, blockLoader: isLoading"><span class="counter-number"><!-- ko text: getCartParam('summary_count') --><!-- /ko --></span></span></div></span> <span data-bind="i18n: 'Basket'" class="cart-total-wrapp action showcart"></span></div><div data-block="international-dropdown" class="header-controls-dropdown international-dropdown"><span class="header-controls-dropdown__trigger international-dropdown-trigger"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/uk-flag.svg" alt="UK Flag" width="21" height="21" /></span> <div class="" style="display:none" data-role="dropdownDialog" data-mage-init='{"dropdownDialog":{ "appendTo":"[data-block=international-dropdown]", "triggerTarget":".international-dropdown-trigger", "timeout": "1000", "closeOnMouseLeave": false, "closeOnEscape": true, "triggerClass":"active", "parentClass":"active", "bodyClass": "has-dropdown", "buttons":[]}}'><div class="international-dropdown-content header-controls-dropdown__content"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><strong class="title">We Deliver Anywhere in the world</strong>
337<a class="cta" href="https://www.penheaven.com">Visit our international Website</a>
338<ul>
339    <li>Great international shipping rates and options</li>
340    <li>Prepay all duties and taxes</li>
341</ul>
342<small>Changing location will remove items from your cart</small></div></div></div></div><div class="globale-placeholder"></div></div> <div class="minicart-wrapper" style="overflow: auto;"><div data-block="minicart" class="minicart-wrap"> <div class="block block-minicart empty" data-role="dropdownDialog" data-mage-init='{"dropdownDialog":{ "appendTo":"[data-block=minicart]", "timeout": "2000", "closeOnMouseLeave": false, "closeOnEscape": true, "triggerClass":"active", "parentClass":"active", "buttons":[]}}'><div id="minicart-content-wrapper" data-bind="scope: 'minicart_content'"><div class="minicart-header"><div class="close-basket"><span class="close"></span></div><div style="display: none;" class="mini-cart-product-add">A product has been added to the basket</div></div><!-- ko template: getTemplate() --><!-- /ko --></div></div> 
342<script>
343            window.checkout = {"shoppingCartUrl":"https:\/\/www.penheaven.co.uk\/checkout\/cart\/","checkoutUrl":"https:\/\/www.penheaven.co.uk\/checkout\/","updateItemQtyUrl":"https:\/\/www.penheaven.co.uk\/checkout\/sidebar\/updateItemQty\/","removeItemUrl":"https:\/\/www.penheaven.co.uk\/checkout\/sidebar\/removeItem\/","imageTemplate":"Magento_Catalog\/product\/image_with_borders","baseUrl":"https:\/\/www.penheaven.co.uk\/","minicartMaxItemsVisible":5,"websiteId":"1","maxItemsToDisplay":10,"storeId":"1","storeGroupId":"1","customerLoginUrl":"https:\/\/www.penheaven.co.uk\/customer\/account\/login\/","isRedirectRequired":false,"autocomplete":"off","captcha":{"user_login":{"isCaseSensitive":false,"imageHeight":50,"imageSrc":"","refreshUrl":"https:\/\/www.penheaven.co.uk\/captcha\/refresh\/","isRequired":false,"timestamp":1790942217}}};</script>
343<script type="text/x-magento-init">
344    {
345        "[data-block='minicart']": {
346            "Magento_Ui/js/core/app": {"components":{"minicart_content":{"children":{"subtotal.container":{"children":{"subtotal":{"children":{"subtotal.totals":{"config":{"display_cart_subtotal_incl_tax":1,"display_cart_subtotal_excl_tax":0,"template":"Magento_Tax\/checkout\/minicart\/subtotal\/totals"},"component":"Magento_Tax\/js\/view\/checkout\/minicart\/subtotal\/totals","children":{"subtotal.totals.msrp":{"component":"Magento_Msrp\/js\/view\/checkout\/minicart\/subtotal\/totals","config":{"displayArea":"minicart-subtotal-hidden","template":"Magento_Msrp\/checkout\/minicart\/subtotal\/totals"}}}}},"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/subtotal"}}},"component":"uiComponent","config":{"displayArea":"subtotalContainer"}},"item.renderer":{"component":"Magento_Checkout\/js\/view\/cart-item-renderer","config":{"displayArea":"defaultRenderer","template":"BestResponseMedia_CustomCartPage\/minicart\/item\/default"},"children":{"item.image":{"component":"Magento_Catalog\/js\/view\/image","config":{"template":"Magento_Catalog\/product\/image","displayArea":"itemImage"}},"checkout.cart.item.price.sidebar":{"component":"uiComponent","config":{"template":"Magento_Checkout\/minicart\/item\/price","displayArea":"priceSidebar"}}}},"extra_info":{"component":"uiComponent","config":{"displayArea":"extraInfo"}},"promotion":{"component":"uiComponent","config":{"displayArea":"promotion"}}},"config":{"itemRenderer":{"default":"defaultRenderer","simple":"defaultRenderer","virtual":"defaultRenderer"},"template":"Magento_Checkout\/minicart\/content"},"component":"Magento_Checkout\/js\/view\/minicart"}},"types":[]}        },
347        "*": {
348            "Magento_Ui/js/block-loader": "https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images/loader-1.gif"
349        }
350    }</script>
350</div><div id="header-cart-over"></div></div>
350<script>
351    require(['domReady!'], function(){
352        var getMinicartIcon = document.querySelector('.cart-wrapper');
353
354        getMinicartIcon.addEventListener('click', function() {
355            window.location.href = '/checkout/cart/';
356        });
357    });</script>
357</div></header><div class="page-header__overlay"></div><main id="maincontent" class="page-main"> <a id="contentarea" tabindex="-1"></a>  <div class="page-title-wrapper"><h1 class="page-title"  ><span class="base" data-ui-id="page-title-wrapper" >Personalising Your Pen: 10 Meaningful Engraving Ideas for Every Occasion</span></h1></div><div class="page messages"> <div data-placeholder="messages"></div></div><div class="columns"> <div data-bind="scope: 'messages'"><!-- ko if: cookieMessages && cookieMessages.length > 0 --><div aria-atomic="true" role="alert" data-bind="foreach: { data: cookieMessages, as: 'message' }" class="messages"><div data-bind="attr: { class: 'message-' + message.type + ' ' + message.type + ' message', 'data-ui-id': 'message-' + message.type }"><div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div></div></div><!-- /ko --><!-- ko if: messages().messages && messages().messages.length > 0 --><div aria-atomic="true" role="alert" class="messages" data-bind="foreach: { data: messages().messages, as: 'message' }"><div data-bind="attr: { class: 'message-' + message.type + ' ' + message.type + ' message', 'data-ui-id': 'message-' + message.type }"><div data-bind="html: $parent.prepareMessageForHtml(message.text)"></div></div></div><!-- /ko --></div>
357<script type="text/x-magento-init">
358    {
359        "*": {
360            "Magento_Ui/js/core/app": {
361                "components": {
362                        "messages": {
363                            "component": "Magento_Theme/js/view/messages"
364                        }
365                    }
366                }
367            }
368    }</script>
368<div class="column main"><input name="form_key" type="hidden" value="LtIkJreu47amAUWl" /> 
368<script type="text/x-magento-init">
369    {
370        "*": {
371            "Magento_Customer/js/section-config": {
372                "sections": {"stores\/store\/switch":["*"],"stores\/store\/switchrequest":["*"],"directory\/currency\/switch":["*"],"*":["messages"],"customer\/account\/logout":["*","recently_viewed_product","recently_compared_product","persistent"],"customer\/account\/loginpost":["*"],"customer\/account\/createpost":["*"],"customer\/account\/editpost":["*"],"customer\/ajax\/login":["checkout-data","cart","captcha"],"catalog\/product_compare\/add":["compare-products"],"catalog\/product_compare\/remove":["compare-products"],"catalog\/product_compare\/clear":["compare-products"],"sales\/guest\/reorder":["cart"],"sales\/order\/reorder":["cart"],"checkout\/cart\/add":["cart","directory-data"],"checkout\/cart\/delete":["cart"],"checkout\/cart\/updatepost":["cart"],"checkout\/cart\/updateitemoptions":["cart"],"checkout\/cart\/couponpost":["cart"],"checkout\/cart\/estimatepost":["cart"],"checkout\/cart\/estimateupdatepost":["cart"],"checkout\/onepage\/saveorder":["cart","checkout-data","last-ordered-items"],"checkout\/sidebar\/removeitem":["cart"],"checkout\/sidebar\/updateitemqty":["cart"],"rest\/*\/v1\/carts\/*\/payment-information":["cart","last-ordered-items","captcha","instant-purchase"],"rest\/*\/v1\/guest-carts\/*\/payment-information":["cart","captcha"],"rest\/*\/v1\/guest-carts\/*\/selected-payment-method":["cart","checkout-data"],"rest\/*\/v1\/carts\/*\/selected-payment-method":["cart","checkout-data","instant-purchase"],"wishlist\/index\/add":["wishlist"],"wishlist\/index\/remove":["wishlist"],"wishlist\/index\/updateitemoptions":["wishlist"],"wishlist\/index\/update":["wishlist"],"wishlist\/index\/cart":["wishlist","cart"],"wishlist\/index\/fromcart":["wishlist","cart"],"wishlist\/index\/allcart":["wishlist","cart"],"wishlist\/shared\/allcart":["wishlist","cart"],"wishlist\/shared\/cart":["cart"],"giftregistry\/index\/cart":["cart"],"giftregistry\/view\/addtocart":["cart"],"customer_order\/cart\/updatefaileditemoptions":["cart"],"checkout\/cart\/updatefaileditemoptions":["cart"],"customer_order\/cart\/advancedadd":["cart"],"checkout\/cart\/advancedadd":["cart"],"checkout\/cart\/removeallfailed":["cart"],"checkout\/cart\/removefailed":["cart"],"customer_order\/cart\/addfaileditems":["cart"],"checkout\/cart\/addfaileditems":["cart"],"customer_order\/sku\/uploadfile":["cart"],"multishipping\/checkout\/overviewpost":["cart"],"customer\/address\/*":["instant-purchase"],"customer\/account\/*":["instant-purchase"],"vault\/cards\/deleteaction":["instant-purchase"],"wishlist\/index\/copyitem":["wishlist"],"wishlist\/index\/copyitems":["wishlist"],"wishlist\/index\/deletewishlist":["wishlist","multiplewishlist"],"wishlist\/index\/createwishlist":["multiplewishlist"],"wishlist\/index\/editwishlist":["multiplewishlist"],"wishlist\/index\/moveitem":["wishlist"],"wishlist\/index\/moveitems":["wishlist"],"wishlist\/search\/addtocart":["cart","wishlist"],"paypal\/express\/placeorder":["cart","checkout-data"],"paypal\/payflowexpress\/placeorder":["cart","checkout-data"],"paypal\/express\/onauthorization":["cart","checkout-data"],"persistent\/index\/unsetcookie":["persistent"],"review\/product\/post":["review"]},
373                "clientSideSections": ["checkout-data","cart-data"],
374                "baseUrls": ["https:\/\/www.penheaven.co.uk\/"],
375                "sectionNames": ["messages","customer","compare-products","last-ordered-items","cart","directory-data","captcha","wishlist","instant-purchase","loggedAsCustomer","multiplewishlist","persistent","review","recently_viewed_product","recently_compared_product","product_data_storage","paypal-billing-agreement"]            }
376        }
377    }</script>
377 
377<script type="text/x-magento-init">
378    {
379        "*": {
380            "Magento_Customer/js/customer-data": {
381                "sectionLoadUrl": "https\u003A\u002F\u002Fwww.penheaven.co.uk\u002Fcustomer\u002Fsection\u002Fload\u002F",
382                "expirableSectionLifetime": 60,
383                "expirableSectionNames": ["cart","persistent"],
384                "cookieLifeTime": "86400",
385                "updateSessionUrl": "https\u003A\u002F\u002Fwww.penheaven.co.uk\u002Fcustomer\u002Faccount\u002FupdateSession\u002F"
386            }
387        }
388    }</script>
388 
388<script type="text/x-magento-init">
389    {
390        "*": {
391            "Magento_Customer/js/invalidation-processor": {
392                "invalidationRules": {
393                    "website-rule": {
394                        "Magento_Customer/js/invalidation-rules/website-rule": {
395                            "scopeConfig": {
396                                "websiteId": "1"
397                            }
398                        }
399                    }
400                }
401            }
402        }
403    }</script>
403 
403<script type="text/x-magento-init">
404    {
405        "body": {
406            "pageCache": {"url":"https:\/\/www.penheaven.co.uk\/page_cache\/block\/render\/id\/1316\/","handles":["default","mpblog_post_view"],"originalRequest":{"route":"mpblog","controller":"post","action":"view","uri":"\/blog\/10-meaningful-engraving-ideas-for-every-occasion"},"versionCookieName":"private_content_version"}        }
407    }</script>
407 <div id="monkey_campaign" style="display:none;" data-mage-init='{"campaigncatcher":{"checkCampaignUrl": "https://www.penheaven.co.uk/mailchimp/campaign/check/"}}'></div> <div class="mp-blog-view"><div class="mpcss post-view" id="mpblog-list-container"><div class="post-view-image col-xs-12"> <img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/b/l/blog-hero-engraving-ideas-2025.jpg" alt="Personalising Your Pen: 10 Meaningful Engraving Ideas for Every Occasion"/><h1 class="post-view-title">Personalising Your Pen: 10 Meaningful Engraving Ideas for Every Occasion</h1></div><div class="post-view-content"><p class="post-view-title-in-content"><strong>Personalising Your Pen: 10 Meaningful Engraving Ideas for Every Occasion</strong></p><div class="post-post_content col-xs-12"><p class="MsoNormal" style="text-align: center;">There’s something undeniably special about a <strong><a title="personalised pen" href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener">personalised pen</a>.</strong> Every time the recipient holds their gift in their hands they will see those treasured words, moments or names you added to remind them of you. If you're thinking about giving a meaningful gift with a message etched into its surface it truly has the power to elevate any occasion.<span style="mso-spacerun: yes;">  </span>Here are 10 engraving ideas that can turn a beautiful writing instrument into something timeless and thoughtful.</p>
408<p class="MsoNormal" style="text-align: center;"> </p>
409<p class="MsoNormal" style="text-align: center;"> </p>
410<p class="MsoNormal"><u>1. Initials or Monogram</u></p>
411<p class="MsoNormal">For a classic touch that never goes out of style, opt for engraving initials or a monogram. Simple and elegant, this can be a great choice for a variety of occasions. Whether it’s a graduation, a corporate gift, or a special birthday, the personalisation adds a layer of uniqueness without being overly sentimental.</p>
412<p class="MsoNormal"> </p>
413<p class="MsoNormal"><a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener"><img style="margin: 10px; max-width: 100%;" src="https://www.penheaven.co.uk/media/wysiwyg/Initials-or-Monogram-BLOG.jpg" alt=""></a></p>
414<p class="MsoNormal"> </p>
415<p class="MsoNormal"> </p>
416<p class="MsoNormal"> </p>
417<p class="MsoNormal"><u>2. Inspirational Quote</u></p>
418<p class="MsoNormal">Sometimes, the best gift is the one that speaks to the heart and motivates. A short and inspiring quote can turn an ordinary pen into a source of daily inspiration when they need it the most. From literary quotes to lines from favorite songs or poems, the possibilities are endless. This is perfect for someone embarking on a new chapter, like a graduate or someone starting a new job.</p>
419<p class="MsoNormal">Example: “The journey is the reward.”</p>
420<p class="MsoNormal"> </p>
421<p class="MsoNormal"><a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener"><img style="margin: 10px; max-width: 100%;" src="https://www.penheaven.co.uk/media/wysiwyg/Inspirational-Quote-Blog.jpg" alt=""></a></p>
422<p class="MsoNormal"> </p>
423<p class="MsoNormal"> </p>
424<p class="MsoNormal"> </p>
425<p class="MsoNormal"><u>3. Significant Date</u></p>
426<p class="MsoNormal">Mark an important moment in time by engraving a date that’s meaningful to the recipient. A wedding day, the birth of a child, or even the day of a big achievement—engraving a specific date on the pen turns it into a permanent reminder of an unforgettable event.</p>
427<p class="MsoNormal">Example: 12.06.2023 (Wedding Date)</p>
428<p class="MsoNormal"> </p>
429<p class="MsoNormal"> </p>
430<p class="MsoNormal"> </p>
431<p class="MsoNormal"><u>4. A Personal Message</u></p>
432<p class="MsoNormal">Sometimes, words from the heart are the best gift. A short, meaningful message can carry a deep personal sentiment and be something the recipient can carry with them every day. A message like "I’m proud of you" or "Always in my heart" can make the pen an enduring symbol of your relationship.</p>
433<p class="MsoNormal"> </p>
434<p class="MsoNormal"><a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener"><img style="margin: 10px; max-width: 100%;" src="https://www.penheaven.co.uk/media/wysiwyg/A-Personal-Message-BLOG.jpg" alt=""></a></p>
435<p class="MsoNormal"> </p>
436<p class="MsoNormal"> </p>
437<p class="MsoNormal"> </p>
438<p class="MsoNormal"><u>5. Special Nickname</u></p>
439<p class="MsoNormal">Nicknames are often associated with deep connections and affection. Engraving a nickname or endearing term adds a layer of intimacy to the pen or even brings a smile to their face. Whether it’s playful or something more personal, it’s a fun and touching way to personalise the gift.</p>
440<p class="MsoNormal"> </p>
441<p class="MsoNormal"> </p>
442<p class="MsoNormal"><u>6. Graduation Year</u></p>
443<p class="MsoNormal">For someone completing a significant educational milestone, a pen engraved with their graduation year can serve as a thoughtful memento. It celebrates their achievement while also marking the transition to the next phase of life.</p>
444<p class="MsoNormal">Example: “Class of 2023”</p>
445<p class="MsoNormal"> </p>
446<p class="MsoNormal"><a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener"><img style="margin: 10px; max-width: 100%;" src="https://www.penheaven.co.uk/media/wysiwyg/Graduation-Year-Blog.jpg" alt=""></a></p>
447<p class="MsoNormal"> </p>
448<p class="MsoNormal"> </p>
449<p class="MsoNormal"> </p>
450<p class="MsoNormal"><u>7. A Romantic Message</u></p>
451<p class="MsoNormal">If you’re looking for a special gift for a loved one, consider engraving a short romantic message. A simple “Forever Yours” or “With all my love” can transform a pen into a keepsake that will remind them of your affection every time they write.</p>
452<p class="MsoNormal"> </p>
453<p class="MsoNormal"><img src="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" alt=""><a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener"><img style="margin: 10px; max-width: 100%;" src="https://www.penheaven.co.uk/media/wysiwyg/A-Romantic-Message-BLOG1.jpg" alt=""></a></p>
454<p class="MsoNormal"> </p>
455<p class="MsoNormal"> </p>
456<p class="MsoNormal"> </p>
457<p class="MsoNormal"><u>8. Professional Inspiration</u></p>
458<p class="MsoNormal">For colleagues, mentors, or business partners, an engraving that reflects their professional journey can be a thoughtful gesture. Whether it's a motivational phrase, a key business value, or a word that speaks to their ambitions that they can use throughout their career.</p>
459<p class="MsoNormal">Example: “Dream. Lead. Achieve.”</p>
460<p class="MsoNormal"> </p>
461<p class="MsoNormal"><a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener"><img style="margin: 10px; max-width: 100%;" src="https://www.penheaven.co.uk/media/wysiwyg/Professional-Inspiration-blog.jpg" alt=""></a></p>
462<p class="MsoNormal"> </p>
463<p class="MsoNormal"> </p>
464<p class="MsoNormal"> </p>
465<p class="MsoNormal"><u>9. Coordinates of a Special Place</u></p>
466<p class="MsoNormal">For a truly unique and personal touch, engrave the coordinates of a place that holds 
466significance. Whether it’s the location of a memorable trip, a beloved home, or a place that’s dear to the person’s heart, these coordinates will turn the pen into a tangible reminder of that special place.</p>
467<p class="MsoNormal">Example: 51.5074° N, 0.1278° W (London)</p>
468<p class="MsoNormal"> </p>
469<p class="MsoNormal"><a href="https://www.penheaven.co.uk/pens-by-feature/engraved-pens" target="_blank" rel="noopener"><img style="margin: 10px; max-width: 100%;" src="https://www.penheaven.co.uk/media/wysiwyg/Coordinates-of-a-Special-Place-blog.jpg" alt=""></a></p>
470<p class="MsoNormal"> </p>
471<p class="MsoNormal"> </p>
472<p class="MsoNormal"> </p>
473<p class="MsoNormal"><u>10. A Family Motto or Saying</u></p>
474<p class="MsoNormal">Family mottos or sayings can encapsulate a sense of heritage and tradition. If there’s a phrase that holds special meaning for a family, engraving it on a pen is a wonderful way to pass it down through generations. It can serve as both a family keepsake and a personal reminder of shared values.</p>
475<p class="MsoNormal">Example: “Strength in Unity.”</p>
476<p class="MsoNormal"> </p>
477<p class="MsoNormal"> </p>
478<p class="MsoNormal"><u>Final Thoughts</u></p>
479<p class="MsoNormal">Personalising a pen with an engraving adds an extra layer of meaning to what is already a treasured item. Whether for a birthday, anniversary, graduation, or any other special occasion, an engraved pen can carry both sentiment and style. Choose an engraving that reflects the recipient’s personality, your relationship with them, or a milestone in their life. It’s a small gesture that makes a lasting impression.</p>
480<p class="MsoNormal">Looking for the perfect pen to engrave? Explore our premium selection of writing instruments at Pen Heaven and find the ideal canvas for your personal message.</p>
481<p class="MsoNormal"><span style="color: rgb(224, 62, 45);"><a style="color: rgb(224, 62, 45);" href="https://www.penheaven.co.uk/engraving" target="_blank" rel="noopener">Learn more about our Pen Engraving Service</a></span></p>
482<h1> </h1>
483<p class="MsoNormal"> </p></div></div></div> <div class="mp-clear"></div>
483<script type="text/javascript"
484                src="//s7.addthis.com/js/300/addthis_widget.js#pubid=0:3:a3bTHlx0AwNAn3dZFXbmQmsgFxsLyP31KqqCzgcuEZECMDtG5UsjUtzJfDo="
485                async="async"></script>
485<div class="mpcss"><div id="sharing"><div class="share-col-right"><div class="post-sharing-button"><div class="addthis_inline_share_toolbox"></div><!-- <div class="addthis_sharing_toolbox"></div>--></div></div></div></div>  <div class="block-blog-related about-admin"><h2>About the Author</h2><div class="related-content-container"><div class="author-content-image"><img class="img-responsive" src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/Mageplaza_Blog/media/images/no-artist-image.jpg"></div><div class="author-content-information"><div class="author-name">David Cole</div><p class="author-description"></p></div><div class="mp-clear"></div></div></div> <div class="block-prev-next-post"><div class="post previous"> <a href="https://www.penheaven.co.uk/blog/10-creative-writing-exercises-to-spark-your-imagination">10 Creative Writing Exercises to Spark Your Imagination </a> </div><div class="post next"> <a href="https://www.penheaven.co.uk/blog/which-journal-paper-is-right-for-you">Which Journal Paper is Right for You? Lined vs. Grid vs. Blank </a> </div></div>        <div class="block-blog-related blog-comment"><h2>Comments</h2> <div class="related-content-container container default-cmt"> <div class="col-mp default-cmt__cmt-login"><button class="primary btn-primary default-cmt__cmt-login__btn-login">Login</button></div> <div class="col-mp mp-12" style="float: left;"><div class="default-cmt__content"><div class="default-cmt__content__cmt-block"> <form id="default-cmt__content__cmt-block__guest-form" data-mage-init='{"validation":{}}'><div class="col-mp mp-6 default-cmt__content__cmt-block__guest-box"><label for="default-cmt__content__cmt-block__guest-box__name-input">Name *</label> <input id="default-cmt__content__cmt-block__guest-box__name-input" type="text" name="default-cmt__content__cmt-block__guest-box__name-input" placeholder="Your display name" data-validate="{required:true}"></div><div class="col-mp mp-6 default-cmt__content__cmt-block__guest-box"><label for="default-cmt__content__cmt-block__guest-box__email-input">Email *</label> <input id="default-cmt__content__cmt-block__guest-box__email-input" type="text" name="default-cmt__content__cmt-block__guest-box__email-input" placeholder="Your email " data-validate="{required:true, 'validate-email':true}"></div></form> <div class="default-cmt__content__cmt-block__cmt-box"><div class="col-mp mp-12"><label for="mp-guest-cmt-commentbox">Comment</label> <textarea class="default-cmt__content__cmt-block__cmt-box__cmt-input"
486                                                  maxlength="255"
487                                                  placeholder="Type comments here..."></textarea></div><div class="default-cmt__content__cmt-block__cmt-box__cmt-btn"><div class="default-cmt_loading" style="display: none"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images/loader-1.gif" alt="Loading..."></div><button class="default-cmt__content__cmt-block__cmt-box__cmt-btn__btn-submit primary btn-primary">Comment</button></div></div></div><div class="default-cmt__content__cmt-content"> <ul class="default-cmt__content__cmt-content row"></ul></div></div></div></div>
487<script>
488                    
489                    var loginUrl = 'https://www.penheaven.co.uk/customer/account/login/',
490                        like = 'Like',
491                        reply = 'Reply',
492                        isLogged = 'No',
493                        likedColor = '#1abc9c',
494                        messengerBox = {
495                            cmt_warning: '<div class="messages"><div class="message message-error error"><div data-ui-id="magento-framework-view-element-messages-0-message-error" >Please write the comment.</div></div></div>',
496                            exist_email_warning: '<div class="messages"><div class="message message-error error"><div data-ui-id="magento-framework-view-element-messages-1-message-error" >This email is exist. Please <a href="https://www.penheaven.co.uk/customer/account/login/"> Login</a> as our customer.</div></div></div>',
497                            login_warning: '<div class="messages"><div class="message message-error error"><div data-ui-id="magento-framework-view-element-messages-2-message-error" >You are not logged in. Please <a href="https://www.penheaven.co.uk/customer/account/login/"> Login</a> or <a href="https://www.penheaven.co.uk/customer/account/create/"> Signup</a> to like or send a reply.</div></div></div></div>',
498                            comment_approve: '<div class="messages"><div class="message message-success success"><div data-ui-id="magento-framework-view-element-messages-3-message-success" >Your comment has been sent successfully. Please wait admin approve !</div></div></div>'
499                        };
500
501                    require(['comment']);</script>
501</div></div></div><div class="sidebar sidebar-main"> <div class="mp-sidebar product info detailed"><div class="product data items" data-mage-init='{"tabs":{"openedState":"active"}}'><div class="data item title" data-role="collapsible" id="tab-label-popular"><a class="data switch" tabindex="-1" data-toggle="switch" id="tab-label-popular-title"><div>Popular</div></a></div><div class="data item content" id="tab-content-popular" data-role="content">  <div class="list-post-tabs"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/revive-a-dead-ballpoint-pen"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/resize/100x/uploads/2012/05/2-tricks-revive-ballpoint-pen.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/revive-a-dead-ballpoint-pen"><span>Revive a dead ballpoint pen with these 2 simple tricks</span></a> <span class="create-at">May 24, 2012</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/rollerball-pens-vs-ballpoint-pens"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/resize/100x/r/o/rollerball-vs-ballpoint2.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/rollerball-pens-vs-ballpoint-pens"><span>Rollerball vs. Ballpoint Pens: A comparison</span></a> <span class="create-at">July 17, 2013</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/pen-refill-finder-and-guide"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/resize/100x/r/e/refills-image.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/pen-refill-finder-and-guide"><span>Refill Guide</span></a> <span class="create-at">September 2, 2015</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/fountain-pen-nib-width-comparison"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/resize/100x/uploads/2015/08/parker-nibs-1024x497.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/fountain-pen-nib-width-comparison"><span>Fountain Pen Nib Width Comparison</span></a> <span class="create-at">August 4, 2015</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/lead-sizes-for-mechanical-pencils"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/resize/100x/uploads/2015/10/comp.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/lead-sizes-for-mechanical-pencils"><span>Lead Sizes for Mechanical Pencils</span></a> <span class="create-at">October 19, 2015</span></div><div class="mp-clear"></div></div> </div><div class="data item title" data-role="collapsible" id="tab-label-mostview"><a class="data switch" tabindex="-1" data-toggle="switch" id="tab-label-mostview-title"><div>Latest</div></a></div><div class="data item content" id="tab-content-mostview" data-role="content">  <div class="list-post-tabs" href="https://www.penheaven.co.uk/blog/handwriting-cutting-through-noise-2026"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/handwriting-cutting-through-noise-2026"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/b/l/blog-hero-ph-handwriting-2026-1.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/handwriting-cutting-through-noise-2026"><span>Why Handwriting Is Cutting Through the Noise in 2026</span></a> <span class="create-at">September 17, 2026</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs" href="https://www.penheaven.co.uk/blog/autumn-stationery-edit"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/autumn-stationery-edit"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/b/l/blog-hero-autumn-edit-ph-2026.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/autumn-stationery-edit"><span>Autumn Stationery Edit: Top Writing Instruments for the New Season</span></a> <span class="create-at">September 11, 2026</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs" href="https://www.penheaven.co.uk/blog/postcards-from-paradise"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/postcards-from-paradise"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/b/l/blog-pen-heaven-summer-greece.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/postcards-from-paradise"><span>Postcards from Paradise: Matching Your Stationery to Your Summer Destination</span></a> <span class="create-at">August 6, 2026</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs" href="https://www.penheaven.co.uk/blog/summer-stationery-essentials"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/summer-stationery-essentials"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/b/l/blog-image-7-summer.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/summer-stationery-essentials"><span>Summer Stationery Essentials: 5 Must-Haves for Analogue Mindfulness</span></a> <span class="create-at">July 15, 2026</span></div><div class="mp-clear"></div></div> <div class="list-post-tabs" href="https://www.penheaven.co.uk/blog/the-wedding-stationery-edit"><div class="post-left"><a href="https://www.penheaven.co.uk/blog/the-wedding-stationery-edit"><img class="img-responsive" src="https://www.penheaven.co.uk/media/mageplaza/blog/post/b/l/blog-hero-the-wedding-stationery-edit-pen-heaven.jpg"></a></div><div class="post-right"><a href="https://www.penheaven.co.uk/blog/the-wedding-stationery-edit"><span>The Wedding Stationery Edit: Details That Make Your Big Day Unforgettable</span></a> <span class="create-at">June 15, 2026</span></div><div class="mp-clear"></div></div> </div></div></div>
501<script>
502    require([
503        'jquery'
504    ], function ($) {
505        $("#popular-tab").click(function () {
506            $("#tab-1").addClass('active');
507            $("#tab-2").removeClass('active');
508            $('#mostview').show();
509            $('#mostrecent').hide();
510        });
511        $("#recent-tab").click(function () {
512            $("#tab-1").removeClass('active');
513            $("#tab-2").addClass('active');
514            $('#mostview').hide();
515            $('#mostrecent').show();
516        });
517    });</script>
517 <div class="blog-categories"><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/artists-studio"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Artist’s Studio</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/authors-corner"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Authors’ Corner</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/brand-focus"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Brand Focus</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/education"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Education</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/handwriting"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Handwriting</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/promotions"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Promotions</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/stationery-addicts"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Stationery Addicts</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/pen-reviews"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Product Showcase</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/advice"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Pen Advice &amp; Care</a></li></ul><ul class="block-content menu-categories category-level2" style="margin-bottom:0px;margin-top:8px;"><li class="category-item"><a class="list-categories" href="https://www.penheaven.co.uk/blog/featured-posts"><i class="fa fa-folder-open-o">&nbsp;&nbsp;</i>Featured Posts</a></li></ul></div>
517<script type="text/javascript">
518        require(['jquery', 'Mageplaza_Blog/js/categorytree'], function ($) {
519            $("a[href*='" + location.pathname + "']").each(function() {
520                if($(this).hasClass('list-categories')) {
521                    ($(this).addClass('active'));
522                }
523            });
524        });</script>
524 <div class="mp-sidebar mpcss"><div class="row"><div class="block-title col-xs-12 sidebar-archives"><p class="block-mp-sidebar-heading" role="heading" aria-level="2">Monthly Archive</p></div><div class="col-xs-12"><ul class="menu-archives">  <li class="archive-item"><a class="list-archives" href="https://www.penheaven.co.uk/blog/month/2026-09"><i class="fa fa-calendar" aria-hidden="true"></i>&nbsp;&nbsp; September , 2026 (2)</a></li>  <li class="archive-item"><a class="list-archives" href="https://www.penheaven.co.uk/blog/month/2026-08"><i class="fa fa-calendar" aria-hidden="true"></i>&nbsp;&nbsp; August , 2026 (1)</a></li>  <li class="archive-item"><a class="list-archives" href="https://www.penheaven.co.uk/blog/month/2026-07"><i class="fa fa-calendar" aria-hidden="true"></i>&nbsp;&nbsp; July , 2026 (1)</a></li>  <li class="archive-item"><a class="list-archives" href="https://www.penheaven.co.uk/blog/month/2026-06"><i class="fa fa-calendar" aria-hidden="true"></i>&nbsp;&nbsp; June , 2026 (1)</a></li>  <li class="archive-item"><a class="list-archives" href="https://www.penheaven.co.uk/blog/month/2026-05"><i class="fa fa-calendar" aria-hidden="true"></i>&nbsp;&nbsp; May , 2026 (1)</a></li> </ul></div></div></div></div></div></main><footer class="page-footer">  <div class="block newsletter"><div class="container2"><div class="title"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/join_our_newsletter.svg" width="auto" height="45" alt="Join our newsletter" /></div><label class="label" for="newsletter">Get fresh exclusive deals for trendy and unique gifts delivered right to your inbox.</label> <form class="form subscribe" novalidate action="https://www.penheaven.co.uk/newsletter/subscriber/new/" method="post" data-mage-init='{"validation": {"errorClass": "mage-error"}}' id="newsletter-validate-detail"><div class="control"><input name="email" type="email" id="newsletter" placeholder="Enter your email address" data-mage-init='{"mage/trim-input":{}}' data-validate="{required:true, 'validate-email':true}" /><button class="subscribe-action" title="Sign&#x20;Up" type="submit">Sign Up</button></div></form></div></div>
524<script type="text/x-magento-init">
525    {
526        "*": {
527            "Magento_Customer/js/block-submit-on-send": {
528                "formId": "newsletter-validate-detail"
529            }
530        }
531    }</script>
531 <div class="footer-primary"><div id="accordion" class="footer-primary__accordion" data-mage-init='{"accordion":{"active": false,"collapsible": true,"animate": {"duration": 220}}}'><div data-role="tablist"><div data-role="collapsible"><div data-role="trigger">Customer Services <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19"><g fill="none" fill-rule="evenodd" stroke="#312E2A" stroke-linecap="square"><path d="M.5 9.5h17"/><path d="M9.008 1.466v17"/></g></svg></div></div><div data-role="content" style="display:none" aria-hidden="false"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><ul>
532<li><a href="https://www.penheaven.co.uk/delivery-returns">Delivery &amp; Returns</a></li>
533<li><a href="https://www.penheaven.co.uk/contact">Contact us</a></li>
534<li><a href="https://www.penheaven.co.uk/frequently-asked-questions">FAQs</a></li>
535<li><a href="https://www.penheaven.co.uk/security-privacy">Security &amp; Privacy</a></li>
536<li><a href="https://www.penheaven.co.uk/terms-conditions">Terms and Conditions</a></li>
537</ul></div></div></div><div data-role="tablist"><div data-role="collapsible"><div data-role="trigger">Here to Help <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19"><g fill="none" fill-rule="evenodd" stroke="#312E2A" stroke-linecap="square"><path d="M.5 9.5h17"/><path d="M9.008 1.466v17"/></g></svg></div></div><div data-role="content" style="display:none" aria-hidden="false"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true">
538<ul>
539<li><a href="/blog/advice">Pen Advice & Care</a></li>
540<li><a href="/blog/which-pen-brand-is-for-you">Which Brand Should You Choose</a></li>
541<li><a href="/blog/rollerball-pens-vs-ballpoint-pens">Rollerball vs Ballpoint Pen</a></li>
542<li><a href="/blog/pen-refill-finder-and-guide">Find Your Refill</a></li>
543<li><a href="/blog/fountain-pen-nib-width-comparison" target="_blank" rel="noopener">Nib Width Comparison</a></li>
544<li><a href="/blog/10-meaningful-engraving-ideas-for-every-occasion">Top 10 Engraving Ideas</a></li>
545</ul>
546</div></div></div><div data-role="tablist"><div data-role="collapsible"><div data-role="trigger">About Us <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19"><g fill="none" fill-rule="evenodd" stroke="#312E2A" stroke-linecap="square"><path d="M.5 9.5h17"/><path d="M9.008 1.466v17"/></g></svg></div></div><div data-role="content" style="display:none" aria-hidden="false"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true"><ul>
547    <li><a href="https://www.penheaven.co.uk/blog">Blog</a></li>
548    <li><a href="https://www.penheaven.co.uk/our-story">Our Story</a></li>
549    <li><a href="https://www.penheaven.co.uk/engraving">Engraving Service</a></li>
550    <li><a href="https://www.penheaven.co.uk/embossing">Embossing Service </a></li>
551    <li><a href="https://www.penheaven.co.uk/giftwrap-service">Giftwrap Service</a></li>
552    <li><a href="https://www.penheaven.co.uk/corporate-sales">Corporate Sales</a></li>
553</ul></div></div></div><div data-role="tablist"><div data-role="collapsible"><div data-role="trigger">Contact Us <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19"><g fill="none" fill-rule="evenodd" stroke="#312E2A" stroke-linecap="square"><path d="M.5 9.5h17"/><path d="M9.008 1.466v17"/></g></svg></div></div><div data-role="content" style="display:none" aria-hidden="false"><div data-content-type="html" data-appearance="default" data-element="main" data-decoded="true">
554	<ul>
555		<li>
556			<a href="https://www.instagram.com/penheaven/?hl=en" target="_blank" rel="noopener" aria-label="Visit our Instagram page">
557				<span class="icon-instagram"></span>
558				<span>Instagram</span>
559			</a>
560		</li>
561		<li>
562			<a href="http://facebook.com/penheaven" target="_blank" rel="noopener" aria-label="Visit our Facebook page">
563				<span class="icon-facebook"></span>
564				<span>Facebook</span>
565			</a>
566		</li>
567		<li>
568			<a href="https://www.tiktok.com/@pen_heaven" target="_blank" rel="noopener" aria-label="Visit our Twitter page">
569				<span class="icon-tiktok"></span>
570				<span>TikTok</span>
571			</a>
572		</li>
573		<li>
574			<a href="/cdn-cgi/l/email-protection#89fafcf9f9e6fbfdc9f9ece7e1ece8ffece7a7eae6a7fce2">
575				<span class="icon-envelope"></span>
576				<span><span class="__cf_email__" data-cfemail="added8ddddc2dfd9edddc8c3c5c8ccdbc8c383cec283d8c6">[email&#160;protected]</span></span>
577			</a>
578		</li>
579		<li>
580			<a href="tel:+442087318610">
581				<span class="icon-phone"></span>
582				<span>0208 731 8610</span>
583			</a>
584		</li>
585	</ul>
586</div></div></div></div></div><div class="footer-secondary container2"><span class="footer-logo"><img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/logo.svg" width="auto" height="33" alt="Pen Heaven" /></span> <small>&copy; 2024 Coles Pen Co Ltd, Company No 04836357, VAT 820897411</small> <img src="https://www.penheaven.co.uk/static/version1789060698/frontend/penheaven/default/en_GB/images2/payment-icons.svg" width="250" height="auto" alt="Accepted Payment Methods" /></div></footer>
vendor: 109 bytes, line 586
586 <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
586<script type="text/x-magento-init">
587        {
588            "*": {
589                "Magento_Ui/js/core/app": {
590                    "components": {
591                        "storage-manager": {
592                            "component": "Magento_Catalog/js/storage-manager",
593                            "appendTo": "",
594                            "storagesConfiguration" : {"recently_viewed_product":{"requestConfig":{"syncUrl":"https:\/\/www.penheaven.co.uk\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"recently_compared_product":{"requestConfig":{"syncUrl":"https:\/\/www.penheaven.co.uk\/catalog\/product\/frontend_action_synchronize\/"},"lifetime":"1000","allowToSendRequest":null},"product_data_storage":{"updateRequestConfig":{"url":"https:\/\/www.penheaven.co.uk\/rest\/default\/V1\/products-render-info"},"requestConfig":{"syncUrl":"https:\/\/www.penheaven.co.uk\/catalog\/product\/frontend_action_synchronize\/"},"allowToSendRequest":null}}                        }
595                    }
596                }
597            }
598        }</script>
598 
598<script>(function(w,d,t,r,u){var f,n,i;w[u]=w[u]||[],f=function(){var o={ti:"5215651"};o.q=w[u],w[u]=new UET(o),w[u].push("pageLoad")},n=d.createElement(t),n.src=r,n.async=1,n.onload=n.onreadystatechange=function(){var s=this.readyState;s&&s!=="loaded"&&s!=="complete"||(f(),n.onload=n.onreadystatechange=null)},i=d.getElementsByTagName(t)[0],i.parentNode.insertBefore(n,i)})(window,document,"script","//bat.bing.com/bat.js","uetq");</script>
598<noscript><img src="//bat.bing.com/action/0?ti=5215651&Ver=2" height="0" width="0" style="display:none; visibility: hidden;" /></noscript>   
598<script>
599    require([
600        'mage/url'
601    ], function(url) {
602        return url.setBaseUrl('https://www.penheaven.co.uk/');
603    })</script>
603 
603<script type="text/x-magento-init">
604    {
605        "*": {
606            "Fisheye_Lazyload/js/preload": {"preload_selectors":{"header_images":"header .lazyload"}}        }
607    }</script>
607 <!-- use GET <host>/pro/about/info to see extension version -->
607<script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"WebSite","url":"https:\/\/www.penheaven.co.uk\/","name":"Pen Heaven","potentialAction":{"@type":"SearchAction","target":"https:\/\/www.penheaven.co.uk\/catalogsearch\/result\/?q={search_term_string}","query-input":"required name=search_term_string"}}</script>
607<script type="application/ld+json">{"@context":"https:\/\/schema.org","@type":"Organization","url":"https:\/\/www.penheaven.co.uk\/","name":"Pen Heaven","logo":"https:\/\/www.penheaven.co.uk\/static\/frontend\/penheaven\/default\/en_GB\/images\/pen-logo.svg","description":"Carefully selected pens from luxury brands, which can be engraved with a personalised message & dispatched same day.","contactPoint":[{"@type":"ContactPoint","telephone":"+44 208 731 8610","contactType":"sales"},{"@type":"ContactPoint","telephone":"+44 208 731 8610","contactType":"technical support"},{"@type":"ContactPoint","telephone":"+44 208 731 8610","contactType":"customer service"}],"address":{"addressCountry":"United Kingdom","postalCode":"NW9 6BX","addressLocality":"London"},"sameAs":["http:\/\/facebook.com\/penheaven","http:\/\/twitter.com\/pen_heaven","http:\/\/pinterest.com\/penheaven\/"]}</script>
607</div>
607<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"c1722f695e","applicationID":"188201999,1765787820","transactionName":"ZVVRbUJRCEcAAEBaXFwfclpEWQlaTg5EUV9dVxxJX0MSGxcKUUQ=","queueTime":0,"applicationTime":421,"atts":"SRJGGwpLGxhDAhYJSE9N","errorBeacon":"bam.nr-data.net","agent":""}</script>
607<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"0ec46940c9624ff4854b1f46946f981e","spa":2}' crossorigin="anonymous"></script>
607
608</body></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.