1<head> 2 <meta charset="utf-8"> 3 <meta http-equiv="X-UA-Compatible" content="IE=edge">
3<script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"NRJS-77a4e984b2ec8bf6a32",applicationID:"1051451015",browserID:"1103408882"};;/*! For license information please see nr-loader-rum-1.323.0.min.js.LICENSE.txt */ 4(()=>{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)),a=0===Object.keys(r).length?e:r;for(let s in a)if(void 0!==e[s])try{if(null===e[s]){r[s]=null;continue}Array.isArray(e[s])&&Array.isArray(t[s])?r[s]=Array.from(new Set([...e[s],...t[s]])):e[s]instanceof Map||e[s]instanceof Set||e[s]instanceof Date||e[s]instanceof RegExp?r[s]=e[s]:"object"==typeof e[s]&&null!==t[s]&&"object"==typeof t[s]?r[s]=i(e[s],t[s]):r[s]=e[s]}catch(e){r[s]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>s});var n=r(384),i=r(8122);const a={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 s(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,a)])},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,["xv",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"}])},6154(e,t,r){"use strict";var n=r(1863);const i="undefined"!=typeof window&&!!window.document,a="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),s=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),o=Boolean("hidden"===s?.document?.visibilityState),c=""+s?.location,u=/iPad|iPhone|iPod/.test(s.navigator?.userAgent),d=u&&"undefined"==typeof SharedWorker,l=((()=>{const e=s.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)());r.d(t,["OF",0,u,"RI",0,i,"WN",0,l,"bv",0,a,"gm",0,s,"m",0,c,"mw",0,o,"sb",0,d,"zk",0,()=>{const e=s?.performance?.getEntriesByType?.("navigation")?.[0];if(e&&e.responseStart>0&&e.responseStart<s.performance.now())return e}])},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:()=>u,x3:()=>c});var n=r(3241),i=r(3606),a=r(860),s=r(2646);function o(e,t){if(!e)return;const r={staged:!1,priority:a.P3[t]||0};e.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&&d(e))}function u(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,d(e)}}function d(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 a=e.ee,o=i.i.handlers;if(a&&!a.aborted&&a.backlog&&o){if((0,n.W)({type:"lifecycle",name:"drain",feature:t}),r){const e=a.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||{}
4).forEach(t=>{t[0]?.on&&t[0].context()instanceof s.y&&!t[0].listeners(e).includes(t[1])&&t[0].on(e,t[1])})})}}a.isolatedBacklog||delete o[t],a.backlog[t]=null,a.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],a=e[2];n.apply(i,a)}})}},7836(e,t,r){"use strict";var n=r(384),i=r(8990),a=r(2646),s=r(5607);const o="nr@context:".concat(s.W),c=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&u.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,a){!1!==a&&(a=!0);if(c.aborted&&!i)return;t&&a&&t.emit(e,r,n);var o=g(n);m(e).forEach(e=>{e.apply(o,r)});var u=v()[s[e]];u&&u.push([f,e,r,o]);return o},get:h,listeners:m,context:g,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach(([e,n])=>{s[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()[s[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 g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,o,()=>new a.y(o)):new a.y(o)}function p(e,t){n[e]=m(e).concat(t)}function m(e){return n[e]||[]}function h(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),u=(0,n.Zm)();u.ee||(u.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,a){a?(a.buffer([e],i),a.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606(e,t,r){"use strict";r.d(t,{i:()=>a});var n=r(9908);a.on=s;var i=a.handlers={};function a(e,t,r,a){s(a||n.d,i,e,t,r)}function s(e,t,r,i,a){a||(a="feature"),e||(e=n.d);var s=t[a]=t[a]||{};(s[r]=s[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 a(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>a,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:()=>s,bz:()=>a});var n=r(6154);function i(e,t){return e?15&e[t]:16*Math.random()|0}function a(){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 s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,a=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const s=[];for(var o=0;o<e;o++)s.push(i(r,a++).toString(16));return s.join("")}},2614(e,t,r){"use strict";r.d(t,["BB",0,18e5,"Wt",0,"NRBA_SESSION::","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])},1863(e,t,r){"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},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:()=>a});var n=r(944);const i=new Map;function a(...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]"),a=t.includes("nrWrapper");return r||a||(0,n.R)(64,e?.name||t),i.set(e,r),r})}},5289(e,t,r){"use strict";r.d(t,{GG:()=>s,Qr:()=>c,sB:()=>o});var n=r(3878),i=r(6389);function a(){return"undefined"==typeof document||"complete"===document.readyState}function s(e,t){if(a())return e();const r=(0,i.J)(e),s=setInterval(()=>
4{a()&&(clearInterval(s),r())},500);(0,n.sp)("load",r,t)}function o(e){if(a())return e();(0,n.DD)("DOMContentLoaded",e)}function c(e){if(a())return e();(0,n.sp)("popstate",e)}},384(e,t,r){"use strict";r.d(t,{Zm:()=>c,bQ:()=>d,dV:()=>u,pV:()=>l});var n=r(6154),i=r(1863),a=r(944),s=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 u(){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,s.i)(...Object.values(e.o))),e}function d(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,a.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}}(),u(),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:()=>a,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 a(e,t,r){(0,n.sp)("pagehide",e,t,r)}},9300(e,t,r){"use strict";r(860).K7.ajax;r.d(t,["mo",0,{NONE:"none",FAILURES:"failures",ALL:"all"}])},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])},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:()=>a});var n=r(9566),i=r(1741);class a extends i.W{agentIdentifier=(0,n.LA)(16)}},1741(e,t,r){"use strict";r.d(t,{W:()=>a});var n=r(944),i=r(4261);class a{#e(e,...t){if(this[e]!==a.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:()=>d});var n=r(3241),i=r(9908),a=r(1863),s=r(944),o=r(3969),c=r(8362),u=r(860);function d(e,t,r,a){const d=a||r;!d||d[e]&&d[e]!==c.d.prototype[e]||(d[e]=function(){(0,i.p)(o.xV,["API/"+e+"/called"],void 0,u.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,s.R)(23,e)}})}function l(e,t,r,n,s){const o=e.info;null===r?delete o.jsAttributes[t]:o.jsAttributes[t]=r,(s||null===r)&&(0,i.p)("api-"+n,[(0,a.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",a="browser/blobs",s="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},u={[o.pageViewEvent]:"rum",[o.pageViewTiming]:n,[o.ajax]:n,[o.softNav]:n,[o.metrics]:i,[o.jserrors]:i,[o.sessionTrace]:a,[o.sessionReplay]:a,[o.logging]:s,[o.genericEvents]:"ins"};r.d(t,["$J",0,u,"K7",0,o,"P3",0,c,"XX",0,i,"Yy",0,s,"df",0,a,"hg",0,"connect"])}};const t={};function r(n){const i=t[n];if(void 0!==i)return i.exports;const a=t[n]={exports:{}};return e[n](a,a.exports,r),a.exports}r.m=e,r.d=(e,t)=>{if(Array.isArray(t))for(var n=0;n<t.length;){var i=t[n++],a=t[n++];r.o(e,i)?0===a&&n++:0===a?Object.defineProperty(e,i,{enumerable:!0,value:t[n++]}):Object.defineProperty(e,i,{enumerable:!0,get:a})}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=>"nr-rum-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,a,s)=>{if(e[n])return void e[n].push(i);let o,c;if(void 0!==a){const e=document.getElementsByTagName("script");for(var u=0;u<e.length;u++){const r=e[u];if(r.getAttribute("src")==n||r.getAttribute("data-webpack")==t+a){o=r;break}}}if(!o){c=!0;var d={296:"sha512-zhTI1o3vPu0UcYWUELiLeb9P46+LBW0K7R4KO/PafMc68L5tJ2mSHyvZtcNeG9Cw/PTZstuo62K1wwaoAsHdXQ=="};o=document.createElement("script"),o.charset="utf-8",r.nc&&o.setAttribute("nonce",r.nc),o.setAttribute("data-webpack",t+a),o.src=n,0!==o.src.indexOf(window.location.origin+"/")&&(o.crossOrigin="anonymous"),d[s]&&(o.integrity=d[s])}e[n]=[i];const l=(t,r)=>{o.onerror=o.onload=null,clearTimeout(f);const i=e[n];
4if(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={374:0,840: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 a=new Promise((r,n)=>i=e[t]=[r,n]);n.push(i[2]=a);const s=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(s,c,"chunk-"+t,t)}};const t=(t,n)=>{let[i,a,s]=n;var o,c,u=0;if(i.some(t=>0!==e[t])){for(o in a)r.o(a,o)&&(r.m[o]=a[o]);if(s)s(r)}for(t&&t(n);u<i.length;u++)c=i[u],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),a=r(1741);var s=r(2555),o=r(981);t.K7.genericEvents,o.R.PA,o.R.UA,o.R.BP;const c={RESOURCES:"experimental.resources",REGISTER:"register"};var u=r(9300);const d=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var l=r(2614),f=r(944),g=r(8122);const p="[data-nr-mask]",m=e=>(0,g.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:u.mo.NONE},api:{register:{get enabled(){return e.feature_flags.includes(c.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(c.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,f.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(c.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:l.wk,inactiveMs:l.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_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(p):""===t||null===t?e.mask_selector=p:(0,f.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,f.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,f.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 h=r(6154),v=r(9324);let b=0;const y={buildEnv:"PROD",distMethod:"CDN",version:v.xv,originTime:h.WN},_={consented:!1},w={activatedFeatures:void 0,appMetadata:{},configured:!1,get consented(){return this.session?.state?.consent||_.consented},set consented(e){_.consented=e}
4,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++b},listeningForIframeMessages:!1},R="BA";var A=r(7836),x=r(3241);const E={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908);const k="newrelic-iframe-";function T(e,t={},n,o){let{init:c,info:u,loader_config:d,runtime:l={},exposed:f=!0}=t;if(!u){const e=(0,i.pV)();c=e.init,u=e.info,d=e.loader_config}var p;e.init=m(c||{}),e.loader_config=(p=d||{},(0,g.a)(p,E)),u.jsAttributes??={},h.bv&&(u.jsAttributes.isWorker=!0),e.info=(0,s.D)(u);const v=e.init;e.runtime??=(e=>{const t=(0,g.a)(e,w),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,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(a.W.prototype).forEach(r=>{const n=a.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=A.ee.get(e.agentIdentifier),e.exposed=f,(0,x.W)({drained:!!e.runtime.activatedFeatures,type:"lifecycle",name:"initialize",feature:void 0,data:e.config}),e.init.api.register.allow_iframe_bridge&&h.gm.addEventListener("message",t=>{"string"==typeof t.data?.type&&t.data.type.startsWith(k)&&(0,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var j=r(1863),P=r(4261),N=r(1738);
4var O=r(1687),M=r(4234),I=r(5289),D=r(7767);function V(e){return!!(0,i.dV)().o.MO&&(0,D.V)(e)&&!0===e?.session_trace.enabled}var W=r(6389),B=r(7699);const C=new WeakSet,K=new WeakMap;class U extends M.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,W.J)(()=>{(0,O.Ak)(e,this.featureName),t()}))}):(0,O.Ak)(e,t)}importAggregator(e,t,n={}){if(this.featAggregate)return;const i=async()=>{if(await this.deferred,this.#t(e),!(0,s.f)(e.info))return(0,f.R)(43),e.ee.abort(),void this.loadedSuccessfully(!1);try{await async function(e,t,n){if(K.has(e))return K.get(e);const i=(async()=>{if((0,D.V)(e.init))try{const{setupAgentSession:t}=await r.e(296).then(r.bind(r,1768));t(e)}catch(e){(0,f.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(B.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await Promise.resolve().then(function(){const e=new Error("Cannot find module '../../loaders/configure/iframe-message-handler'");throw e.code="MODULE_NOT_FOUND",e});t(e)}catch(e){(0,f.R)(23,e)}const[{Connector:i},{Harvester:a}]=await Promise.all([r.e(296).then(r.bind(r,6589)),r.e(296).then(r.bind(r,5237))]);e.runtime.connector=new i(e),e.runtime.harvester=new a(e);const s=Object.values(e.features).filter(t=>e.runtime.drainRegistry.has(t.featureName));Promise.all(s.map(e=>e.onAggregateImported)).then(()=>e.runtime.harvester.startTimer())})();K.set(e,i),await i}(e,this.ee,this.featureName)}catch(e){return(0,f.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,O.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,f.R)(34,e),this.abortHandler?.(),(0,O.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};h.RI?(0,I.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return V(n)&&!!r;case t.K7.sessionTrace:return!!r;default:return!0}}#t(e){if(!C.has(e)&&(C.add(e),!(0,s.f)(e.info))){const t=(0,i.pV)();let r={...t.info?.jsAttributes};try{r={...r,...e.info?.jsAttributes}}catch(e){}T(e,{...t,info:{...t.info,jsAttributes:r},runtime:e.runtime},e.runtime.loaderType)}}}var L=r(6630);class F extends U{static featureName=L.T;constructor(e){var t;super(e,L.T),this.setupInspectionEvents(),t=e,(0,N.Y)(P.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+P.Fw,[(0,j.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(296).then(r.bind(r,908)):r.e(296).then(r.bind(r,7927)))}setupInspectionEvents(){const e=(e,t)=>{e&&(0,x.W)({timeStamp:e.timeStamp,loaded:"complete"===e.target.readyState,type:"window",name:t,data:e.target.location+""})};(0,I.sB)(t=>{e(t,"DOMContentLoaded")}),(0,I.GG)(t=>{e(t,"load")}),(0,I.Qr)(t=>{e(t,"navigate")}),this.ee.on(l.tS.UPDATE,(e,t)=>{(0,x.W)({type:"lifecycle",name:"session",data:t})})}}class G extends e.d{constructor(e){var t;(super(),h.gm)?(this.features={},(0,i.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(e.features||[]),this.desiredFeatures.add(F),T(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(P.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,P.cD,n);(0,f.R)(40,typeof r)}else(0,f.R)(39,typeof e)},t),function(e){(0,N.Y)(P.Dl,function(t,r=!1){if("string"!=typeof t&&null!==t)return void(0,f.R)(41,typeof t);const n=e.info.jsAttributes["enduser.id"];r&&null!=n&&n!==t?(0,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,P.Dl,!0)},e)}(this),function(e){(0,N.Y)(P.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,P.nb,!1);(0,f.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(P.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.p)("api-"+P.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,f.R)(65,typeof t)},e)}(this),this.run()):(0,f.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={};
4return 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,f.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)})}catch(e){(0,f.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 H=r(2843),z=r(782);class Y extends U{static featureName=z.T;constructor(e){super(e,z.T),h.RI&&((0,H.u)(()=>(0,S.p)("docHidden",[(0,j.t)()],void 0,z.T,this.ee),!0),(0,H.G)(()=>(0,S.p)("winPagehide",[(0,j.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(296).then(r.bind(r,9981))))}}var Z=r(3969);class q extends U{static featureName=Z.TZ;constructor(e){super(e,Z.TZ),this.importAggregator(e,()=>r.e(296).then(r.bind(r,9623)))}}new G({features:[F,Y,q],loaderType:"lite"})})()})();</script>
4 5 <meta name="viewport" content="width=device-width, initial-scale=1"> 6 <meta name="csrf-token" content="8DnvOve5hCMQFP5yK1cshuhg9thECCQXYlMZsJg6"> 7 <title>Home | Paradise Cabinets New</title> 8 <link rel="icon" type="image/png" href="/new-assets/img/favicon.png"> 9 <meta name="description" content="High-Quality Custom Cabinetry & Countertops for your Kitchen & Bathroom Remodel. Serving Prince George and neaby areas. Family-owned & operated for over 20 years."> <link rel="preconnect" href="https://fonts.googleapis.com"> 10 <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 11 <link href="https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap" rel="stylesheet"> 12 <link rel="apple-touch-icon" sizes="180x180" href="/new-assets/img/favicons/apple-touch-icon.png"> 13 <link rel="icon" type="image/png" sizes="32x32" href="/new-assets/img/favicons/favicon-32x32.png"> 14 <link rel="icon" type="image/png" sizes="16x16" href="/new-assets/img/favicons/favicon-16x16.png"> 15 <link rel="shortcut icon" type="image/x-icon" href="/new-assets/img/favicons/favicon.ico"> 16 <link rel="manifest" href="/new-assets/img/favicons/manifest.json"> 17 <meta name="msapplication-TileImage" content="/new-assets/img/favicons/mstile-150x150.png"> 18 <meta name="theme-color" content="#ffffff"> 19 20 21 <!-- ===============================================--> 22 <!-- Stylesheets--> 23 <!-- ===============================================--> 24 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> 25 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css"> 26 <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet"> 27 <link href="https://getbootstrap.com/docs/5.3/assets/css/docs.css" rel="stylesheet"> 28 29
29<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"></script>
29 30
30<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
30 31 <link href="https://unpkg.com/[email protected]/dist/aos.css" rel="stylesheet"> 32
32<script src="https://unpkg.com/[email protected]/dist/aos.js"></script>
vendor: 86 bytes, lines 32-35
32 33 <script src="https://www.google.com/recaptcha/api.js" async defer></script> 34 35
35<!-- Google tag (gtag.js) -->
vendor: 70 bytes, lines 35-36
35 36 <script async src="https://www.googletagmanager.com/gtag/js?id=
36G-5P9Y57CF9L
vendor: 18 bytes, lines 36-37
36"></script> 37
37<script>
vendor: 127 bytes, line 37
37window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', '
37G-5P9Y57CF9L
vendor: 4 bytes, line 37
37');
37</script>
37 38 <!-- Google tag (gtag.js) --> 39 40 <link rel="preconnect" href="https://fonts.googleapis.com"> 41<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> 42<link href="https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap" rel="stylesheet"> 43<link href="/new-assets/css/stylelight.css" rel="stylesheet" /> 44 45 46<style> 47 .ba-wrapper { 48 /* max-width: 500px; 49 margin: 40px auto; */ 50 height: 300px; 51} 52 53.ba-container { 54 position: relative; 55 width: 100%; 56 overflow: hidden; 57 cursor: ew-resize; 58} 59 60.ba-img { 61 width: 100%; 62 height: 100%; 63 object-fit: cover; 64 display: block; 65} 66 67/* Overlay */ 68.ba-overlay { 69 position: absolute; 70 top: 0; 71 left: 0; 72 width: 50%; /* starting position */ 73 height: 100%; 74 overflow: hidden; 75} 76 77/* Divider line */ 78.ba-divider { 79 position: absolute; 80 top: 0; 81 left: 50%; 82 width: 3px; 83 height: 100%; 84 background: #fff; 85 transform: translateX(-50%); 86 z-index: 3; 87} 88 89.ba-circle { 90 position: absolute; 91 top: 50%; 92 left: 50%; 93 width: 40px; 94 height: 40px; 95 background: #fff; 96 border: 3px solid #28a745; 97 border-radius: 50%; 98 transform: translate(-50%, -50%); 99} 100 101/* Labels */ 102.ba-label { 103 position: absolute; 104 top: 20px; 105 padding: 6px 14px; 106 background: rgba(0,0,0,0.6); 107 color: #fff; 108 font-size: 14px; 109 border-radius: 4px; 110 z-index: 4; 111} 112 113.before-label { left: 20px; } 114.after-label { right: 20px; } 115</style> 116 117</head> 118 119 120<body> 121
122<script type="text/javascript"> 123 $(document).ready(function () { 124 $('.dropdown-toggle').dropdown(); 125 }); 126 </script>
126 127 <!-- ===============================================--> 128 <!-- Main Content--> 129 <!-- ===============================================--> 130 <div class="fixed-cart"> 131 <div class="cart-f"><a class="cart-ing" href="/cart"> 132 <i class="fa fa-shopping-cart" aria-hidden="true" style="font-size: 20px;color:#fff"></i> 133 </a> 134 </div> 135 </div> 136 <header class="bg-transparent fixed " id="header"> 137 138 139 140<!-- <div id="slide-menu" class="menu"> 141 <button id="close-btn">×</button> 142 <ul> 143 <li> 144 <a class="nav-link active" aria-current="page" href="#">Home</a> 145 </li> 146 <li> 147 <a class="nav-link" href="#">About</a> 148 </li> 149 <li> 150 <a class="nav-link" href="#">Store</a> 151 </li> 152 <li> 153 <a class="nav-link" href="#">Service</a> 154 </li> 155 <li> 156 <a class="nav-link" href="#">Our Process</a> 157 </li> 158 <li> 159 <a class="nav-link" href="#">Gallery</a> 160 </li> 161 <li> 162 <a class="nav-link" href="#">Contact</a> 163 </li> 164 </ul> 165</div> --> 166 167 <nav class="navbar navbar-expand-lg navbar-light bg-transparent pb-0"> 168 <div class="container-fluid header-top"> 169 <!-- <button id="menu-btn">â°</button> --> 170 <a class="navbar-brand" href="/"> <img class="d-inline-block logo" src="/new-assets/img/gallery/LOGO-CV1.png" alt="logo" /> 171 </a> 172 173 <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarTogglerDemo01" aria-controls="navbarTogglerDemo01" aria-expanded="false" aria-label="Toggle navigation"> 174 <i class="fa fa-bars" aria-hidden="true"></i> 175 </button> 176 <div class="collapse navbar-collapse w-100" id="navbarTogglerDemo01"> 177 178 <ul class="navbar-nav ms-auto mb-2 mb-lg-0"> 179 <li class="nav-item"> 180 <a class="nav-link pt-0 text-uppercase" aria-current="page" href="https://paradisecabinets.ca">Home</a> 181 </li> 182 <li class="nav-item"> 183 <a class="nav-link pt-0 text-uppercase " href="/about">About</a> 184 </li> 185 <a class="nav-link pt-0 text-uppercase " href="/search">Store</a> 186 </li> 187 <li class="nav-item dropdown"> 188 <a class="nav-link pt-0 text-uppercase dropdown-toggle" id="navbarDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false" href="#">Service</a> 189 <ul class="dropdown-menu" aria-labelledby="navbarDropdown"> 190 <li><a class="dropdown-item " href="/kitchen">Kitchen</a></li> 191 <li><a class="dropdown-item " href="/design3d">3D Design</a></li> 192 <li><a href="/cabinet-Countertop-install" class="dropdown-item ">Cabinet/Countertop Install</a></li> 193 <li><a href="https://www.financeit.ca/s/l-RiBQ" class="dropdown-item ">Financing</a></li> 194 <li><a href="/bathroom-vanities" class="dropdown-item ">Bathroom Vanities</a></li> 195 <li><a href="/hybrid-kitchen" class="dropdown-item d-items">Hybrid Kitchen</a></li> 196 <li><a href="/kitchen-refacing" class="dropdown-item d-items">Kitchen Refacing</a></li> 197 <li><a href="/cabinet-refacing" class="dropdown-item d-items">Cabinet Refacing</a></li> 198 <li><a href="/before-after" class="dropdown-item d-items">Before & After Refacing</a></li> 199 </ul> 200 </li> 201 <li class="nav-item"> 202 <a class="nav-link pt-0 text-uppercase " href="/process">Our Process</a> 203 </li> 204 <li class="nav-item"> 205 <a class="nav-link pt-0 text-uppercase " href="/gallery">Gallery</a> 206 </li> 207 <li class="nav-item"> 208 <a class="nav-link pt-0 text-uppercase " href="/contact">Contact</a> 209 </li> 210 </ul> 211 </div> 212 <!-- <div class="search-container"> 213 <button class="search-icon"><svg fill="none" height="25" viewBox="0 0 20 20" width="25" xmlns="http://www.w3.org/2000/svg"><path d="M8.5 3C11.5376 3 14 5.46243 14 8.5C14 9.83879 13.5217 11.0659 12.7266 12.0196L16.8536 16.1464C17.0488 16.3417 17.0488 16.6583 16.8536 16.8536C16.68 17.0271 16.4106 17.0464 16.2157 16.9114L16.1464 16.8536L12.0196 12.7266C11.0659 13.5217 9.83879 14 8.5 14C5.46243 14 3 11.5376 3 8.5C3 5.46243 5.46243 3 8.5 3ZM8.5 4C6.01472 4 4 6.01472 4 8.5C4 10.9853 6.01472 13 8.5 13C10.9853 13 13 10.9853 13 8.5C13 6.01472 10.9853 4 8.5 4Z" fill="#fff"/></svg> 214 </button> 215 <input type="text" class="search-bar" placeholder="Search..."> 216 </div> --> 217 218 219 </div> 220</nav> 221 </header> 222 223 224 <div id="carouselExampleIndicators" class="carousel slide" data-bs-ride="carousel"> 225 226 <div class="carousel-inner"> 227 <div class="carousel-item height1 active"> 228 <img src="../new-assets/img/SK_HI_-_7.webp" class="d-block w-100" alt="..."> 229 <div class="carousel-caption2 d-none d-md-block"> 230 <p class="text-capitalize mb-0 top-letter">See</p> 231 <h1 class="text-uppercase heading-banner mb-0">Cart</h1> 232 </div> 233 </div> 234 235 </div> 236 237</div> 238 239 240 241<!-- ============================================--> 242 243 244 245 246<!-- ============================================--> 247<section class="py-5 mt-lg-5 mt-md-5">
248 <div class="container"> 249 <div class="row d-flex justify-content-center"> 250 <div class="col-md-12" data-aos="fade-up"> 251 <div class=" mb-4"> 252 <div class="py-3"> 253 <h5 class="mb-4"><span class="heading text-uppercase">Cart</span> - 0 Items</h5> 254 <hr> 255 </div> 256 <div class="card-body"> 257 <!-- Single item --> 258 <div class="d-flex justify-content-between w-100 align-items-center"> 259 <a href="/search" style=" border: 1px solid #000;padding:9px; color: #000; text-decoration: none;" class="btn btn-link"><i class="fa fa-arrow-circle-o-left" aria-hidden="true"></i> Continue Shopping</a> 260 <button type="button" class="btn btn-yellow btn-block" onclick="openModalCart()"> 261 Place Order <i class="fa fa-long-arrow-right" aria-hidden="true"></i> 262 </button> 263 </div> 264 265 266 </div> 267 </div> 268 <!-- <div class="card mb-4"> 269 <div class="card-body"> 270 <p><strong>Expected shipping delivery</strong></p> 271 <p class="mb-0">12.04.2024 - 14.04.2024</p> 272 </div> 273 </div> --> 274 <div class="card my-4 mb-lg-0"> 275 <div class="card-body text-center"> 276 <p><strong>We accept</strong></p> 277 <img class="me-2" width="85px" src="/new-assets/img/gallery/visa.svg" alt="Visa" /> 278 <img class="me-2" width="85px" src="/new-assets/img/gallery/amex.svg" alt="American Express" /> 279 <img class="me-2" width="85px" src="/new-assets/img/gallery/mastercard.svg" alt="Mastercard" /> 280 281 </div> 282 </div> 283 </div> 284 <div class="col-md-4 d-none" data-aos="fade-up"> 285 <div class="card mb-4"> 286 <div class="card-header py-3"> 287 <h5 class="mb-0">Summary</h5> 288 </div> 289 <div class="card-body"> 290 <ul class="list-group list-group-flush"> 291 <li class="list-group-item d-flex justify-content-between align-items-center border-0 px-0 pb-0"> 292 Products 293 <span class="total">$0</span> 294 </li> 295 <!-- <li class="list-group-item d-flex justify-content-between align-items-center px-0"> 296 Shipping 297 <span>Gratis</span> 298 </li> --> 299 <li class="list-group-item d-flex justify-content-between align-items-center border-0 px-0 mb-3"> 300 <div> 301 <strong>Total amount</strong> 302 <strong> 303 <p class="mb-0">(including VAT)</p> 304 </strong> 305 </div> 306 <span><strong class="total">$0</strong></span> 307 </li> 308 </ul> 309 310 <button type="button" class="btn btn-yellow btn-lg btn-block" onclick="openModalCart()"> 311 Confirm Order 312 </button> 313 314 </div> 315 </div> 316 </div> 317 </div> 318 </div> 319</section> 320 321 322<!-- <section> close ============================--> 323
324<script> 325 var btn = $("#button"); 326 327 $(window).scroll(function() { 328 if ($(window).scrollTop() > 300) { 329 btn.addClass("show"); 330 } else { 331 btn.removeClass("show"); 332 } 333 }); 334 335 btn.on("click", function(e) { 336 e.preventDefault(); 337 $("html, body").animate({ 338 scrollTop: 0 339 }, "300"); 340 }); 341</script>
vendor: 1 bytes, line 341
341
342<script> 343 AOS.init(); 344</script>
vendor: 1 bytes, line 344
344
345<script type="text/javascript"> 346 $(document).ready(function() { 347 $('.dropdown-toggle').dropdown(); 348 }); 349</script>
349 350<style> 351 .modal-show { 352 display: block !important; 353 } 354</style> 355 356<style> 357 .things > .content { 358 float: left; 359 width: 50%; 360 height: 500px; 361 -webkit-box-sizing: border-box; 362 -moz-box-sizing: border-box; 363 box-sizing: border-box; 364 position: relative; 365} 366 367.things > .content h1 { 368 font-family: "Arial", sans-serif; 369 text-transform: uppercase; 370 top: 0; 371 bottom: 0; 372 left: 0; 373 right: 0; 374 margin: auto; 375 position: absolute; 376 height: 150px; 377 color: #89323b; 378} 379 380/* Arrow */ 381 382.arrow { 383 position: relative; 384 margin: 0 auto; 385 width: 100px; 386} 387 388/* .arrow .curve { 389 border: 3px solid #ffbc08; 390 border-color: transparent transparent transparent #ffac01; 391 height: 519px; 392 width: 1200px; 393 border-radius: 150px 0 0 369px; 394 overflow-x: hidden; 395} */ 396 397/* .arrow .point { 398 position: absolute; 399 left: 107px; 400 top: 406px; 401} */ 402 403/* .arrow .point:before, 404.arrow .point:after { 405 border: 1px solid #fead01; 406 height: 45px; 407 content: ""; 408 position: absolute; 409} 410 411.arrow .point:before { 412 top: -11px; 413 left: -11px; 414 transform: rotate(-74deg); 415 -webkit-transform: rotate(-74deg); 416 -moz-transform: rotate(-74deg); 417 -ms-transform: rotate(-74deg); 418} 419 420.arrow .point:after { 421 top: -25px; 422 left: 13px; 423 transform: rotate(12deg); 424 -webkit-transform: rotate(12deg); 425 -moz-transform: rotate(12deg); 426 -ms-transform: rotate(12deg); 427} */ 428</style> 429
430<script> 431 function openModalCart() { 432 // document.getElementById('quotation-modal').classList.add('modal-show'); 433 document.getElementById('quotation-modal').showModal(); 434 // $('#quotation-modal').modal({ 435 // backdrop: 'static', 436 // keyboard: false 437 // }); 438 document.body.style.overflow = 'hidden'; 439 } 440</script>
440 441
442<script> 443 function increaseQuantity(cartId) { 444 const quantity = document.getElementById('quantity-' + cartId).value; 445 446 $.ajax({ 447 type: 'GET', 448 url: 'https://paradisecabinets.ca/add_cart_quantity', 449 datatype: 'json', 450 data: { 451 'cart_id': cartId, 452 'quantity': quantity, 453 }, 454 success: function(data) { 455 const obj = JSON.parse(data); 456 console.log(obj); 457 458 if (obj.new.code == 1) { 459 $('#quantity-' + cartId).val(obj.new.quantity); 460 // let priceElement = document.getElementById(`price-${cartId}`); 461 // priceElement.innerHTML = `<i class="fas fa-rupee-sign"></i><b>${obj.new.price}</b>`; 462 463 let totalElements = document.querySelectorAll('.total'); 464 Array.from(totalElements).forEach(totalElement => { 465 totalElement.innerHTML = `<i class="fas fa-rupee-sign"></i> <strong>${obj.new.subtotal}</strong>`; 466 }); 467 468 document.getElementById('total-save').innerText = obj.new.total_save; 469 document.getElementById('save-percentage').innerText = obj.new.save_percentage; 470 const newSubtotal = obj.new.price; 471 472 const currentProductSubtotal = document.querySelector(`[data-label="subtotal"][data-cart="${cartId}"]`); 473 currentProductSubtotal.innerText = newSubtotal; 474 } 475 }, 476 complete: function() {}, 477 error: function() {}, 478 }); 479 } 480 481 function decreaseQuantity(cartId) { 482 const quantity = document.getElementById('quantity-' + cartId).value; 483 484 if (quantity > 1) { 485 $.ajax({ 486 type: 'GET', 487 url: 'https://paradisecabinets.ca/minus_cart_quantity', 488 datatype: 'json', 489 data: { 490 'cart_id': cartId, 491 'quantity': quantity, 492 }, 493 success: function(data) { 494 const obj = JSON.parse(data); 495 496 if (obj.new.code == 1) { 497 $('#quantity-' + cartId).val(obj.new.quantity); 498 // let priceElement = document.getElementById(`price-${id}`); 499 // priceElement.innerHTML = `<i class="fas fa-rupee-sign"></i><b>${obj.new.price}</b>`; 500 501 let totalElements = document.querySelectorAll('.total'); 502 Array.from(totalElements).forEach(totalElement => { 503 totalElement.innerHTML = `<i class="fas fa-rupee-sign"></i> <strong>${obj.new.subtotal}</strong>`; 504 }); 505 506 document.getElementById('total-save').innerText = obj.new.total_save; 507 document.getElementById('save-percentage').innerText = obj.new.save_percentage; 508 const newSubtotal = obj.new.price; 509 510 const currentProductSubtotal = document.querySelector(`[data-label="subtotal"][data-cart="${cartId}"]`); 511 currentProductSubtotal.innerText = newSubtotal; 512 } 513 }, 514 complete: function() {}, 515 error: function() {}, 516 }); 517 } 518 } 519 520 function remove_item(id) { 521 $.ajax({ 522 type: 'POST', 523 url: 'https://paradisecabinets.ca/remove-item-from-cart', 524 datatype: 'json', 525 data: { 526 '_token': "8DnvOve5hCMQFP5yK1cshuhg9thECCQXYlMZsJg6", 527 'cart_id': id, 528 }, 529 success: function(data) { 530 const cartItems = document.querySelectorAll('#cart_row-' + id); 531 cartItems.forEach(item => { 532 item.remove(); 533 }); 534 535 const cartItem = document.getElementById('cart_row-' + id); 536 if (cartItem) { 537 cartItem.classList.add('d-none'); 538 } 539 540 let totalElements = document.querySelectorAll('.total'); 541 Array.from(totalElements).forEach(totalElement => { 542 totalElement.innerHTML = `<i class="fas fa-rupee-sign"></i> <strong>${data.subtotal}</strong>`; 543 }); 544 545 let totalItemCountElement = document.getElementById('total_cart_items'); 546 if (totalItemCountElement) { 547 totalItemCountElement.textContent = data.count; 548 } 549 550 let saveElement = document.getElementById('total-save'); 551 if (saveElement) { 552 saveElement.textContent = data.save_total; 553 } 554 555 let savePercentage = document.getElementById('save-percentage'); 556 if (savePercentage) { 557 savePercentage.textContent = data.save_percentage; 558 } 559 560 if (data.count === 0) { 561 window.location = '/' 562 } 563 564 Array.from(document.querySelectorAll('#cart_no')).forEac
564h(element => { 565 element.textContent = data.count; 566 }); 567 568 window.location.reload(); 569 }, 570 complete: function() {}, 571 error: function() {}, 572 }); 573 } 574</script>
574 575 576 577<!-- captcha style --> 578<style> 579 580.labelfot { 581 font-family: "Lato", sans-serif; 582 font-size: 18px; 583 text-align: left; 584 display: block; 585} 586 .captcha-container .input_field { 587 position: relative; 588 height: 45px; 589 margin-top: 15px; 590 } 591 592 .captcha-container .refresh_button { 593 position: absolute; 594 top: 50%; 595 right: 17px; 596 transform: translateY(-50%); 597 background: linear-gradient(360deg, #fed713, #ffaa00); 598 height: 40px; 599 width: 38px; 600 border: none; 601 border-radius: 4px; 602 color: #fff; 603 cursor: pointer; 604 } 605 606 .captcha-container .refresh_button:active { 607 transform: translateY(-50%) scale(0.98); 608 } 609 610 .captcha-container .input_field input, 611 .captcha-container .button button { 612 height: 100%; 613 width: 100%; 614 } 615 616 .captcha-container .message { 617 font-size: 14px; 618 margin: 14px 0; 619 color: #826afb; 620 display: none; 621 } 622 623 .captcha-container .message.active { 624 display: block; 625 } 626</style> 627 628 629<style> 630dialog{ 631 border:none; 632 padding: 0;; 633 max-width: 90vw; 634 width: 900px; 635} 636 637dialog::backdrop{ 638 backdrop-filter: blur(2px); 639} 640.modal { 641 background: white; 642 box-shadow: 0 0 15px rgba(0, 0, 0, 0.1); 643 max-width: 900px; 644} 645 646.modal-show{ 647 648 display: flex; 649 flex-direction: row; 650} 651 652.modal-content { 653 display: contents; 654 width: 100%; 655} 656 657.left-panel { 658 background: #0e0e0e; 659 background-image: url(/new-assets/img/gallery/4.jpg); 660 background-blend-mode: overlay; 661 background-size: cover; 662 color: white; 663 padding: 40px; 664 width:30%; 665 text-align: center; 666} 667 668.left-panel h1 { 669 margin: 0; 670 font-size: 16px; 671 color: #ffaa00; 672 margin-bottom: -1.5em; 673} 674 675.left-panel .save { 676 font-size: 18px; 677 margin: 20px 0 10px 0; 678} 679 680.left-panel .percentage { 681 font-size: 60px; 682 margin: 0; 683 font-weight: 800; 684 /* Sets the origin point of the rotation to the center of the element */ 685} 686 687.left-panel .off { 688 font-size: 24px; 689 margin: 0; 690} 691 692.left-panel .in-stores { 693 font-size: 14px; 694 margin-top: 20px; 695} 696 697.right-panel { 698 padding: 40px; 699 width:70%; 700 flex: 1; 701 text-align: center; 702 display: flex; 703 flex-direction: column; 704 justify-content: center; 705} 706 707.right-panel h2 { 708 font-size: 18px; 709 margin: 0 0 20px 0; 710} 711 712.right-panel p { 713 margin: 0 0 20px 0; 714 font-size: 16px; 715 color: #333; 716} 717 718.right-panel input { 719 padding: 10px; 720 font-size: 16px; 721 width: calc(100% - 22px); 722 margin-bottom: 20px; 723} 724 725.right-panel button { 726 color: white; 727 border: none; 728 padding: 10px; 729 font-size: 16px; 730 margin-bottom: 20px; 731 width: 75%; 732} 733 734.right-panel .no-thanks { 735 text-decoration: none; 736 color: #333; 737 font-size: 14px; 738 margin-bottom: 20px; 739} 740 741.right-panel .fine-print { 742 font-size: 12px; 743 color: #999; 744} 745 746 747</style> 748
749<script src="js/captcha.js"></script>
749 750 751 752 753 754 755 756 <!-- <section> begin ============================--> 757 <section class="py-0 pt-lg-7 pt-5 pt-md-7 bg-black"> 758 <div class="container"> 759 <div class="fixed-call1"> 760 <div class="cart-f1"><a class="cart-ing" href="tel:+12505645428"> 761 <i class="fa fa-phone" aria-hidden="true" style="font-size: 26px;color:#fff"></i> 762 </a> 763 </div> 764 </div> 765 <div class="row"> 766 <div class="col-md-6 col-lg-3 mb-3 text-white"> 767 <img class="d-inline-block mb-3" style="width:200px;" src="/new-assets/img/gallery/LOGO-CV1.png" alt="logo"> 768 <!-- <h5 class="lh-lg fw-light text-uppercase text-1000 text-white">Company Info</h5> --> 769 <span class="line"></span> 770 <ul class="list-unstyled mb-md-4 mb-lg-0"> 771 <li class="lh-lg"> 772 <a class="text-800 text-decoration-none text-white" href="/about" title="now disable">About Us</a> 773 </li> 774 <li class="lh-lg"> 775 <a class="text-800 text-decoration-none text-white" href="#">Blog</a> 776 </li> 777 </ul> 778 </div> 779 <div class="col-md-6 col-lg-2 mb-3"> 780 <h5 class="lh-lg fw-light text-uppercase text-1000 text-white">Services</h5> 781 <span class="line"></span> 782 <ul class="list-unstyled mb-md-4 mb-lg-0"> 783 <li class="lh-lg"> 784 <a class="text-800 text-decoration-none text-white" href="/kitchen">Kitchen 785 Design</a> 786 </li> 787 <li class="lh-lg"> 788 <a class="text-800 text-decoration-none text-white" href="/design3d">3D Design </a> 789 </li> 790 <li class="lh-lg"> 791 <a class="text-800 text-decoration-none text-white" href="/cabinet-Countertop-install">Cabinet Install</a> 792 </li> 793 <li class="lh-lg"> 794 <a class="text-800 text-decoration-none text-white" href="https://www.financeit.ca/s/l-RiBQ">Financing</a> 795 </li> 796 <li class="lh-lg"> 797 <a class="text-800 text-decoration-none text-white" href="/hybrid-kitchen/">Hybrid Kitchen</a> 798 </li> 799 <li class="lh-lg"> 800 <a class="text-800 text-decoration-none text-white" href="/kitchen-refacing/">Kitchen Refacing</a> 801 </li> 802 <li class="lh-lg"> 803 <a class="text-800 text-decoration-none text-white" href="/cabinet-refacing/">Cabinet Refacing</a> 804 </li> 805 <li class="lh-lg"> 806 <a class="text-800 text-decoration-none text-white" href="/before-after/">Before & After Refacing</a> 807 </ul> 808 </div> 809 <div class="col-md-6 col-lg-2 mb-3"> 810 <h5 class="lh-lg fw-light text-uppercase text-1000 text-white">Product</h5> 811 <span class="line"></span> 812 <ul class="list-unstyled mb-md-4 mb-lg-0"> 813 <li class="lh-lg"> 814 <a class="text-800 text-decoration-none text-white" href="#">Doors </a> 815 </li> 816 <li class="lh-lg"> 817 <a class="text-800 text-decoration-none text-white" href="#">Hardware</a> 818 </li> 819 <li class="lh-lg"> 820 <a class="text-800 text-decoration-none text-white" href="#">Accessories</a> 821 </li> 822 <li class="lh-lg"> 823 <a class="text-800 text-decoration-none text-white" href="#">Counters</a> 824 </li> 825 </ul> 826 </div> 827 <div class="col-md-6 col-lg-5 ms-auto"> 828 <h5 class="lh-lg fw-light text-uppercase text-1000 text-white">Signup For The Latest News</h5>
829 <span class="line"></span> 830 <p class="text-800 d-flex text-white"> 831 <span class=""><svg class="me-3" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" id="location" width="24" height="24"> 832 <g fill="#ffffff"> 833 <path d="m32 55.7-.9-1.1c-.6-.8-15.9-18.7-15.9-29.4 0-9.3 7.6-16.8 16.8-16.8S48.8 16 48.8 25.2c0 10.7-15.3 28.7-15.9 29.4l-.9 1.1zm0-45c-8 0-14.4 6.5-14.4 14.4 0 8.4 11.1 22.7 14.4 26.8 3.3-4.1 14.4-18.3 14.4-26.8 0-7.9-6.4-14.4-14.4-14.4z"></path> 834 <path d="M32 31.6c-3.5 0-6.4-2.9-6.4-6.4s2.9-6.4 6.4-6.4 6.4 2.9 6.4 6.4-2.9 6.4-6.4 6.4zm0-10.4c-2.2 0-4 1.8-4 4s1.8 4 4 4 4-1.8 4-4-1.8-4-4-4z"></path> 835 </g> 836 </svg></span> 837 <span class="text-800 text-white">2224 Queensway, Prince George, BC, Canada, V2L 5R5</span> 838 </p> 839 <p class="text-800 d-flex"> 840 <span class="d-flex align-items-center"><svg class="feather feather-phone me-3 text-white" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 841 <path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path> 842 </svg></span> 843 <span class="text-800 text-white">250 564 5428â</span> 844 </p> 845 <p class="text-800 d-flex"> 846 <span class="d-flex align-items-center"><svg class="feather feather-mail me-3 text-white" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 847 <path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path> 848 <polyline points="22,6 12,13 2,6"></polyline> 849 </svg></span> 850 <span class="text-800 text-white">[email protected]</span> 851 </p> 852 <p class="text-800 d-flex align-items-start"> 853 <span class="d-flex align-items-center mt-1"> 854 <svg class="feather feather-clock me-3 text-white" xmlns="http://www.w3.org/2000/svg" width="17" height="17" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"> 855 <circle cx="12" cy="12" r="10"></circle> 856 <polyline points="12,6 12,12 16,14"></polyline> 857 </svg> 858 </span> 859 860 <span class="text-white lh-lg"> 861 <strong>Business Hours:</strong><br> 862 Monday â Friday: 7:00 AM â 5:30 PM<br> 863 Saturday â Sunday: By Appointment Only 864 </span> 865 </p> 866 </div> 867 </div> 868 <div class="border-bottom border-1"></div> 869 <div class="row flex-center py-3"> 870 <div class="col-md-8 order-1 order-md-0"> 871 <p class="my-2 text-1000 text-center text-md-start text-white"> Copyright © 2026 All rights reserved 872 Paradise Cabinets 873 </p> 874 </div> 875 <div class="col-md-4"> 876 <div class="text-center text-md-end"> 877 <a style="color:#000;" target="blank" href="https://www.facebook.com/paradisecabinets/">
878 <span class="me-3 text-white" data-feather="facebook"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-facebook text-white"> 879 <path d="M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z"></path> 880 </svg></span> 881 </a> 882 <a style="color:#000;" target="blank" href="https://www.instagram.com/paradisecabinets"> 883 <span class="me-3 text-white" data-feather="instagram"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-instagram text-white"> 884 <rect x="2" y="2" width="20" height="20" rx="5" ry="5"></rect> 885 <path d="M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z"></path> 886 <line x1="17.5" y1="6.5" x2="17.51" y2="6.5"></line> 887 </svg></span> 888 </a> 889 890 </div> 891 </div> 892 </div> 893 </div> 894 </section> 895 </main> 896 897 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/swiper@9/swiper-bundle.min.css"> 898
898<script src="https://cdn.jsdelivr.net/npm/swiper@9/swiper-bundle.min.js"></script>
898 899
899<script> 900 const swiper = new Swiper(".swiper-slider", { 901 // Optional parameters 902 centeredSlides: true, 903 slidesPerView: 1, 904 grabCursor: true, 905 freeMode: false, 906 loop: true, 907 mousewheel: false, 908 keyboard: { 909 enabled: true 910 }, 911 912 // Enabled autoplay mode 913 autoplay: { 914 delay: 3000, 915 disableOnInteraction: false 916 }, 917 918 // If we need pagination 919 pagination: { 920 el: ".swiper-pagination", 921 dynamicBullets: false, 922 clickable: true 923 }, 924 925 // If we need navigation 926 navigation: { 927 nextEl: ".swiper-button-next", 928 prevEl: ".swiper-button-prev" 929 }, 930 931 // Responsive breakpoints 932 breakpoints: { 933 640: { 934 slidesPerView: 1.25, 935 spaceBetween: 20 936 }, 937 1024: { 938 slidesPerView: 1.5, 939 spaceBetween: 10 940 } 941 } 942}); 943 944 </script>
944 945
945<script> 946 const searchContainer = document.querySelector(".search-container"); 947 const searchIcon = document.querySelector(".search-icon"); 948 949 searchIcon.addEventListener("click", () => { 950 searchContainer.classList.toggle("active"); 951 }); 952 </script>
952 953 954
954<script> 955 // document.addEventListener("DOMContentLoaded", function () { 956 // let text = document.getElementById("text"); 957 // let button = document.getElementById("toggle-btn"); 958 959 // // Clone element to calculate full height 960 // let clone = text.cloneNode(true); 961 // clone.style.position = "absolute"; 962 // clone.style.visibility = "hidden"; 963 // clone.style.width = text.clientWidth + "px"; 964 // clone.style.maxHeight = "none"; 965 // clone.style.webkitLineClamp = "unset"; 966 // document.body.appendChild(clone); 967 968 // let fullHeight = clone.scrollHeight; 969 // document.body.removeChild(clone); // Clean up 970 971 // let maxHeight = parseInt(getComputedStyle(text).lineHeight) * 3; // Approximate height for 3 lines 972 973 // if (fullHeight > maxHeight) { 974 // button.style.display = "inline"; // Show button only if text is longer than 3 lines 975 // } 976 977 // // Read More Toggle 978 // button.addEventListener("click", function () { 979 // if (text.classList.contains("expanded")) { 980 // text.classList.remove("expanded"); 981 // this.textContent = "Read More"; 982 // } else { 983 // text.classList.add("expanded"); 984 // this.textContent = "Hide"; 985 // } 986 // }); 987 // }); 988 </script>
988 989 <link href="https://unpkg.com/[email protected]/dist/aos.css" rel="stylesheet"> 990
991<script src="https://unpkg.com/[email protected]/dist/aos.js"></script>
vendor: 1 bytes, line 991
991
992<script> 993 AOS.init(); 994</script>
994 995 996 997
997<script> 998document.addEventListener("DOMContentLoaded", function () { 999 const menu = document.getElementById("slide-menu"); 1000 const openBtn = document.getElementById("menu-btn"); 1001 const closeBtn = document.getElementById("close-btn"); 1002 1003 openBtn.addEventListener("click", () => { 1004 menu.style.left = "0"; 1005 }); 1006 1007 closeBtn.addEventListener("click", () => { 1008 menu.style.left = "-100%"; 1009 }); 1010 1011 // Close menu when clicking outside 1012 document.addEventListener("click", (e) => { 1013 if (!menu.contains(e.target) && e.target !== openBtn) { 1014 menu.style.left = "-100%"; 1015 } 1016 }); 1017}); 1018</script>
vendor: 1 bytes, line 1018
1018
1019<script> 1020 document.addEventListener("DOMContentLoaded", function () { 1021 const header = document.getElementById("header"); 1022 1023 window.addEventListener("scroll", function () { 1024 if (window.scrollY > 50) { 1025 header.classList.add("scrolled"); 1026 } else { 1027 header.classList.remove("scrolled"); 1028 } 1029 }); 1030}); 1031 </script>
1031 1032
1032<script> 1033 const btn = $("#button"); 1034 1035 $(window).scroll(function() { 1036 if ($(window).scrollTop() > 300) { 1037 btn.addClass("show"); 1038 } else { 1039 btn.removeClass("show"); 1040 } 1041 }); 1042 1043 btn.on("click", function(e) { 1044 e.preventDefault(); 1045 $("html, body").animate({ 1046 scrollTop: 0 1047 }, "300"); 1048 }); 1049 </script>
1049 1050
1050<script> 1051 document.addEventListener("DOMContentLoaded", () => { 1052 const counters = document.querySelectorAll(".counter"); 1053 1054 const startCounter = (counter) => { 1055 const target = +counter.getAttribute("data-target"); 1056 let count = 0; 1057 const speed = target / 100; // Adjust speed 1058 1059 const updateCounter = () => { 1060 count += speed; 1061 if (count < target) { 1062 counter.innerText = Math.ceil(count); 1063 requestAnimationFrame(updateCounter); 1064 } else { 1065 counter.innerText = target; 1066 } 1067 }; 1068 1069 updateCounter(); 1070 }; 1071 1072 // Trigger animation when in viewport 1073 const observer = new IntersectionObserver((entries) => { 1074 entries.forEach(entry => { 1075 if (entry.isIntersecting) { 1076 startCounter(entry.target); 1077 observer.unobserve(entry.target); 1078 } 1079 }); 1080 }, { threshold: 0.5 }); 1081 1082 counters.forEach(counter => observer.observe(counter)); 1083}); 1084 </script>
1084 1085
1085<script> 1086 function myFunction() { 1087 var dots = document.getElementById("dots"); 1088 var moreText = document.getElementById("more"); 1089 var btnText = document.getElementById("myBtn"); 1090 1091 if (dots.style.display === "none") { 1092 dots.style.display = "inline"; 1093 btnText.innerHTML = "Read more"; 1094 moreText.style.display = "none"; 1095 } else { 1096 dots.style.display = "none"; 1097 btnText.innerHTML = "Read less"; 1098 moreText.style.display = "inline"; 1099 } 1100 } 1101 </script>
1101 1102
1102<script> 1103 AOS.init(); 1104 </script>
1104 1105
1105<script type="text/javascript"> 1106 $(document).ready(function() { 1107 $('.dropdown-toggle').dropdown(); 1108 }); 1109 </script>
1109 1110
1110<script src="vendors/@popperjs/popper.min.js"></script>
1110 1111
1111<script src="vendors/bootstrap/bootstrap.min.js"></script>
1111 1112
1112<script src="vendors/is/is.min.js"></script>
1112 1113
1113<script src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?features=window.scroll"></script>
1113 1114
1114<script src="vendors/feather-icons/feather.min.js"></script>
1114 1115
1115<script> 1116 feather.replace(); 1117 </script>
1117 1118
1118<script src="/new-assets/js/theme.js"></script>
1118 1119 1120 <link href="https://fonts.googleapis.com/css2?family=Jost:wght@200;300;400;500;600;700;800;900&display=swap" rel="stylesheet"> 1121 1122
1122<script> 1123 document.addEventListener("DOMContentLoaded", function () { 1124 let textBlocks = document.querySelectorAll(".text-container"); 1125 1126 textBlocks.forEach((text) => { 1127 let button = text.nextElementSibling; // Uska next button le lenge 1128 1129 // ð¹ Check karne ke liye ek hidden clone banayenge 1130 let clone = text.cloneNode(true); 1131 clone.style.display = "block"; 1132 clone.style.position = "absolute"; 1133 clone.style.visibility = "hidden"; 1134 clone.style.width = text.clientWidth + "px"; 1135 clone.style.whiteSpace = "normal"; 1136 clone.style.lineHeight = getComputedStyle(text).lineHeight; 1137 document.body.appendChild(clone); 1138 1139 let maxHeight = parseInt(getComputedStyle(text).lineHeight) * 3; // 3 lines ka height 1140 let fullHeight = clone.clientHeight; 1141 document.body.removeChild(clone); // Clone hata diya 1142 1143 if (fullHeight > maxHeight) { 1144 button.style.display = "inline"; // Button dikhayenge 1145 } 1146 1147 // Read More Toggle 1148 button.addEventListener("click", function () { 1149 if (text.classList.contains("expanded")) { 1150 text.classList.remove("expanded"); 1151 this.textContent = "Read More"; 1152 } else { 1153 text.classList.add("expanded"); 1154 this.textContent = "Hide"; 1155 } 1156 }); 1157 }); 1158 }); 1159 </script>
1159 1160
1160<script> 1161 document.addEventListener("DOMContentLoaded", function () { 1162 let textBlocks = document.querySelectorAll(".text-container1"); 1163 1164 textBlocks.forEach((text) => { 1165 let button = text.nextElementSibling; // Uska next button le lenge 1166 1167 // ð¹ Check karne ke liye ek hidden clone banayenge 1168 let clone = text.cloneNode(true); 1169 clone.style.display = "block"; 1170 clone.style.position = "absolute"; 1171 clone.style.visibility = "hidden"; 1172 clone.style.width = text.clientWidth + "px"; 1173 clone.style.whiteSpace = "normal"; 1174 clone.style.lineHeight = getComputedStyle(text).lineHeight; 1175 document.body.appendChild(clone); 1176 1177 let maxHeight = parseInt(getComputedStyle(text).lineHeight) * 3; // 3 lines ka height 1178 let fullHeight = clone.clientHeight; 1179 document.body.removeChild(clone); // Clone hata diya 1180 1181 if (fullHeight > maxHeight) { 1182 button.style.display = "inline"; // Button dikhayenge 1183 } 1184 1185 // Read More Toggle 1186 button.addEventListener("click", function () { 1187 if (text.classList.contains("expanded1")) { 1188 text.classList.remove("expanded1"); 1189 this.textContent = "Read More"; 1190 } else { 1191 text.classList.add("expanded1"); 1192 this.textContent = "Hide"; 1193 } 1194 }); 1195 }); 1196 }); 1197 </script>
vendor: 1 bytes, line 1197
1197
1198<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"NRJS-77a4e984b2ec8bf6a32","applicationID":"1051451015","transactionName":"M1BaYxNVDBJVAEdeVgoaeVQVXQ0PGwBSRU1KXFZTBEw=","queueTime":0,"applicationTime":129,"atts":"HxdZFVtPHxw=","errorBeacon":"bam.nr-data.net","agent":""}</script>
1198</body> 1199 1200</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.