PageSourceSearch

https://shopvillagefloristla.com/contact-us/

html shopvillagefloristla.com collected 2026-10-09 21:42:38 UTC 179,488 bytes, 1,817 lines download raw bytes

1<!DOCTYPE html>
2<html class="noIE" lang="en-US">
3<head>
3<script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={xpid:"UA4PVVdRGwUHV1NQBwU=",licenseKey:"0ac16663c3",applicationID:"6732204",browserID:"6732206"};;/*! For license information please see nr-loader-full-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)),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};
4e.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;
4const 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);
4if(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$:()=>
4o,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])}
4(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}
4;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
41:"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
4ine_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()=>
4{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)=>
4null==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})}
4),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
4imeToRegister: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})})}
4return 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"
4!==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);
4if(!(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)})});
4class 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
4h(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>
4
5<meta name="viewport" content="width=device-width, initial-scale=1">
6<link href="https://asset.bloomnation.com" rel="preconnect" crossorigin>
7<link rel="preconnect" href="https://fonts.googleapis.com">
8<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
9<link rel="preconnect" href="https://promfiles.com/" crossorigin>
10
11    <style>
12        :root {
13            --bn--default-font: 'Avenir', Helvetica, Arial, sans-serif;
14        }
15
16        @font-face {
17            font-display: swap;
18            font-family: 'Avenir';
19            src: local('Avenir'),
20            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-Regular.dbfaaeb9.woff2') format('woff2');
21            font-weight: 100;
22            unicode-range: U+000-5FF;
23        }
24
25        @font-face {
26            font-display: swap;
27            font-family: 'Avenir';
28            src: local('Avenir'),
29            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-Medium.8f8afa8e.woff2') format('woff2');
30            font-weight: 200;
31            unicode-range: U+000-5FF;
32        }
33
34        @font-face {
35            font-display: swap;
36            font-family: 'Avenir';
37            src: local('Avenir'),
38            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-UltraLight.d9fd23ba.woff2') format('woff2');
39            font-weight: 50;
40            unicode-range: U+000-5FF;
41        }
42
43        @font-face {
44            font-display: swap;
45            font-family: 'Avenir';
46            src: local('Avenir'),
47            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-DemiBold.eea19314.woff2') format('woff2');
48            font-weight: 300;
49            unicode-range: U+000-5FF;
50        }
51
52        @font-face {
53            font-display: swap;
54            font-family: 'Avenir';
55            src: local('Avenir'),
56            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-Bold.b652524b.woff2') format('woff2');
57            font-weight: 400;
58            unicode-range: U+000-5FF;
59        }
60
61        * {
62            letter-spacing: 0 !important;
63            font-smoothing: antialiased;
64            -webkit-font-smoothing: antialiased;
65            -moz-font-smoothing: antialiased;
66            -o-font-smoothing: antialiased;
67        }
68
69        body {
70            --bn--primary-font: var(--bn--default-font);
71            font-family: var(--bn--primary-font);
72        }
73    </style>
74    <title>Contact Us | Village Florist</title>
75    <meta name="google-site-verification" content="spcHzNnoPy669oL3XIo7-DL0l5n2UytFyRWHl8oOhKo"/>
76    <meta name="description" content="Order fresh flowers online that are hand-delivered by the best local florists. Find local flower shops with same-day flower delivery and shop from unique flower arrangements designed by certified floral designers. Forget cheap flowers and discover that perfect gift for Mother's Day, birthdays, anniversaries, funerals, and all occasions."/>
77    <meta name="keywords" content=""/>
78    <meta name="robots" content="NOINDEX,NOFOLLOW"/>
79    <link rel="canonical" href="https://shopvillagefloristla.com/contact-us/"/>
80
81    <link rel="icon" href="https://asset.bloomnation.com/f_auto,q_auto/v1/vendor/global/favicon/favicon.ico" type="image/x-icon"/>
82    <link rel="shortcut icon" href="https://asset.bloomnation.com/f_auto,q_auto/v1/vendor/global/favicon/favicon.ico" type="image/x-icon"/>
83
84
85    
85<script type="text/javascript" src="https://promfiles.com/bloom/dist/js/lib/jquery/jquery-1.12.1.min.2a534122.js"></script>
85
86    
86<script>jQuery.noConflict();</script>
86
87    
87<script type="application/ld+json">{"@context":"https://schema.org/","@type":["Florist","LocalBusiness","Organization"],"@id":"https://shopvillagefloristla.com/#florist","name":"Village Florist","image":"https://asset.bloomnation.com/c_fit,dpr_2,f_auto,h_1002,q_auto,w_1000/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png","logo":"https://asset.bloomnation.com/c_fit,dpr_2,f_auto,h_1002,q_auto,w_1000/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png","url":"https://shopvillagefloristla.com/","address":{"@type":"PostalAddress","streetAddress":"17818 Chatsworth St.","addressLocality":"Granada Hills","addressRegion":"CA","postalCode":"91344","addressCountry":"US"},"telephone":"+18188327770","priceRange":"$$","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday"],"opens":"09:00","closes":"16:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Saturday","opens":"09:00","closes":"13:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-02-14","validThrough":"2027-02-14","opens":"09:00","closes":"14:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-05-09","validThrough":"2027-05-09","opens":"09:00","closes":"14:00"},{"@type":"OpeningHoursSpecification","validFrom":"2026-12-25","validThrough":"2026-12-25","opens":"00:00","closes":"00:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-09-06","validThrough":"2027-09-06","opens":"00:00","closes":"00:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-05-31","validThrough":"2027-05-31","opens":"00:00","closes":"00:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-01-01","validThrough":"2027-01-01","opens":"00:00","closes":"00:00"},{"@type":"OpeningHoursSpecification","validFrom":"2026-11-26","validThrough":"2026-11-26","opens":"00:00","closes":"00:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-02-15","validThrough":"2027-02-15","opens":"00:00","closes":"00:00"}],"areaServed":[{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Chatsworth"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Encino"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Van Nuys"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Northridge"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Sherwood Forest"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Porter Ranch"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"J B Lansing Co"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Ca State Univ Northridge"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Tarzana"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"CA","addressLocality":"Reseda"}}],"description":"Welcome to Village Florist, where we have been spreading joy and receiving endless accolades throughout Los Angeles since 1987. Our commitment to excellence in floral arrangements and personalized service has made us a beloved name in the community.\n\nOur passion for flowers is contagious, and we take pride in bringing your creative vision to life. Using only the freshest blooms, inspired palettes, and engaging textures, we create stunning arrangements that reflect your unique style and sensibili","sameAs":["https://www.facebook.com/VillageFloristLA?ref=hl","https://www.instagram.com/villageflorist","https://www.google.com/maps?cid=3383142577627091651","https://www.pinterest.com/khsing/","https://www.yelp.com/biz/village-florist-granada-hills-3","https://www.bloomnation.com/florist/village-florist/"],"geo":{"@type":"GeoCoordinates","longitude":-118.5222946,"latitude":34.2646578},"hasMerchantReturnPolicy":{"@type":"MerchantReturnPolicy","applicableCountry":"US","returnPolicyCategory":"https://schema.org/MerchantReturnNotPermitted","merchantReturnLink":"https://shopvillagefloristla.com/policies"},"hasShippingService":{"@type":"ShippingService","@id":"https://shopvillagefloristla.com/#delivery-service","name":"Local Hand Delivery","description":"Fresh flowers hand-delivered by your local florist","fulfillmentType":"FulfillmentTypeDelivery","handlingTime":{"@type":"ServicePeriod","businessDays":["Monday","Tuesday","Wednesday","Thursday","Frid
87ay","Saturday"],"duration":{"@type":"QuantitativeValue","minValue":0,"maxValue":0,"unitCode":"DAY"},"cutoffTime":"12:00:00-07:00"},"shippingConditions":[{"@type":"ShippingConditions","shippingDestination":{"@type":"DefinedRegion","addressCountry":"US"},"shippingRate":{"@type":"MonetaryAmount","value":"15","currency":"USD"},"transitTime":{"@type":"ServicePeriod","duration":{"@type":"QuantitativeValue","minValue":0,"maxValue":0,"unitCode":"DAY"}}}]},"aggregateRating":{"@type":"AggregateRating","ratingValue":"4.8079","reviewCount":"406","worstRating":"1","bestRating":"5","url":"https://www.bloomnation.com/florist/village-florist/reviews/"}}</script>
87
88
89<link rel="stylesheet" href="https://promfiles.com/bloom/dist/js/bloomnation/review-photos.8ea4dd02.css" />
90<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/premiumsites.min.77fefe30.css" media="all" />
91<link rel="preload" as="style" href="https://promfiles.com/bloom/dist/frontend/base/default/css/popup.0c21c495.css" onload="this.onload=null;this.rel='stylesheet'" /><noscript><link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/base/default/css/popup.0c21c495.css" /></noscript>
92<link rel="preload" as="style" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/components.min.b97c0703.css" onload="this.onload=null;this.rel='stylesheet'" /><noscript><link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/components.min.b97c0703.css" /></noscript>
93<script src="https://promfiles.com/bloom/dist/js/runtime.8353d46c.js"></script>
vendor: 1 bytes, line 93
93
94<script src="https://promfiles.com/bloom/dist/js/lib/ccard.0b909381.js"></script>
vendor: 1 bytes, line 94
94
95<script src="https://promfiles.com/bloom/dist/js/bloomnation/global.612205a7.js"></script>
vendor: 1 bytes, line 95
95
96<script src="https://promfiles.com/bloom/dist/js/bloomnation/forms/clear-validation-state.cb4122c4.js"></script>
vendor: 1 bytes, line 96
96
97<script src="https://promfiles.com/bloom/dist/js/bloomnation/ui/collapse.0ecc09a4.js"></script>
vendor: 1 bytes, line 97
97
98<script src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/runtime.ceb56166.js"></script>
vendor: 1 bytes, line 98
98
99<script src="https://promfiles.com/bloom/dist/js/popup/popup.eace3136.js" defer></script>
vendor: 1 bytes, line 99
99
100<script src="https://promfiles.com/bloom/dist/js/bloomnation/review-photos.59481161.js" defer></script>
vendor: 1 bytes, line 100
100
101<script src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/js/main-nav.05e9f99c.js" defer></script>
vendor: 1 bytes, line 101
101
102<script src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/js/wm-slider.2c143ae6.js" defer></script>
102
103
104
105
106    
107                    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro&amp;display=swap" media="print" onload="this.media='all'">
108                    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Nunito&amp;display=swap" media="print" onload="this.media='all'">
109    
110    <style id="bn__site_theme">
111
112                :root {
113                    --primary-font: Nunito, sans-serif;
114                    --site-max-width: 1100px;
115                    --body-bg: rgb(255, 255, 255);
116                    --body-text-color: rgb(51, 51, 51);
117                    --text-action-color: rgb(51, 51, 51);
118                    --button-text-color: rgb(255, 255, 255);
119                    --element-action-color: rgb(255, 255, 255);
120                    --header-bg: rgba(0, 0, 0, 0);
121                    --header-text-color: rgb(51, 51, 51);
122                    --footer-bg: rgba(0, 0, 0, 0);
123                    --footer-text-color: rgb(51, 51, 51);
124                    --menu-color: rgba(0, 0, 0, 0);
125                    --header-address-color: rgb(51, 51, 51);
126                    --my-account-color: rgb(51, 51, 51);
127                    --color-light: rgb(197, 197, 197);
128                    --card-action-color: rgb(51, 51, 51);
129                    --popular-pick-action-color: rgb(255, 255, 255);
130                    --decorative-font: Nunito, sans-serif;
131                    --body-text-color-active: #4c4c4c;
132                    --text-action-color-active: #4c4c4c;
133                    --element-action-color-active: #e6e6e6;
134                    --header-text-color-active: #4c4c4c;
135                    --footer-text-color-active: #4c4c4c;
136                    --card-action-color-active: #4c4c4c;
137                    --popular-pick-action-color-active: #e6e6e6;
138                }
139        
140        body {
141            font-family: var(--primary-font);
142        }
143
144        body:not(.cms-page-view) {
145            background: var(--body-bg);
146        }
147
148        .row {
149            max-width: var(--site-max-width);
150        }
151
152        a,
153        a:active,
154        a:visited {
155            color: var(--text-action-color);
156        }
157
158        a:hover {
159            color: var(--text-action-color-active);
160        }
161
162        #header {
163            background: var(--header-bg);
164        }
165
166        .my-account-mob .header-cartBtn {
167            background-color: transparent !important;
168        }
169
170        .header-cartBtn .header-cartIcon {
171            color: var(--header-icon-color, #333);
172        }
173
174        #header .header-nav.headerNav-wrapper {
175            background: var(--menu-color);
176        }
177
178        .information-heading .infoHeading-item {
179            color: var(--header-address-color);
180        }
181
182        .nav-itemText {
183            color: var(--header-text-color);
184        }
185
186        .nav-itemText:hover,
187        .nav-itemWrapper:hover,
188        .nav-item:hover {
189            color: var(--header-text-color-active);
190        }
191
192        .note-msg,
193        .listings .note-msg,
194        ul.disc,
195        .listings-sorting_options span,
196        span.pagination-page_count,
197        .designerschoice-index-view #content,
198        a.itemListings-subheaderLink,
199        .breadcrumb>li,
200        .breadcrumb li a,
201        ul.disc li a {
202            color: var(--body-text-color);
203        }
204
205        a.itemListings-subheaderLink:hover,
206        .breadcrumb>li:hover,
207        .breadcrumb li a:hover,
208        ul.disc li a:hover {
209            color: var(--body-text-color-active);
210        }
211
212        .cms-page-view .breadcrumb>li,
213        .cms-page-view .breadcrumb li a {
214            color: inherit;
215        }
216
217        .cms-page-view .breadcrumb li a:visited,
218        .cms-page-view .breadcrumb li a:active,
219        .cms-page-view .breadcrumb li a:hover {
220            color: inherit;
221        }
222
223        h1.banners-header {
224            color: var(--body-text-color);
225        }
226
227        h2.itemListings-header {
228            color: var(--body-text-color);
229        }
230
231        h3.itemListings-subheader {
232            color: var(--body-text-color);
233        }
234
235        .cms-index-aboutus #content,
236        .cms-index-aboutus #content h1[itemprop=name],
237        .cms-index-aboutus #content span[itemprop=description],
238        .cms-index-faq #content,
239        .cms-index-faq #content h1[itemprop=name],
240        .cms-index-faq #content span[itemprop=description],
241        .about-us-nlp__header,
242        .product_details-about-designer h3,
243        .product_details-about-designer span {
244            color: var(--body-text-color);
245        }
246
247        .cms-index-gallery #content,
248        .cms-index-gallery #content a {
249            color: var(--body-text-color);
250        }
251
252        .cms-index-gallery #content a:hover {
253            color: var(--body-text-color-active);
254        }
255
256        .listings .sidebar-sort > div.sidebar {
257            background: var(--color-light, #fff);
258        }
259
260        .listings .sidebar-sort > div.sidebar-best_selling {
261            background: var(--color-light, #fff);
262        }
263
264        h1.catalog-header {
265            color: var(--body-text-color);
266        }
267        .pagination > .active > a,
268        .pagination > .active > span,
269        .pagination > .active > a:hover,
270        .pagination > .active > span:hover,
271        .pagination > .active > a:focus,
272        .pagination > .active > span:focus {
273            border-color: var(--element-action-color);
274            color: var(--button-text-color);
275            background: var(--element-action-color);
276        }
277
278        .pagination > li > a,
279        .pagination > li > span,
280        .pagination > li > a:hover,
281        .pagination > li > span:hover {
282            color: var(--text-action-color);
283        }
284        a.search-results-empty__btn,
285        .btn-success,
286        .btn-update,
287        .btn-continue {
288            border-color: var(--element-action-color);
289            color: var(--button-text-color);
290            background: var(--element-action-color);
291        }
292
293        a.search-results-empty__btn:hover,
294        .btn-success:hover,
295        .btn-update:hover,
296        .btn-continue:hover,
297        .btn-success:focus,
298        .btn-success:active {
299            border-color: var(--element-action-color-active);
300            color: var(--button-text-color);
301            background: var(--element-action-color-active);
302        }
303        #footer {
304            background: var(--footer-bg);
305            color: var(--footer-text-color);
306        }
307
308        .footer-social_media {
309            background: var(--footer-bg);
310        }
311
312        section#footer #super-footer a,
313        section#footer #super-footer p,
314        section#footer a {
315            color: var(--footer-text-color);
316        }
317
318        section#footer #super-footer a:hover,
319        section#footer a:hover {
320            color: var(--footer-text-color-active);
321        }
322
323        #my-account_menu-label {
324            color: var(--my-account-color, #333);
325        }
326
327        .my-account-icon {
328            color: var(--header-icon-color, #333);
329        }
330
331        .link-default,
332        .link-default:visited,
333        .link-default:active,
334        .sidebar a,
335        .sidebar a:active,
336        .sidebar a:visited,
337        .delivery__content a,
338        .delivery__content a:active,
339        .delivery__content a:visited {
340            color: var(--card-action-color, #428bca);
341        }
342
343        a.link-default:hover,
344        .sidebar a:hover,
345        .delivery__content a:hover {
346            color: var(--card-action-color-active, #2a6496);
347        }
348
349        a.social__icon-link:hover {
350            color: var(--card-action-color-active, #2a6496);
351        }
352
353        .poppick_item a,
354        .poppick_item a:active,
355        .poppick_item a:visited {
356            color: var(--popular-pick-action-color, #428bca);
357        }
358
359        .poppick_item a:hover {
360            color: var(--popular-pick-action-color-active, #2a6496);
361        }
362
363        .social__icon-link,
364        .social__icon-link:active,
365        .social__icon-link:visited {
366            color: inherit;
367        }
368
369        .subscription-list-page__title,
370        .subscription-list-page__description,
371        .subscription-customize-form-section,
372        .subscription-customize-form-terms-section,
373        .subscription-customize-form__disclaimer,
374        .product-list__additional-info,
375        .subscription-customize-form__header {
376            color: var(--body-text-color);
377        }
378
379        .member_of_bloomnation-logo {
380            background: rgba(255,255,255,0.7);
381            border-radius: 12px;
382        }
383    </style>
384
385    <style>
386    :root {
387        --bn--primary-color: ;
388        --bn--secondary-color: ;
389        --bn--background-color: ;
390        --bn--mobile-menu-text-color: ;
391    }
392
393    /* Primary Color Classes */
394    
395    /* Secondary Color Classes */
396    
397    /* Background Color Classes */
398    
399    /* Background Color Classes */
400    </style>
401
402    <style data-id="vendor-css">
403        @import url('//fonts.googleapis.com/css?family=Source+Sans+Pro');@import url('//fonts.googleapis.com/css?family=Nunito');.banner-text{width:100%;min-height:4rem;background:#E496D0;text-align:center;padding-top:5px}.banner-link:hover{color:#333;text-decoration:none}.banner-link{color:#fff;font-weight:bold;font-size:2rem}.calendar-header{display:none}body{font-family:'Source Sans Pro',sans-serif;font-family:'Nunito',sans-serif}a{color:#333}a:hover{color:#5d5d5d}a:active,a:focus{color:#5d5d5d !important}.gallery-list span{color:#3b0915;text-align:center;width:100%}.row{max-width:1100px}.btn-success,.btn-success:focus,.btn-success:active,.btn-continue,.btn-update{background:#000;border:none;color:#fff !important}.btn-success:hover{background:#000}.btn-checkout{background-color:#000 !important;color:#fff}.designerschoice-index-view .btn-success{background:#000}.orderForm-additionalGiftContainer .item.item--extra.additional-gift .btn-success{background:#000}#slides{z-index:999999999}.banners-innerContainer.row #slides{max-width:none !important;width:100% !important;padding:0 !important}.slidesjs-control{width:100% !important}.slidesjs-container{padding:0 !important;max-width:none !important;width:100% !important}#header{border-bottom:1px solid #efefef}#header>.row{position:relative}.information-heading{position:absolute;width:500px;top:-20px;right:0;text-align:right}.company-logo img{max-width:170px;margin-top:-10px;float:left}.header-cart{float:right;margin-top:75px}#header .header-cart .cart_button{background:#000}.cart_button i{color:#fff}.cart_text{color:#fff}.header-nav{background:transparent;margin-top:15px}.nav-itemWrapper:nth-of-type(2) .nav-itemText{color:#3b0915;font-weight:bold !important;letter-spacing:1px !important;font-size:16px}.nav-itemWrapper:nth-of-type(2) .nav-item{border-top:1px solid #3b0915;border-bottom:1px solid #3b0915}.nav-itemText{font-size:12px}.nav-item{padding-right:13px;padding-left:13px}.banner--left{width:100%}.bar-quick_sort .search_bar>div,.bar-quick_select,.search_bar{background:#000}.bar-quick_select a,.bar-quick_select span{color:#fff}.bar-quick_sort .search_bar button{background:#c5c5c5;color:#000}.listings .sidebar-sort>div.sidebar{background:#c5c5c5}.sidebar .sorting-option-title{font-weight:bold !important}.featured_listings{display:none}@media only screen and (min-width:489px){.category-products .item{width:32.8%;display:inline-block;vertical-align:top;float:none}.category-products>.clearfix.visible-xs,.category-products>.clearfix.visible-md{display:none !important}}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{background-color:#000;border-color:#000;color:#fff !important}.pagination>li>a,.pagination>li>span{color:#000 !important}.delivery-change-zip{color:#3b0915 !important}.delivery-check-btn{color:#3b0915;border:1px solid #3b0915}.map-container img{height:100%}.checkout-page .company-logo img{max-width:150px;margin:-35px auto 15px auto}.checkout-page .header-logo{margin:0 auto}.header-secure-badge{float:right}.checkout-page .sidebar-inner{background:#fff !important;border:1px solid #efefef;border-top:0}#orderForm .btn.active div{box-shadow:inset 2px 2px #000,inset -2px -2px #000}#checkout .step-status a.verified{color:#3b0915 !important}.cms-aboutus .breadcrumb{display:none}.cms-seed-interactive .col-sm-10{float:none;margin:0 auto !important}.cms-seed-interactive .col-sm-10 img{margin-bottom:20px}@media only screen and (max-width:960px){.nav-item{padding-right:12px;padding-left:12px}}@media only screen and (max-width:942px){.nav-item{padding-right:10px;padding-left:10px}}@media only screen and (max-width:906px){.nav-item{padding-right:5px;padding-left:5px}}@media only screen and (max-width:816px) and (min-width:769px){.nav-itemText{font-size:11px}}@media only screen and (max-width:768px){.header-logo,.information-heading,.header-cart{width:100%;margin:0 auto;position:static}.information-heading{margin-top:-30px}.information-heading br{display:none}
403.information-heading span{display:inline}.company-logo img{float:none;margin:-40px auto 10px auto}.navigation{text-align:center;margin:0 auto}.header-nav{margin-top:-10px}.header-secure-badge{margin-top:-100px}.header-cart{margin-bottom:10px}}@media only screen and (max-width:767px){.company-logo img{margin-top:-35px}.header-nav{margin-top:-20px}.cms-index-index h3:after,.catalog-category-view .breadcrumb:after{display:none}}@media only screen and (max-width:414px){.header-cart{margin-top:-10px}.header-nav{margin-top:-25px}.checkout-page .company-logo img{max-width:135px}}@media only screen and (max-width:375px){.company-logo img{max-width:155px}.header-cart{margin-top:-15px}.header-nav{margin-top:-30px}.checkout-page .company-logo img{max-width:125px}}@media only screen and (max-width:320px){.company-logo img{max-width:135px}.header-nav{margin-top:-35px}.checkout-page .company-logo img{max-width:120px}}    </style>
404
405<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/website-manager.min.5a94f356.css" media="all">
406
407	<!-- [START] Analytics Content: [default] -->
408<!-- Google Tag Manager -->
409<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
410new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
411j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
412'https://www.googletagmanager.com/gtm.js?id='+i+dl+ '&gtm_cookies_win=x';f.parentNode.insertBefore(j,f);
413})(window,document,'script','dataLayer','GTM-TLR3ZL8');
414window.dataLayer = window.dataLayer || [];
415dataLayer.push({"ga4PsId":"G-RWY7QD072S","vendorAccountId":"vndr_XLqSxWPYz0sgXfAe"});            var pageMetadataEventObj = {
416                'event': 'pageMetadata',
417                'title': document.title,
418                'path': location.pathname,
419                'url': location.href,
420                'referrer': document.referrer,
421                'search': location.search,
422                'visitedDomain': 'villagefloristla.bloomnation.com',
423                'login': 'notLoggedIn'
424            };            pageMetadataEventObj['vendorDomain'] = 'shopvillagefloristla.com';        window.dataLayer.push(pageMetadataEventObj);window.dataLayer = window.dataLayer || [];
425dataLayer.push([]);
426</script>
426
427<!-- End Google Tag Manager -->
428	<!-- [END] Analytics Content: [default] -->
429<script>
430    //<![CDATA[
431    var FORM_KEY = (document.cookie.match(/(?:^|;\s*)_csrf=([^;]*)/) || [])[1] || '';
432    //]]>
433</script>
433
434
435                        <link rel="stylesheet" href="//fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@24,300,0,0" media="print" onload="this.media='all'">
436                    <meta name="google-site-verification" content="WRf84sAwDZsNzqv2AeQhzmqFktts_3GEBrdM1cn-m-4" />
437
438<!-- [START] Custom HTML --><!-- [END] Custom HTML --></head>
439<body class=" bloom-cms-sitepage-view cms-contact-us vendor-2597 bloom">
440
441
442    <a class="skip-to-mp" href="https://www.bloomnation.com/florist/village-florist/?nav=premium-accessibility" target="_self" rel="nofollow">For <abbr title="Americans with Disabilities Act">ADA</abbr> accessible experience, please visit https://www.bloomnation.com/florist/village-florist/?nav=premium-accessibility</a>
443
444<script>
445  (function () {
446    function ready(callback) {
447      if (document.readyState === 'loading') {
448        document.addEventListener('DOMContentLoaded', callback);
449      } else {
450        callback();
451      }
452    }
453
454    /**
455     * Height of an element that may still be display:none.
456     *
457     * getComputedStyle() reports the declared height, which is 'auto' whenever the stylesheet does
458     * not pin one — and parseInt('auto') is NaN. jQuery's .css('height') avoided that by briefly
459     * laying the element out off-screen, so do the same. layout.css currently does pin
460     * #header-accessibilityPopup at 205px, which is the only reason the simple read would work
461     * today; this keeps working if that ever changes.
462     */
463    function hiddenHeight(element) {
464      if (window.getComputedStyle(element).display !== 'none') {
465        return element.offsetHeight;
466      }
467
468      var style = element.style;
469      var saved = {
470        position: style.position,
471        visibility: style.visibility,
472        display: style.display
473      };
474
475      style.position = 'absolute';
476      style.visibility = 'hidden';
477      style.display = 'block';
478
479      var height = element.offsetHeight;
480
481      style.position = saved.position;
482      style.visibility = saved.visibility;
483      style.display = saved.display;
484
485      return height;
486    }
487
488    ready(function () {
489      var accessibilityBtn = document.querySelector('.accessibility-widget [data-accessibility-btn]');
490      var accessibilityPopup = document.querySelector('.accessibility-widget [data-accessibility-popup]');
491      var accessibilityOverlay = document.querySelector('.accessibility-widget-overlay');
492
493      if (!accessibilityBtn || !accessibilityPopup || !accessibilityOverlay) {
494        return;
495      }
496
497      // Must be the exact negative of the container height, so the popup tucks fully out of sight.
498      var popupHiddenHeight = hiddenHeight(accessibilityPopup) * -1;
499      var showHide = { attribute: 'top', show: '0px', hide: popupHiddenHeight + 'px' };
500
501      function checkPopupVisible() {
502        return window.getComputedStyle(accessibilityPopup)[showHide.attribute] === showHide.show;
503      }
504
505      function togglePopup(popup, button, action, data) {
506        popup.style[data.attribute] = data[action];
507        var show = action === 'show';
508        button.setAttribute('aria-expanded', String(show));
509        accessibilityOverlay.style.display = show ? 'block' : 'none';
510      }
511
512      function hideAccessibilityPopup() {
513        togglePopup(accessibilityPopup, accessibilityBtn, 'hide', showHide);
514      }
515
516      function showAccessibilityPopup() {
517        accessibilityPopup.style.display = 'block';
518        // Ensure the transition runs after the display:block above has been applied.
519        setTimeout(function () {
520          togglePopup(accessibilityPopup, accessibilityBtn, 'show', showHide);
521        }, 0);
522      }
523
524      function handleClickOutsidePopup() {
525        if (checkPopupVisible()) {
526          hideAccessibilityPopup();
527        }
528      }
529
530      accessibilityBtn.addEventListener('click', function () {
531        if (checkPopupVisible()) {
532          hideAccessibilityPopup();
533        } else {
534          showAccessibilityPopup();
535        }
536      });
537
538      accessibilityPopup.addEventListener('click', hideAccessibilityPopup);
539
540      accessibilityPopup.addEventListener('transitionend', function () {
541        if (!checkPopupVisible()) {
542          accessibilityPopup.style.display = 'none';
543        }
544      });
545
546      accessibilityOverlay.addEventListener('click', handleClickOutsidePopup);
547    });
548  })();
549</script>
549
550
551
552<div class="accessibility-widget">
553    <div class="accessibility-widget-overlay" aria-hidden="true"></div>
554    <div class="header-accessibilityInnerContainer">
555        <button
556            id="header-accessibilityPopupBtn"
557            aria-haspopup="true"
558            aria-expanded="false"
559            aria-controls="header-accessibilityPopup"
560            aria-label="Accessibility Information"
561            data-accessibility-btn
562        >
563        <svg class="ada-icon-dot" width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">
564            <circle cx="21" cy="21" r="21" fill="#017AFF"/>
565            <path d="M20.7462 7C22.039 7 23.0857 8.03517 23.0857 9.30595C23.0857 10.585 22.039 11.6201 20.7462 11.6201C19.4624 11.6201 18.416 10.5846 18.4153 9.30595C18.4153 8.03517 19.4617 7 20.7462 7ZM30.8597 14.4567L23.9163 15.3247L23.9192 22.201L27.283 33.31C27.4607 34.0115 27.0344 34.7133 26.333 34.8866C25.6319 35.0599 24.9149 34.6779 24.7383 33.9764L21.2923 23.8639H20.2311L17.061 34.1862C16.7957 34.8598 16.0374 35.1695 15.3573 34.907C14.6838 34.6471 14.2726 33.8887 14.5383 33.2152L17.45 22.3134V15.3247L11.0532 14.4635C10.3967 14.4113 9.95079 13.8394 10.0044 13.1899C10.0525 12.5354 10.6497 12.0495 11.3059 12.1017L19.0777 12.7638H22.486L30.7619 12.0888C31.4196 12.0627 31.9769 12.5687 31.999 13.2243C32.0254 13.8752 31.5176 14.4299 30.8597 14.4567Z" fill="white"/>
566        </svg>
567        <svg class="ada-icon-tab" width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">
568            <path fill-rule="evenodd" clip-rule="evenodd" d="M42 22.4583C42 33.2509 32.598 42 21 42C9.40202 42 0 33.2509 0 22.4583V21V0H21H42V21V22.4583Z" fill="#017AFF"/>
569            <path d="M20.7462 7C22.039 7 23.0857 8.03517 23.0857 9.30595C23.0857 10.585 22.039 11.6201 20.7462 11.6201C19.4624 11.6201 18.416 10.5846 18.4153 9.30595C18.4153 8.03517 19.4617 7 20.7462 7ZM30.8597 14.4567L23.9163 15.3247L23.9192 22.201L27.283 33.31C27.4607 34.0115 27.0344 34.7133 26.333 34.8866C25.6319 35.0599 24.9149 34.6779 24.7383 33.9764L21.2923 23.8639H20.2311L17.061 34.1862C16.7957 34.8598 16.0374 35.1695 15.3573 34.907C14.6838 34.6471 14.2726 33.8887 14.5383 33.2152L17.45 22.3134V15.3247L11.0532 14.4635C10.3967 14.4113 9.95079 13.8394 10.0044 13.1899C10.0525 12.5354 10.6497 12.0495 11.3059 12.1017L19.0777 12.7638H22.486L30.7619 12.0888C31.4196 12.0627 31.9769 12.5687 31.999 13.2243C32.0254 13.8752 31.5176 14.4299 30.8597 14.4567Z" fill="white"/>
570        </svg>
571    </button>
572    <aside id="header-accessibilityPopup" aria-labelledby="header-accessibilityPopupBtn" data-accessibility-popup>
573        <p>For an accessible ADA experience, please <a href="https://www.bloomnation.com/florist/village-florist/?nav=premium-accessibility" rel="nofollow">visit our Marketplace.</a></p>
574        <p><a href="https://shopvillagefloristla.com/accessibility-statement/">Visit our Accessibility page</a> for further assistance or to learn more about our efforts.</p>
575    </aside>
576    </div>
577</div>
578
579
580	<!-- [START] Analytics Content: [default] -->
581<!-- Google Tag Manager (noscript) -->
582<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-TLR3ZL8&gtm_cookies_win=x%22"
583height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
584<!-- End Google Tag Manager (noscript) -->
585	<!-- [END] Analytics Content: [default] -->
586
587
588<script>
589    (function () {
590        /*
591         * A page restored from the back/forward cache is not re-executed, so the cart count, the
592         * logged-in state and any flash messages would be whatever they were when the visitor left.
593         * PageTransitionEvent.persisted is true only for that restore, so reload to rebuild the page
594         * server-side. This reads the native event directly; the jQuery version had to unwrap
595         * event.originalEvent to reach the same flag.
596         */
597        window.addEventListener('pageshow', function (event) {
598            if (event.persisted) {
599                window.location.reload();
600            }
601        });
602
603        /*
604         * Kill switch that freezes navigation: while window.forceDisableAllLinks is set, every
605         * anchor without a force-redirect attribute stops navigating. Nothing in this repository
606         * sets the flag, so this does nothing unless a script injected into the page turns it on.
607         *
608         * The jQuery version bound a handler to every anchor present at DOM ready and did nothing at
609         * all on the flag-is-off path. One listener costs nothing while the flag is off and also
610         * covers anchors added after DOM ready — but it has to run in the capture phase to match
611         * the old reach: dropdown-nav.js stops propagation on every .dropdown-toggle and
612         * .dropdown-content click, as does toggleDropdown() in topMobile.phtml, so a listener
613         * delegated on the bubble phase would never see the desktop subnav links at all.
614         */
615        document.addEventListener('click', function (event) {
616            if (!window.forceDisableAllLinks) {
617                return;
618            }
619
620            var target = event.target;
621            var link = target && typeof target.closest === 'function' ? target.closest('a') : null;
622
623            if (!link || link.hasAttribute('force-redirect')) {
624                return;
625            }
626
627            event.preventDefault();
628            // Belt and braces: preventDefault alone has been seen to let a navigation through here.
629            link.setAttribute('href', '#');
630        }, true);
631    })();
632</script>
632
633
634<header id="header_mobile" class="header-mobile visible-xs text-center">
635    <table class="header-mobile-grid">
636        <tbody>
637            <tr>
638                <td class="menu-cell">
639                    <div class="menu-container">
640                        
641<nav class="navigation-mobile-wrapper">
642    <div class="navToggle-container nav-itemWrapper nav-itemWrapper--navToggle text-left">
643        <!-- Nav Toggle -->
644        <button
645            id="navToggleMobile"
646            class="nav-toggle-mobile nav-item nav-item-mobile nav-item--navToggle text-center"
647            aria-controls="navigationMobile"
648            aria-expanded="false"
649            title="Main Navigation">
650            <i class="fa fa-reorder"></i>
651        </button>
652    </div>
653    <ul class="navigation col-md-12 navigation-mobile" id="navigationMobile">
654        <li class="nav-itemWrapper text-right">
655
656                            <a href="https://shopvillagefloristla.com/customer/account/create/" class="nav-item nav-item-mobile account-link">
657                    <span class="nav-itemText mobile-menu-text-color">Sign Up</span>
658                </a>
659                    <span class="nav-itemText mobile-menu-text-color sign-up-log-in-separator">/</span>
660                <a href="https://shopvillagefloristla.com/customer/account/login/" class="nav-item nav-item-mobile account-link">
661                    <span class="nav-itemText mobile-menu-text-color">Log in</span>
662                </a>
663            
664        </li>
665                                    <li class="nav-itemWrapper text-left">
666                    <a class="nav-item" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/" target="_self">
667                        <span class="nav-itemText mobile-menu-text-color">Shop Now</span>
668                    </a>
669                </li>
670                                                <li class="dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown text-left">
671                    <a class="dropdown-toggle nav-item nav-item-mobile nav-item--dropdown" role="button" data-target="#" data-toggle="dropdown">
672                        <span class="nav-itemText mobile-menu-text-color">Occasions &#x25BE;</span>
673                    </a>
674                    <ul class="subnav dropdown-menu header-subnav" role="menu">
675                                                    <li class="subnav-itemWrapper text-left">
676                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/anniversary-flowers/" target="_self">
677                                    <span class="nav-itemText mobile-menu-text-color">Anniversary</span>
678                                </a>
679                            </li>
680                                                    <li class="subnav-itemWrapper text-left">
681                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/thank-you-flowers/" target="_self">
682                                    <span class="nav-itemText mobile-menu-text-color">Thank You</span>
683                                </a>
684                            </li>
685                                                    <li class="subnav-itemWrapper text-left">
686                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/birthday-flowers/" target="_self">
687                                    <span class="nav-itemText mobile-menu-text-color">Birthday</span>
688                                </a>
689                            </li>
690                                                    <li class="subnav-itemWrapper text-left">
691                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/get-well-flowers/" target="_self">
692                                    <span class="nav-itemText mobile-menu-text-color">Get Well</span>
693                                </a>
694                            </li>
695                                                    <li class="subnav-itemWrapper text-left">
696                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/love-and-romance-flowers/" target="_self">
697                                    <span class="nav-itemText mobile-menu-text-color">Love and Romance</span>
698                                </a>
699                            </li>
700                                                    <li class="subnav-itemWrapper text-left">
701                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/congrats-flowers/" target="_self">
702                                    <span class="nav-itemText mobile-menu-text-color">Congrats</span>
703                                </a>
704                            </li>
705                                                    <li class="subnav-itemWrapper text-left">
706                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/just-because-flowers/" target="_self">
707                                    <span class="nav-itemText mobile-menu-text-color">Just Because</span>
708                                </a>
709                            </li>
710                                                    <li class="subnav-itemWrapper text-left">
711                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/new-baby-flowers/" target="_self">
712                                    <span class="nav-itemText mobile-menu-text-color">New Baby</span>
713                                </a>
714                            </li>
715                                                    <li class="subnav-itemWrapper text-left">
716                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/i-m-sorry-flowers/" target="_self">
717                                    <span class="nav-itemText mobile-menu-text-color">I'm Sorry</span>
718                                </a>
719                            </li>
720                                                    <li class="subnav-itemWrapper text-left">
721                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/sympathy-and-funeral-flowers/" target="_self">
722                                    <span class="nav-itemText mobile-menu-text-color">Sympathy and Funeral</span>
723                                </a>
724                            </li>
725                                                    <li class="subnav-itemWrapper text-left">
726                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/breast-cancer-awareness-month-flowers/" target="_self">
727                                    <span class="nav-itemText mobile-menu-text-color">Breast Cancer Awareness Month</span>
728                                </a>
729                            </li>
730                                                    <li class="subnav-itemWrapper text-left">
731                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/autumn-flowers/" target="_self">
732                                    <span class="nav-itemText mobile-menu-text-color">Autumn</span>
733                                </a>
734                            </li>
735                                                    <li class="subnav-itemWrapper text-left">
736                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/halloween-flowers/" target="_self">
737                                    <span class="nav-itemText mobile-menu-text-color">Halloween</span>
738                                </a>
739                            </li>
740                                                    <li class="subnav-itemWrapper text-left">
741                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/prom-flowers/" target="_self">
742                                    <span class="nav-itemText mobile-menu-text-color">Prom</span>
743                                </a>
744                            </li>
745                                                    <li class="subnav-itemWrapper text-left">
746                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/boss-s-day-flowers/" target="_self">
747                                    <span class="nav-itemText mobile-menu-text-color">Boss's Day </span>
748                                </a>
749                            </li>
750                                                    <li class="subnav-itemWrapper text-left">
751                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/quinceanera-flowers/" target="_self">
752                                    <span class="nav-itemText mobile-menu-text-color">Quinceañera</span>
753                                </a>
754                            </li>
755                                                    <li class="subnav-itemWrapper text-left">
756                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/retirement-flowers/" target="_self">
757                                    <span class="nav-itemText mobile-menu-text-color">Retirement</span>
758                                </a>
759                            </li>
760                                                    <li class="subnav-itemWrapper text-left">
761                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/housewarming-flowers/" target="_self">
762                                    <span class="nav-itemText mobile-menu-text-color">Housewarming</span>
763                                </a>
764                            </li>
765                                                    <li class="subnav-itemWrapper text-left">
766                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/thinking-of-you-flowers/" target="_self">
767                                    <span class="nav-itemText mobile-menu-text-color">Thinking of You</span>
768                                </a>
769                            </li>
770                                            </ul>
771                </li>
772                                                <li class="nav-itemWrapper text-left">
773                    <a class="nav-item" href="https://www.villageflorist-events.com/" target="_self">
774                        <span class="nav-itemText mobile-menu-text-color">Weddings and Events</span>
775                    </a>
776                </li>
777                                                <li class="nav-itemWrapper text-left">
778                    <a class="nav-item" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/occasions/sympathy-and-funeral/" target="_self">
779                        <span class="nav-itemText mobile-menu-text-color">Sympathy and Funeral</span>
780                    </a>
781                </li>
782                                                <li class="nav-itemWrapper text-left">
783                    <a class="nav-item" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/gift-sets-flowers/" target="_self">
784                        <span class="nav-itemText mobile-menu-text-color">Gift Items</span>
785                    </a>
786                </li>
787                                                <li class="nav-itemWrapper text-left">
788                    <a class="nav-item" href="https://shopvillagefloristla.com/about-us/" target="_self">
789                        <span class="nav-itemText mobile-menu-text-color">About Us</span>
790                    </a>
791                </li>
792                                                <li class="nav-itemWrapper text-left">
793                    <a class="nav-item" href="https://shopvillagefloristla.com/contact-us/" target="_self">
794                        <span class="nav-itemText mobile-menu-text-color">Contact Us</span>
795                    </a>
796                </li>
797                                </ul>
798    <div class="background-overlay" id="mobileBackgroundOverlay"></div>
799</nav>
800<script type="text/javascript">
801    (function () {
802        function ready(callback) {
803            if (document.readyState === 'loading') {
804                document.addEventListener('DOMContentLoaded', callback);
805            } else {
806                callback();
807            }
808        }
809
810        function each(selector, callback, root) {
811            Array.prototype.forEach.call((root || document).querySelectorAll(selector), callback);
812        }
813
814        // jQuery's :visible test, which is what the checks below used to run through.
815        function isVisible(element) {
816            return !!(element.offsetWidth || element.offsetHeight || element.getClientRects().length);
817        }
818
819        /*
820         * jQuery's .width(): the content-box width, as a number. Not getComputedStyle().width, which
821         * resolves to the border box under the border-box sizing Bootstrap applies globally. Like
822         * jQuery it also measures a display:none element, by laying it out off-screen — #header_mobile
823         * carries visible-xs, so it is hidden on desktop.
824         */
825        function contentWidth(element) {
826            if (window.getComputedStyle(element).display === 'none') {
827                return swapMeasure(element, measureContentWidth);
828            }
829
830            return measureContentWidth(element);
831        }
832
833        function measureContentWidth(element) {
834            var styles = window.getComputedStyle(element);
835
836            return element.offsetWidth
837                - (parseFloat(styles.paddingLeft) || 0)
838                - (parseFloat(styles.paddingRight) || 0)
839                - (parseFloat(styles.borderLeftWidth) || 0)
840                - (parseFloat(styles.borderRightWidth) || 0);
841        }
842
843        /*
844         * jQuery's swap() with cssShow: lay a hidden element out off-screen just long enough to
845         * measure. The measure callback must not re-test display itself — Bootstrap's visible-xs is
846         * `display: none !important` above 768px, which an inline style cannot beat, so the swap does
847         * not actually reveal #header_mobile and a self-recursive version would never terminate.
848         */
849        function swapMeasure(element, measure) {
850            var style = element.style;
851            var saved = {
852                position: style.position,
853                visibility: style.visibility,
854                display: style.display
855            };
856
857            style.position = 'absolute';
858            style.visibility = 'hidden';
859            style.display = 'block';
860
861            var measured = measure(element);
862
863            style.position = saved.position;
864            style.visibility = saved.visibility;
865            style.display = saved.display;
866
867            return measured;
868        }
869
870        // jQuery's $(document).height().
871        function documentHeight() {
872            var body = document.body;
873            var html = document.documentElement;
874
875            return Math.max(
876                body.scrollHeight,
877                body.offsetHeight,
878                html.clientHeight,
879                html.scrollHeight,
880                html.offsetHeight
881            );
882        }
883
884        /*
885         * Submenu open/close, replacing the $('.dropdown-toggle').dropdown() call that used to sit
886         * here. That call is what made the submenus toggle at all: the Bootstrap plugin binds
887         * Dropdown.prototype.toggle straight to each element, and because that handler returns false
888         * it also stops the click reaching Bootstrap's delegated [data-toggle=dropdown] handler on
889         * document. Without the direct handler the delegated one runs after clearMenus() has already
890         * removed the 'open' class, so it reads the menu as closed and re-opens it every time — a
891         * submenu that can never be closed. The port below keeps the direct-handler semantics
892         * (including getParent()'s data-target/href lookup and the second-click close) and works
893         * whether or not Bootstrap is on the page, which it will not be after BLOOM-17575's P9.
894         */
895        function dropdownParent(toggle) {
896            var selector = toggle.getAttribute('data-target');
897
898            if (!selector) {
899                var href = toggle.getAttribute('href');
900                selector = href && /#[A-Za-z]/.test(href) ? href.replace(/.*(?=#[^\s]*$)/, '') : null;
901            }
902
903            var target = null;
904
905            if (selector) {
906                try {
907                    target = document.querySelector(selector);
908                } catch (error) {
909                    // The mobile toggles carry data-target="#", which is not a valid selector.
910                    // jQuery quietly returned an empty set for it, so fall through to the parent.
911                    target = null;
912                }
913            }
914
915            return target || toggle.parentNode;
916        }
917
918        function closeOpenDropdowns() {
919            each('[data-toggle="dropdown"]', function (toggle) {
920                dropdownParent(toggle).classList.remove('open');
921            });
922        }
923
924        function toggleDropdown(event) {
925            var toggle = event.currentTarget;
926
927            if (toggle.classList.contains('disabled') || toggle.disabled) {
928                return;
929            }
930
931            var parent = dropdownParent(toggle);
932            var wasOpen = parent.classList.contains('open');
933
934            closeOpenDropdowns();
935
936            if (!wasOpen) {
937                parent.classList.add('open');
938                toggle.focus();
939            }
940
941            event.preventDefault();
942            // Bootstrap's handler returned false, which stopped the click reaching its own
943            // document-level handlers. Keep that so nothing toggles the menu a second time.
944            event.stopPropagation();
945        }
946
947        ready(function () {
948            each('.dropdown-toggle', function (toggle) {
949                toggle.addEventListener('click', toggleDropdown);
950            });
951
952            document.addEventListener('click', closeOpenDropdowns);
953
954            var navToggle = document.getElementById('navToggleMobile');
955            var navigationMobile = document.getElementById('navigationMobile');
956            var overlay = document.getElementById('mobileBackgroundOverlay');
957            var headerMobile = document.getElementById('header_mobile');
958            var body = document.body;
959
960            if (!navToggle || !navigationMobile || !overlay) {
961                return;
962            }
963
964            each('.dropdown-toggle', function (toggle) {
965                toggle.addEventListener('click', function (event) {
966                    if (isVisible(navigationMobile)) {
967                        return;
968                    }
969
970                    event.preventDefault();
971
972                    // A page carries several of these — one per desktop dropdown, plus the two
973                    // dropdown-nav templates — and .is(':visible') was true if ANY of them was
974                    // showing, so this has to ask all of them, not just the first.
975                    var desktopSubnavOpen = Array.prototype.some.call(
976                        document.querySelectorAll('.dropdown-content--arrownav-desktop'),
977                        isVisible
978                    );
979
980                    if (!desktopSubnavOpen) {
981                        return;
982                    }
983
984                    each('.dropdown-wrapper--hover', function (wrapper) {
985                        each('.dropdown-toggle', function (hoverToggle) {
986                            hoverToggle.setAttribute('aria-expanded', 'false');
987                        }, wrapper);
988                        each('.dropdown-content', function (content) {
989                            content.classList.remove('dropdown-content--visible');
990                        }, wrapper);
991                        wrapper.classList.remove('open');
992                    });
993                });
994            });
995
996            // Nav Toggle on click
997            navToggle.addEventListener('click', function () {
998                if (navigationMobile.classList.contains('open')) {
999                    hideMenu();
1000                } else {
1001                    showMenu();
1002                }
1003            });
1004
1005            overlay.addEventListener('click', function () {
1006                hideMenu();
1007            });
1008
1009            navigationMobile.addEventListener('touchstart', startTouch, { passive: false });
1010            navigationMobile.addEventListener('touchmove', moveTouch, { passive: false });
1011
1012            // Swipe Up / Down / Left / Right
1013            var initialX = null;
1014            var initialY = null;
1015
1016            function startTouch(e) {
1017                initialX = e.touches[0].clientX;
1018                initialY = e.touches[0].clientY;
1019            }
1020
1021            function moveTouch(e) {
1022                if (initialX === null) {
1023                    return;
1024                }
1025
1026                if (initialY === null) {
1027                    return;
1028                }
1029
1030                var currentX = e.touches[0].clientX;
1031                var currentY = e.touches[0].clientY;
1032
1033                var diffX = initialX - currentX;
1034                var diffY = initialY - currentY;
1035
1036                if (Math.abs(diffX) > Math.abs(diffY)) {
1037                    // sliding horizontally
1038                    if (diffX > 0) {
1039                        // swiped left
1040                        menuSlideLeft();
1041                    }
1042                }
1043
1044                initialX = null;
1045                initialY = null;
1046            }
1047
1048            /*
1049             * Stale selector, kept as it was: the toggle lives in .navToggle-container, a sibling of
1050             * .navigation-mobile rather than a child, so this has matched nothing for a long time.
1051             * Restoring the intent would hide the hamburger while the menu is open — a visible
1052             * change, and not this ticket's.
1053             */
1054            function setNavToggleDisplay(display) {
1055                each('.navigation-mobile .nav-itemWrapper--navToggle', function (wrapper) {
1056                    wrapper.style.display = display;
1057                });
1058            }
1059
1060            function showMenu() {
1061                navToggle.setAttribute('aria-expanded', 'true');
1062                navigationMobile.classList.add('open');
1063                var containerWidth = headerMobile ? contentWidth(headerMobile) : 0;
1064                setNavToggleDisplay('none');
1065                navigationMobile.style.width = (containerWidth * 0.8) + 'px';
1066                overlay.style.height = documentHeight() + 'px';
1067                // The stylesheet hides the overlay, so an empty display would leave it hidden.
1068                overlay.style.display = 'block';
1069                body.style.position = 'fixed';
1070            }
1071
1072            function hideMenu() {
1073                navToggle.setAttribute('aria-expanded', 'false');
1074                navigationMobile.classList.remove('open');
1075                setNavToggleDisplay('');
1076                navigationMobile.style.width = '';
1077                overlay.style.height = '0px';
1078                overlay.style.display = 'none';
1079                body.style.position = '';
1080            }
1081
1082            function menuSlideLeft() {
1083                var containerWidth = headerMobile ? contentWidth(headerMobile) : 0;
1084                var settled = false;
1085                var timer = null;
1086
1087                function settle(event) {
1088                    if (event && event.propertyName && event.propertyName !== 'margin-left') {
1089                        return;
1090                    }
1091
1092                    if (settled) {
1093                        return;
1094                    }
1095
1096                    settled = true;
1097                    window.clearTimeout(timer);
1098                    navigationMobile.removeEventListener('transitionend', settle);
1099                    navigationMobile.style.transition = '';
1100                    navigationMobile.style.marginLeft = '0px';
1101                    navigationMobile.style.width = '';
1102                    navigationMobile.style.height = '';
1103                    navigationMobile.style.top = '';
1104                    navigationMobile.classList.remove('open');
1105                    setNavToggleDisplay('');
1106                    overlay.style.height = '0px';
1107                    overlay.style.display = 'none';
1108                }
1109
1110                navigationMobile.addEventListener('transitionend', settle);
1111                // Fallback for the cases transitionend never fires: reduced motion, or a margin that
1112                // is already at the target value.
1113                timer = window.setTimeout(settle, 150);
1114
1115                navigationMobile.style.transition = 'margin-left 100ms linear';
1116                // Force a reflow so the transition starts from the current margin.
1117                void navigationMobile.offsetWidth;
1118                navigationMobile.style.marginLeft = -(containerWidth * 0.8) + 'px';
1119            }
1120        });
1121    })();
1122</script>
1122
1123                    </div>
1124                </td>
1125                <td class="logo-cell">
1126                    <div class="logo-container">
1127                        <a class="companyLogo-imgContainer" href="https://shopvillagefloristla.com/">
1128                                                        <img
1129                                class="companyLogo-img"
1130                                src="https://asset.bloomnation.com/c_fit,dpr_1,f_auto,h_602,q_auto,w_600/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png"
1131                                alt="Village Florist - Granada Hills, CA florist"
1132                                srcset="https://asset.bloomnation.com/c_fit%2Cdpr_1%2Cf_auto%2Ch_602%2Cq_auto%2Cw_600/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png 1x, https://asset.bloomnation.com/c_fit%2Cdpr_2%2Cf_auto%2Ch_602%2Cq_auto%2Cw_600/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png 2x"
1133                                                                    width="600"
1134                                    height="602"
1135                                                            />
1136                                                    </a>
1137                    </div>
1138                </td>
1139                <td class="cart-cell">
1140                    <div class="cart-container">
1141                        <a href="https://shopvillagefloristla.com/checkout/" class="mobile-cart-btn">
1142                            <div class="mobile-cart-icon-wrapper">
1143                                <span class="header-cartIcon mobile-menu-text-color" aria-hidden="true"><svg width="19" height="24" viewBox="0 0 19 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1144<path d="M2.33333 23.3333C1.69167 23.3333 1.14236 23.1049 0.685417 22.6479C0.228472 22.191 0 21.6417 0 21V7C0 6.35833 0.228472 5.80903 0.685417 5.35208C1.14236 4.89514 1.69167 4.66667 2.33333 4.66667H4.66667C4.66667 3.38333 5.12361 2.28472 6.0375 1.37083C6.95139 0.456945 8.05 0 9.33333 0C10.6167 0 11.7153 0.456945 12.6292 1.37083C13.5431 2.28472 14 3.38333 14 4.66667H16.3333C16.975 4.66667 17.5243 4.89514 17.9812 5.35208C18.4382 5.80903 18.6667 6.35833 18.6667 7V21C18.6667 21.6417 18.4382 22.191 17.9812 22.6479C17.5243 23.1049 16.975 23.3333 16.3333 23.3333H2.33333ZM2.33333 21H16.3333V7H14V9.33333C14 9.66389 13.8882 9.94097 13.6646 10.1646C13.441 10.3882 13.1639 10.5 12.8333 10.5C12.5028 10.5 12.2257 10.3882 12.0021 10.1646C11.7785 9.94097 11.6667 9.66389 11.6667 9.33333V7H7V9.33333C7 9.66389 6.88819 9.94097 6.66458 10.1646C6.44097 10.3882 6.16389 10.5 5.83333 10.5C5.50278 10.5 5.22569 10.3882 5.00208 10.1646C4.77847 9.94097 4.66667 9.66389 4.66667 9.33333V7H2.33333V21ZM7 4.66667H11.6667C11.6667 4.025 11.4382 3.4757 10.9812 3.01875C10.5243 2.56181 9.975 2.33333 9.33333 2.33333C8.69167 2.33333 8.14236 2.56181 7.68542 3.01875C7.22847 3.4757 7 4.025 7 4.66667Z" fill="currentColor"/>
1145</svg>
1146</span>
1147                                                            </div>
1148                        </a>
1149                    </div>
1150                </td>
1151            </tr>
1152        </tbody>
1153
1154    </table>
1155</header>
1156<header id="header" class="hidden-xs">
1157        <div class="row header-innerContainer">
1158        <div class="information-heading infoHeading hidden-xs col-sm-4 col-md-4">
1159                        <span class="infoHeading-item infoHeading-item--name">Village Florist</span>
1160            <span class="infoHeading-item infoHeading-item--address vendor-address">17818 Chatsworth St.<br />
1161            Granada Hills,
1162            CA            91344</span>
1163                            <span class="infoHeading-item infoHeading-item--phone">
1164                    <a href="tel:(818) 832-7770" class="phone-link">(818) 832-7770</a>
1165                </span>
1166                                            </div>
1167        <div class="header-logo col-xs-12 col-sm-4 col-md-4">
1168            <div class="company-logo">
1169                <a class="companyLogo-imgContainer" href="https://shopvillagefloristla.com/">
1170                                        <img
1171                        class="companyLogo-img"
1172                        src="https://asset.bloomnation.com/c_fit,dpr_1,f_auto,h_1002,q_auto,w_1000/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png"
1173                        alt="Village Florist - Granada Hills, CA florist"
1174                        srcset="https://asset.bloomnation.com/c_fit%2Cdpr_1%2Cf_auto%2Ch_1002%2Cq_auto%2Cw_1000/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png 1x, https://asset.bloomnation.com/c_fit%2Cdpr_2%2Cf_auto%2Ch_1002%2Cq_auto%2Cw_1000/v1/vendor/2597/profile/20250313101619_file_67d2b0739bcb9.png 2x"
1175                                                    width="1000"
1176                            height="1002"
1177                                            />
1178                                    </a>
1179            </div>
1180        </div>
1181        
1182<nav class="header-cart ps-header-cart col-xs-12 col-sm-4 col-md-4" aria-labelledby="ps-my-account_menu-label">
1183    <div class="ps-header-cartBtn-wrapper">
1184        <div class="ps-my-account-button-wrapper dropdown-wrapper">
1185            <button class="ps-my-account-button dropdown-toggle" aria-expanded="false" aria-haspopup="true">
1186                <span class="ps-my-account-button-text" id="ps-my-account_menu-label">My Account</span>
1187                <span class="ps-my-account-icon" aria-hidden="true"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1188<path d="M4.49166 17.6167C5.48333 16.8583 6.59166 16.2604 7.81666 15.8229C9.04166 15.3854 10.325 15.1667 11.6667 15.1667C13.0083 15.1667 14.2917 15.3854 15.5167 15.8229C16.7417 16.2604 17.85 16.8583 18.8417 17.6167C19.5222 16.8194 20.0521 15.9153 20.4312 14.9042C20.8104 13.893 21 12.8139 21 11.6667C21 9.08055 20.091 6.87847 18.2729 5.06041C16.4549 3.24236 14.2528 2.33333 11.6667 2.33333C9.08055 2.33333 6.87847 3.24236 5.06041 5.06041C3.24236 6.87847 2.33333 9.08055 2.33333 11.6667C2.33333 12.8139 2.52292 13.893 2.90208 14.9042C3.28125 15.9153 3.81111 16.8194 4.49166 17.6167ZM8.76458 11.6521C7.97708 10.8646 7.58333 9.89722 7.58333 8.75C7.58333 7.60277 7.97708 6.63541 8.76458 5.84791C9.55208 5.06041 10.5194 4.66666 11.6667 4.66666C12.8139 4.66666 13.7812 5.06041 14.5687 5.84791C15.3562 6.63541 15.75 7.60277 15.75 8.75C15.75 9.89722 15.3562 10.8646 14.5687 11.6521C13.7812 12.4396 12.8139 12.8333 11.6667 12.8333C10.5194 12.8333 9.55208 12.4396 8.76458 11.6521ZM11.6667 23.3333C10.0528 23.3333 8.53611 23.0271 7.11666 22.4146C5.69722 21.8021 4.4625 20.9708 3.4125 19.9208C2.3625 18.8708 1.53125 17.6361 0.91875 16.2167C0.30625 14.7972 0 13.2805 0 11.6667C0 10.0528 0.30625 8.53611 0.91875 7.11666C1.53125 5.69722 2.3625 4.4625 3.4125 3.4125C4.4625 2.3625 5.69722 1.53125 7.11666 0.91875C8.53611 0.30625 10.0528 0 11.6667 0C13.2805 0 14.7972 0.30625 16.2167 0.91875C17.6361 1.53125 18.8708 2.3625 19.9208 3.4125C20.9708 4.4625 21.8021 5.69722 22.4146 7.11666C23.0271 8.53611 23.3333 10.0528 23.3333 11.6667C23.3333 13.2805 23.0271 14.7972 22.4146 16.2167C21.8021 17.6361 20.9708 18.8708 19.9208 19.9208C18.8708 20.9708 17.6361 21.8021 16.2167 22.4146C14.7972 23.0271 13.2805 23.3333 11.6667 23.3333ZM14.5833 20.5479C15.4972 20.2465 16.3333 19.8139 17.0917 19.25C16.3333 18.6861 15.4972 18.2535 14.5833 17.9521C13.6694 17.6507 12.6972 17.5 11.6667 17.5C10.6361 17.5 9.66388 17.6507 8.75 17.9521C7.83611 18.2535 7 18.6861 6.24166 19.25C7 19.8139 7.83611 20.2465 8.75 20.5479C9.66388 20.8493 10.6361 21 11.6667 21C12.6972 21 13.6694 20.8493 14.5833 20.5479ZM12.9208 10.0042C13.2514 9.6736 13.4167 9.25555 13.4167 8.75C13.4167 8.24444 13.2514 7.82638 12.9208 7.49583C12.5903 7.16527 12.1722 7 11.6667 7C11.1611 7 10.743 7.16527 10.4125 7.49583C10.0819 7.82638 9.91666 8.24444 9.91666 8.75C9.91666 9.25555 10.0819 9.6736 10.4125 10.0042C10.743 10.3347 11.1611 10.5 11.6667 10.5C12.1722 10.5 12.5903 10.3347 12.9208 10.0042Z" fill="currentColor"/>
1189</svg>
1190</span>
1191            </button>
1192                            
1193<div id="dropdown-nav--js" class="dropdown-nav dropdown-nav--login dropdown-content dropdown-content--arrownav-desktop">
1194    <div class="dropdown-nav__arrow-up"></div>
1195    <div class="dropdown-nav__arrow-up--overlay"></div>
1196
1197    <ul class="dropdown-nav__list">
1198        <li class="dropdown-nav__list-item">
1199            <a class="dropdown-nav__link" href="https://shopvillagefloristla.com/customer/account/login/" tabindex="-1" rel="nofollow">
1200                <p class="icon material-symbols-outlined">login</p>
1201                <span>Log in</span>
1202            </a>
1203        </li>
1204        <li class="dropdown-nav__list-item">
1205            <a class="dropdown-nav__link" href="https://shopvillagefloristla.com/customer/account/create/" tabindex="-1" rel="nofollow">
1206                <p class="icon material-symbols-outlined">person</p>
1207                <span>Sign up</span>
1208            </a>
1209        </li>
1210            </ul>
1211</div>
1212                    </div>
1213
1214        <div class="ps-my-account-mob">
1215            <a href="https://shopvillagefloristla.com/checkout/" class="btn btn-outline ps-cart_button ps-header-cartBtn" aria-label="view cart with 0 items">
1216                <span class="ps-header-cart-icon" aria-hidden="true"><svg width="19" height="24" viewBox="0 0 19 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1217<path d="M2.33333 23.3333C1.69167 23.3333 1.14236 23.1049 0.685417 22.6479C0.228472 22.191 0 21.6417 0 21V7C0 6.35833 0.228472 5.80903 0.685417 5.35208C1.14236 4.89514 1.69167 4.66667 2.33333 4.66667H4.66667C4.66667 3.38333 5.12361 2.28472 6.0375 1.37083C6.95139 0.456945 8.05 0 9.33333 0C10.6167 0 11.7153 0.456945 12.6292 1.37083C13.5431 2.28472 14 3.38333 14 4.66667H16.3333C16.975 4.66667 17.5243 4.89514 17.9812 5.35208C18.4382 5.80903 18.6667 6.35833 18.6667 7V21C18.6667 21.6417 18.4382 22.191 17.9812 22.6479C17.5243 23.1049 16.975 23.3333 16.3333 23.3333H2.33333ZM2.33333 21H16.3333V7H14V9.33333C14 9.66389 13.8882 9.94097 13.6646 10.1646C13.441 10.3882 13.1639 10.5 12.8333 10.5C12.5028 10.5 12.2257 10.3882 12.0021 10.
12171646C11.7785 9.94097 11.6667 9.66389 11.6667 9.33333V7H7V9.33333C7 9.66389 6.88819 9.94097 6.66458 10.1646C6.44097 10.3882 6.16389 10.5 5.83333 10.5C5.50278 10.5 5.22569 10.3882 5.00208 10.1646C4.77847 9.94097 4.66667 9.66389 4.66667 9.33333V7H2.33333V21ZM7 4.66667H11.6667C11.6667 4.025 11.4382 3.4757 10.9812 3.01875C10.5243 2.56181 9.975 2.33333 9.33333 2.33333C8.69167 2.33333 8.14236 2.56181 7.68542 3.01875C7.22847 3.4757 7 4.025 7 4.66667Z" fill="currentColor"/>
1218</svg>
1219</span>
1220                <span class="ps-cart_text ps-header-cart-text">(0) Cart</span>
1221                            </a>
1222        </div>
1223    </div>
1224    <style>
1225        /* Account Management Cart Modifications (start) */
1226        .ps-header-cart .ps-header-cart-badge {
1227            display: none;
1228            background: transparent;
1229            color: var(--header-icon-color, #000);
1230            position: absolute;
1231            top: 69%;
1232            left: 50%;
1233            transform: translate(-50%, -50%);
1234            padding: 0;
1235            font-size: 10px;
1236            font-weight: 600 !important;
1237            line-height: 1;
1238            pointer-events: none;
1239        }
1240
1241        .ps-header-cart .ps-my-account-button-wrapper {
1242            display: none;
1243        }
1244
1245        #header .ps-header-cart .ps-cart_button {
1246            border: 0;
1247            padding: 0;
1248        }
1249
1250        .ps-my-account-button {
1251            background: none;
1252            border: none;
1253            padding: 0;
1254        }
1255
1256        .ps-my-account-mob {
1257            display: inline-block;
1258        }
1259
1260        .ps-my-account-button-text {
1261            color: var(--my-account-color, #000);
1262        }
1263
1264        @media only screen and (min-width: 768px) {
1265            .account-management-dropdown-nav,
1266            .ps-header-cart-text {
1267                display: none;
1268            }
1269
1270            .ps-header-cart .ps-my-account-button-wrapper {
1271                position: relative;
1272                display: inline-block;
1273                float: left;
1274                margin-top: 3px;
1275                margin-right: 5px;
1276                cursor: pointer;
1277            }
1278
1279            .ps-header-cart .ps-my-account-button-text {
1280                text-align: right;
1281            }
1282
1283            .ps-header-cart .ps-my-account-button-wrapper {
1284                display: inline-block;
1285            }
1286
1287            .ps-header-cart .ps-my-account-button #ps-my-account_menu-label {
1288                font-weight: 500 !important;
1289                display: inline-block;
1290            }
1291
1292            .ps-header-cart .ps-header-cart-badge {
1293                display: block;
1294            }
1295
1296            .ps-header-cartBtn-wrapper {
1297                float: right;
1298            }
1299
1300            .ps-header-cartBtn {
1301                float: none;
1302                position: relative;
1303                margin: 0;
1304                padding: 0 10px;
1305                width: auto;
1306                height: auto;
1307                border: 0;
1308            }
1309
1310            .ps-header-cart-icon {
1311                width: 25px;
1312                height: 25px;
1313                margin: 0;
1314                vertical-align: middle;
1315                display: inline-flex;
1316                align-items: center;
1317                justify-content: center;
1318                position: relative;
1319                top: 2px;
1320            }
1321
1322            .ps-header-cart-icon svg {
1323                width: 100%;
1324                height: 100%;
1325                display: block;
1326            }
1327            .ps-header-cart-icon svg path {
1328                fill: var(--header-icon-color, var(--my-account-color, #000));
1329            }
1330        }
1331
1332        .ps-my-account-icon {
1333            width: 25px;
1334            height: 25px;
1335            margin: 0 6px;
1336            vertical-align: middle;
1337            display: inline-flex;
1338            align-items: center;
1339            justify-content: center;
1340        }
1341
1342        .ps-my-account-icon svg {
1343            width: 100%;
1344            height: 100%;
1345            display: block;
1346        }
1347
1348        .ps-my-account-icon svg path {
1349            fill: var(--header-icon-color, var(--my-account-color, #000));
1350        }
1351
1352        .ps-my-account-button svg {
1353            width: 25px;
1354            height: 25px;
1355        }
1356
1357        /* Account Management Cart Modifications (end) */
1358    </style>
1359    
1359<script type="text/javascript" src="https://promfiles.com/bloom/dist/frontend/base/default/js/dropdown-nav.5e3dac90.js" defer></script>
1359
1360</nav>
1361        <div class="clearfix"></div>
1362    </div>
1363
1364    <div class="clearfix"></div>
1365    <nav class="header-nav headerNav-wrapper">
1366        <div class="row headerNav-innerContainer">
1367            
1368<ul id="main-nav" class="navigation col-md-12">
1369	<li class="navToggle-container nav-itemWrapper nav-itemWrapper--navToggle">
1370		<!-- Nav Toggle -->
1371		<a href="#" class="nav-toggle nav-item" id="main-nav-toggle" aria-haspopup="true" aria-expanded="false">
1372			<i class="fa fa-reorder"></i>
1373			<span class="nav-show">Menu <i class="fa fa-caret-down"></i></span>
1374			<span class="nav-hide">Hide <i class="fa fa-caret-up"></i></span>
1375		</a>
1376	</li>
1377						<li class="nav-itemWrapper">
1378				<a class="nav-item" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/" target="_self"><span class="nav-itemText">Shop Now</span></a>
1379			</li>
1380								<li class="dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown dropdown-wrapper dropdown-wrapper--hover">
1381				<button class="dropdown-toggle nav-item nav-item--dropdown dropdown-nav-toggle" aria-expanded="false" aria-haspopup="true">
1382					<span class="nav-itemText">
1383						Occasions &#x25BE;
1384					</span>
1385				</button>
1386				<ul class="subnav dropdown-menu header-subnav dropdown-content dropdown-content--arrownav-desktop" role="menu">
1387											<li class="subnav-itemWrapper">
1388							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/anniversary-flowers/" target="_self">Anniversary</a>
1389						</li>
1390											<li class="subnav-itemWrapper">
1391							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/thank-you-flowers/" target="_self">Thank You</a>
1392						</li>
1393											<li class="subnav-itemWrapper">
1394							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/birthday-flowers/" target="_self">Birthday</a>
1395						</li>
1396											<li class="subnav-itemWrapper">
1397							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/get-well-flowers/" target="_self">Get Well</a>
1398						</li>
1399											<li class="subnav-itemWrapper">
1400							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/love-and-romance-flowers/" target="_self">Love and Romance</a>
1401						</li>
1402											<li class="subnav-itemWrapper">
1403							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/congrats-flowers/" target="_self">Congrats</a>
1404						</li>
1405											<li class="subnav-itemWrapper">
1406							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/just-because-flowers/" target="_self">Just Because</a>
1407						</li>
1408											<li class="subnav-itemWrapper">
1409							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/new-baby-flowers/" target="_self">New Baby</a>
1410						</li>
1411											<li class="subnav-itemWrapper">
1412							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/i-m-sorry-flowers/" target="_self">I'm Sorry</a>
1413						</li>
1414											<li class="subnav-itemWrapper">
1415							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/sympathy-and-funeral-flowers/" target="_self">Sympathy and Funeral</a>
1416						</li>
1417											<li class="subnav-itemWrapper">
1418							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/breast-cancer-awareness-month-flowers/" target="_self">Breast Cancer Awareness Month</a>
1419						</li>
1420											<li class="subnav-itemWrapper">
1421							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/autumn-flowers/" target="_self">Autumn</a>
1422						</li>
1423											<li class="subnav-itemWrapper">
1424							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/halloween-flowers/" target="_self">Halloween</a>
1425						</li>
1426											<li class="subnav-itemWrapper">
1427							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/prom-flowers/" target="_self">Prom</a>
1428						</li>
1429											<li class="subnav-itemWrapper">
1430							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/boss-s-day-flowers/" target="_self">Boss's Day </a>
1431						</li>
1432											<li class="subnav-itemWrapper">
1433							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/quinceanera-flowers/" target="_self">Quinceañera</a>
1434						</li>
1435											<li class="subnav-itemWrapper">
1436							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/retirement-flowers/" target="_self">Retirement</a>
1437						</li>
1438											<li class="subnav-itemWrapper">
1439							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/housewarming-flowers/" target="_self">Housewarming</a>
1440						</li>
1441											<li class="subnav-itemWrapper">
1442							<a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/thinking-of-you-flowers/" target="_self">Thinking of You</a>
1443						</li>
1444									</ul>
1445			</li>
1446								<li class="nav-itemWrapper">
1447				<a class="nav-item" href="https://www.villageflorist-events.com/" target="_self"><span class="nav-itemText">Weddings and Events</span></a>
1448			</li>
1449								<li class="nav-itemWrapper">
1450				<a class="nav-item" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/occasions/sympathy-and-funeral/" target="_self"><span class="nav-itemText">Sympathy and Funeral</span></a>
1451			</li>
1452								<li class="nav-itemWrapper">
1453				<a class="nav-item" href="https://shopvillagefloristla.com/granada-hills-florist-flower-delivery/gift-sets-flowers/" target="_self"><span class="nav-itemText">Gift Items</span></a>
1454			</li>
1455								<li class="nav-itemWrapper">
1456				<a class="nav-item" href="https://shopvillagefloristla.com/about-us/" target="_self"><span class="nav-itemText">About Us</span></a>
1457			</li>
1458								<li class="nav-itemWrapper">
1459				<a class="nav-item" href="https://shopvillagefloristla.com/contact-us/" target="_self"><span class="nav-itemText">Contact Us</span></a>
1460			</li>
1461			    <li class="account-management-dropdown-nav dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown dropdown-wrapper">
1462        <button class="dropdown-toggle nav-item nav-item--dropdown" aria-expanded="false" aria-haspopup="true">
1463            <span class="nav-itemText">My Account &#x25BE;</span>
1464        </button>
1465        <ul class="subnav dropdown-menu header-subnav dropdown-content dropdown-content--arrownav-desktop" role="menu">
1466                        <li class="subnav-itemWrapper">
1467                <a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/customer/account/login/">Log in</a>
1468            </li>
1469            <li class="subnav-itemWrapper">
1470                <a class="nav-item nav-item--subnav" href="https://shopvillagefloristla.com/customer/account/create/">
1471                    Sign Up                </a>
1472            </li>
1473                    </ul>
1474    </li>
1475</ul>
1476        </div>
1477    </nav>
1478
1479        <div class="clearfix"></div>
1480</header>
1481    <noscript>
1482        <div class="global-site-notice noscript">
1483            <div class="notice-inner">
1484                <p>
1485                    <strong>JavaScript seems to be disabled in your browser.</strong><br />
1486                    You must have JavaScript enabled in your browser to utilize the functionality of this website.                </p>
1487            </div>
1488        </div>
1489    </noscript>
1490
1491<section id="content">
1492
1493    
1494
1495	<div class="row">
1496		
1497				      <ol class="breadcrumb col-md-12">
1498            <li class="home">
1499                            <a href="https://shopvillagefloristla.com/" title="Go to Home Page">Home</a>
1500                    </li>
1501            <li class="cms_page">
1502                            <strong>Contact Us</strong>
1503                    </li>
1504        </ol>
1505    			</div>
1506	 <div class="std"><div class="contact-us">
1507<div class="contact-us">
1508<h2 class="title">Get in Touch</h2>
1509<p class="title-blurb">Ask us about anything from a single stem to a full event!</p>
1510<div class="midrow">
1511<div class="midrowleft">
1512<h3>Address</h3>
1513<p>17818 Chatsworth St. <br /> Granada Hills, CA. 91344</p>
1514<h3>Hours</h3>
1515<p>Monday - Friday: 9:00am to 4:00pm <br /> Saturday: 9:00am to 12:00pm</p>
1516<p style="margin-top: 2rem;">Email: <a href="mailto:[email protected]">[email protected]</a> <br /> Phone:<a href="tel:(818) 832-7770">(818) 832-7770</a></p>
1517</div>
1518<div class="midrowright"><img class="imgimg" src="https://asset.bloomnation.com/f_auto,q_auto/v1/vendor/2597/cms/e922bc1f8246_1660598850.jpg" border="0" alt="" /></div>
1519</div>
1520<div class="botrow">
1521<div class="botrowleft"><img src="https://www.bloomnation.com/dist/js/tiny_mce/themes/advanced/img/trans.gif" border="0" width="100%" height="100%" data-mce-json="{'video':{},'params':{'src':'https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d13187.939146016828!2d-118.52305625861729!3d34.27444013873562!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x80c29a8d8ce7b0a9%3A0x2ef3563febf652c3!2sVillage%20Florist!5e0!3m2!1sen!2sus!4v1660598933391!5m2!1sen!2sus'},'hspace':null,'vspace':null,'align':null,'bgcolor':null}" /></div>
1522<div class="botrowright">
1523<div class="wufoo-form">
1524<div id="wufoo-z1b5nqlo13pjdyk">Fill out my <a href="https://vincabloomsgmailcom.wufoo.com/forms/z1b5nqlo13pjdyk">online form</a>.</div>
1525<script type="text/javascript">// <![CDATA[
1526var z1b5nqlo13pjdyk; (function(d, t) { var s = d.createElement(t), options = { 'userName':'vincabloomsgmailcom', 'formHash':'z1b5nqlo13pjdyk', 'autoResize':true, 'height':'517', 'async':true, 'host':'wufoo.com', 'header':'show', 'ssl':true }; s.src = ('https:' == d.location.protocol ?'https://':'http://') + 'secure.wufoo.com/scripts/embed/form.js'; s.onload = s.onreadystatechange = function() { var rs = this.readyState; if (rs) if (rs != 'complete') if (rs != 'loaded') return; try { z1b5nqlo13pjdyk = new WufooForm(); z1b5nqlo13pjdyk.initialize(options); z1b5nqlo13pjdyk.display(); } catch (e) { } }; var scr = d.getElementsByTagName(t)[0], par = scr.parentNode; par.insertBefore(s, scr); })(document, 'script');
1527// ]]></script>
1527
1528</div>
1529</div>
1530</div>
1531</div>
1532</div>
1533<style><!--
1534@import url('https://fonts.googleapis.com/css2?family=Sacramento&display=swap');
1535    @import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@300&display=swap');
1536    @import url('https://fonts.googleapis.com/css2?family=Zeyada&display=swap');
1537    @import url('https://fonts.googleapis.com/css2?family=Yantramanav:wght@300&display=swap');
1538
1539    @font-face {
1540    font-family: 'moontime';
1541    src: url(https://bn-premium-sites.s3-us-west-2.amazonaws.com/vendors/44/fonts/Dmitrii-Chirkov-MoonTime-2.otf);
1542    }
1543
1544    .contact-us {
1545        max-width: 900px;
1546        display: block;
1547        margin: 0 auto;
1548    }
1549    .contact-us h2 {
1550        /* font-family: 'Sacramento', cursive; */
1551        font-family: moontime;
1552        font-size: 6rem;
1553    }
1554    .contact-us h3,
1555    .contact-us h2 {
1556        text-align: center;
1557    }
1558    .title-blurb {
1559        font-size: 24px;
1560        color: #3b0915;
1561        text-align: center;
1562        /* font-family: 'Open Sans', sans-serif; */
1563        font-family: 'Yantramanav', sans-serif;
1564        margin-top: 1rem;
1565        margin-bottom: 0;
1566    }
1567    .midrowleft h3 {
1568        text-align: center;
1569        /* font-family: 'Sacramento', cursive; */
1570        font-family: moontime;
1571        margin-top: 2rem;
1572    }
1573    .midrowleft h3:nth-of-type(2) {
1574        margin-top: 2rem;
1575    }
1576    .midrowleft p {
1577        text-align: center;
1578        /* font-family: 'Open Sans', sans-serif; */
1579        font-family: 'Yantramanav', sans-serif;
1580    }
1581    .bold {
1582        font-size: 14px !important;
1583        font-weight: bold !important;
1584    }
1585    .midp {
1586        margin-top: 22rem;
1587    }
1588    .midrow {
1589        display: grid;
1590        grid-template-columns: repeat(2, 1fr);
1591    }
1592    .botrow {
1593        display: grid;
1594        grid-template-columns: repeat(2, 1fr);
1595        grid-gap: 2rem;
1596    }
1597    .botrowright p {
1598        text-align: center;
1599    }
1600    .botrowright a {
1601        color: #1171DF;
1602    }
1603    .botrowleft {
1604        margin-top: 4rem;
1605    }
1606    .imgimg {
1607        width: 100%;
1608        margin: 0 auto;
1609        display: block;
1610        margin-top: 3rem;
1611    }
1612    .linkz {
1613        color: #3b0915;
1614        font-weight: 900 !important;
1615        font-size: 16px;
1616    }
1617    @media only screen and (max-width: 768px) {
1618        .midrow {
1619            grid-template-columns: repeat(1, 1fr);
1620            margin: 2rem 0;
1621        }
1622        .imgimg {
1623            margin-top: 0;
1624        }
1625        .botrow {
1626            display: grid;
1627            grid-template-columns: repeat(1, 1fr);
1628        }
1629        .contact-us h2 {
1630            font-size: 6rem;
1631            padding: 0 14px;
1632        }
1633        .title-blurb {
1634            font-size: 16px;
1635            padding: 0 25px;
1636        }
1637        .linkz {
1638            font-size: 14px;
1639        }
1640    }
1641--></style></div></section>
1642
1643        <section id="footer" class="footer-inner">
1644        <div class="social_media footer-social_media">
1645            
1646            
1647            <div class="row social-innerContainer">
1648                                    <a href="https://www.instagram.com/villageflorist" target="_new"
1649                       class="instagram footer-socialItem" aria-label="visit our Instagram page">
1650                        <span class="footer-socialName">Instagram </span>
1651                        <img src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/images/pages/footer/social/home/instagram.6ebb7516.svg" alt="" />
1652                    </a>
1653                
1654                                    <a href="https://www.facebook.com/VillageFloristLA?ref=hl" target="_new"
1655                       class="facebook footer-socialItem" aria-label="visit our Facebook page">
1656                        <span class="footer-socialName">Facebook </span>
1657                        <img src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/images/pages/footer/social/home/facebook.72c20f3c.svg" alt="" />
1658                    </a>
1659                
1660                
1661                
1662                                    <a href="https://www.pinterest.com/khsing/" target="_new"
1663                       class="pinterest footer-socialItem" aria-label="visit our Pinterest page">
1664                        <span class="footer-socialName">Pinterest </span>
1665                        <img src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/images/pages/footer/social/home/pinterest.dc6bd10d.svg" alt="" />
1666                    </a>
1667                
1668                                    <a href="https://www.google.com/maps?cid=3383142577627091651" target="_new"
1669                       class="googleplaces footer-socialItem" aria-label="visit our Google page">
1670                        <span class="footer-socialName">Google</span>
1671                        <img src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/images/pages/footer/social/home/google.9795e4d3.svg" alt="" />
1672                    </a>
1673                
1674                                    <a href="https://www.yelp.com/biz/village-florist-granada-hills-3" target="_new"
1675                       class="yelp footer-socialItem" aria-label="visit our Yelp page">
1676                        <span class="footer-socialName">Yelp </span>
1677                        <img src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/images/pages/footer/social/home/yelp.3792410e.svg" alt="" />
1678                    </a>
1679                
1680                
1681                
1682                
1683                <div class="clearfix visible-xs visible-sm"><br/></div>
1684
1685                                    <div class="poweredbybloomnation bloomnationRep col-xs-12 col-sm-12 col-md-12">
1686                        <div class="member_of_bloomnation_wrapper">
1687                            <a href="https://shopvillagefloristla.com/about-us/" class="member_of_bloomnation">
1688                                <span class="bloomnationRep-text">Premier florist on</span>
1689                            </a>
1690                            <a href="https://www.bloomnation.com/" class="member_of_bloomnation_link" aria-label="BloomNation Home Page">
1691                                <img class="bloomnationRep-img"
1692                                     src="https://asset.bloomnation.com/v1/bloomnation/black_horizontal_logo.svg"
1693                                     alt="BloomNation Member"
1694                                     loading="lazy"
1695                                     width="156"
1696                                     height="23"
1697                                />
1698                            </a>
1699                        </div>
1700                    </div>
1701                            </div>
1702        </div>
1703
1704                <div class="footer-more_information footer-info">
1705            <div class="footer-info__locations">
1706                                    <div class="footer-info__location">
1707                        <div class="footer-info__col footer-info__col--address footer-infoItem footer-infoItem--address">
1708                                                            <h4 class="footer-info__heading infoItem-header infoItem-header--store">Location</h4>
1709                                                                                                                        <p class="footer-info__address infoItem-text">
1710                                                                            <a href="https://www.google.com/maps/dir/?api=1&origin=&destination=17818+Chatsworth+St.%2C+Granada+Hills%2C+CA%2C+91344" target="_blank">17818 Chatsworth St.<br>Granada Hills, CA 91344<span class="sr-only">(link opens in a new window)</span></a>
1711                                                                    </p>
1712                                                    </div>
1713                        <div class="footer-info__col footer-info__col--contact footer-infoItem footer-infoItem--email">
1714                                                            <h4 class="footer-info__heading infoItem-header infoItem-header--email">Contact</h4>
1715                                                                                        <p class="infoItem-text infoItem-text--phone"><a href="tel:8188327770">(818) 832-7770</a></p>
1716                                                                                        <p class="infoItem-text infoItem-text--email"><a href="mailto:[email protected]">[email protected]</a></p>
1717                                                    </div>
1718                    </div>
1719                            </div>
1720
1721            <div class="footer-info__hours footer-infoItem footer-infoItem--hours">
1722                <h4 class="footer-info__heading infoItem-header infoItem-header--hours">Hours</h4>
1723                <div class="footer-info__hours-grid store-contact__column store-contact__column--hours store-hours">
1724                                                                    <sp
1724an class="footer-info__hours-day store-hours__label">Monday</span>
1725                        <span class="footer-info__hours-time">9 AM - 4 PM</span>
1726                                                                    <span class="footer-info__hours-day store-hours__label">Tuesday</span>
1727                        <span class="footer-info__hours-time">9 AM - 4 PM</span>
1728                                                                    <span class="footer-info__hours-day store-hours__label">Wednesday</span>
1729                        <span class="footer-info__hours-time">9 AM - 4 PM</span>
1730                                                                    <span class="footer-info__hours-day store-hours__label">Thursday</span>
1731                        <span class="footer-info__hours-time">9 AM - 4 PM</span>
1732                                                                    <span class="footer-info__hours-day store-hours__label">Friday</span>
1733                        <span class="footer-info__hours-time">9 AM - 4 PM</span>
1734                                                                <span class="footer-info__hours-day store-hours__label">Saturday</span>
1735                        <span class="footer-info__hours-time">9 AM - 1 PM</span>
1736                                            <span class="footer-info__hours-day store-hours__label">Sunday</span>
1737                        <span class="footer-info__hours-time">Closed</span>
1738                                    </div>
1739            </div>
1740        </div>
1741
1742        <section id="super-footer">
1743            <div class="footer-block footer-copyright">
1744                <div id="copyright-info" class="copyright__links">
1745            <a class="copyright__link copyright__faq-link"
1746            href="https://shopvillagefloristla.com/faq/"
1747        >
1748            FAQs
1749        </a>
1750        <span>&middot;</span>
1751    
1752    <a class="copyright__link"
1753       href="https://shopvillagefloristla.com/terms-of-service/"
1754    >
1755        Terms of Service
1756    </a>
1757    <span>&middot;</span>
1758
1759    <a class="copyright__link"
1760       href="https://shopvillagefloristla.com/privacy-policy/"
1761    >
1762        Privacy Policy
1763    </a>
1764    <span>&middot;</span>
1765
1766    <a class="copyright__link"
1767       href="https://shopvillagefloristla.com/policies/"
1768    >
1769        Policies
1770    </a>
1771    <span>&middot;</span>
1772
1773            <a class="copyright__link"
1774           href="https://shopvillagefloristla.com/where-we-deliver"
1775        >
1776            Where We Deliver
1777        </a>
1778        <span>&middot;</span>
1779    
1780    <a class="copyright__link"
1781       href="https://shopvillagefloristla.com/accessibility-statement/"
1782    >
1783        Accessibility
1784    </a>
1785    <span>&middot;</span>
1786
1787    <a class="copyright__link"
1788        href="/sitemap/"
1789    >
1790        Sitemap
1791    </a>
1792    <p class="copyright__all-rights-reserved">All Rights Reserved &copy;</p>
1793</div>
1794            </div>
1795        </section>
1796
1797        
1798    </section>
1799    <!-- [START] Custom HTML --><!-- [END] Custom HTML -->
1799<script>
1800window.dataLayer = window.dataLayer || [];
1801
1802</script>
1802 <div class="announcement" style="display: none">
1803    <div class="announcement-bg"></div>
1804    <div class="splash">
1805        <div class="splash-wrapper">
1806            <div>
1807                <span style="color: rgba(0,0,0,0.75);letter-spacing: -0.1em;font-weight: 400;font-size: 20px;line-height: 1.15;">Your browser is not supported</span>
1808            </div>
1809        </div>
1810    </div>
1811</div>
1812 </div>
1813
1814<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"0ac16663c3","applicationID":"6732204,2307825","transactionName":"YFIHZkFZXxAEUhUIDlkYJkdATF4OSlMNDg5aaAZfQBdCChFUMQAGUhgTW1ZP","queueTime":0,"applicationTime":78,"atts":"TBUQEAlDTE9HUENbGkpK","errorBeacon":"bam.nr-data.net","agent":""}</script>
1814</body>
1815</html>
1816
1817

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.