PageSourceSearch

https://rosecottageflorals.com/customer/account/login/

html rosecottageflorals.com collected 2026-09-29 15:48:50 UTC 238,376 bytes, 3,837 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.322.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.322.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.322.0.min.js"),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e={},t="NRBA-1.322.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-YFF+tf82v8eglmCSz5XYYPZ9svAEVPEL8CjIs/VJ5WDjxajLkBKoCp6iBhqtcYRu8v8sXwAWX58PGV4RVzB2dQ==",222:"sha512-y0XrI32v2ZxZdktMLngwYUsETp/i/aYkdx9JOeIAmr2KYJdlDneMKYdNwPaZiOX3gb7AXywTby7jg1okwEkArw==",95:"sha512-WtCe89dmBu8YGhCnszRdHzYCzOqwTSeitVhY/ahmZczjI+0C6KOazsnU/vPsTDaM7VSG+iZW7zidI1t5+hpiYQ==",649:"sha512-AYJxsYTPRDF5tWSm4lWONX5VM69Ou9twLFZ8apchUI9gNOrXBkzP8QZ+PQkMz8nGjh/7oVMR+1cA+5dWFYhmmw=="};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.322.0.PROD"]=self["webpackChunk:NRBA-1.322.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 U=r(6630);class K extends W{static featureName=U.T;constructor(e){var t;super(e,U.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(K),_(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"],Ue=g.gm.Request,Ke=g.gm.Response,Fe="prototype";const Ve={};function ze(e,t){const r=function(e){return(e||w.ee).get("fetch")}(e);if(!(Ue&&Ke&&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(Ue[Fe],e,He),n(Ke[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=(0,ye.ZF)(),a=(0,ye.el)(),o=Date.now(),c={spanId:s,traceId:a,timestamp:o};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(c.traceContextParentHeader=this.generateTraceContextParentHeader(s,a),c.traceContextStateHeader=this.generateTraceContextStateHeader(s,o,r,n,i)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(c.newrelicHeader=this.generateTraceHeader(s,a,o,r,n,i)),c}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:[K,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            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff/AvenirNext-Regular.1017e4f4.woff') format('woff');
22            font-weight: 100;
23            unicode-range: U+000-5FF;
24        }
25
26        @font-face {
27            font-display: swap;
28            font-family: 'Avenir';
29            src: local('Avenir'),
30            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-Medium.8f8afa8e.woff2') format('woff2'),
31            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff/AvenirNext-Medium.bb4e0d80.woff') format('woff');
32            font-weight: 200;
33            unicode-range: U+000-5FF;
34        }
35
36        @font-face {
37            font-display: swap;
38            font-family: 'Avenir';
39            src: local('Avenir'),
40            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-UltraLight.d9fd23ba.woff2') format('woff2'),
41            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff/AvenirNext-UltraLight.99b9fd3e.woff') format('woff');
42            font-weight: 50;
43            unicode-range: U+000-5FF;
44        }
45
46        @font-face {
47            font-display: swap;
48            font-family: 'Avenir';
49            src: local('Avenir'),
50            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-DemiBold.eea19314.woff2') format('woff2'),
51            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff/AvenirNext-DemiBold.37566b7a.woff') format('woff');
52            font-weight: 300;
53            unicode-range: U+000-5FF;
54        }
55
56        @font-face {
57            font-display: swap;
58            font-family: 'Avenir';
59            src: local('Avenir'),
60            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff2/AvenirNext-Bold.b652524b.woff2') format('woff2'),
61            url('https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/fonts/woff/AvenirNext-Bold.d1a3cf86.woff') format('woff');
62            font-weight: 400;
63            unicode-range: U+000-5FF;
64        }
65
66        * {
67            letter-spacing: 0 !important;
68            font-smoothing: antialiased;
69            -webkit-font-smoothing: antialiased;
70            -moz-font-smoothing: antialiased;
71            -o-font-smoothing: antialiased;
72        }
73
74        body {
75            --bn--primary-font: var(--bn--default-font);
76            font-family: var(--bn--primary-font);
77        }
78    </style>
79    <title>Log in to Your Account | Rose Cottage Florals</title>
80    <meta name="google-site-verification" content="uTxDIebwpCE-ERNPSb60mBEIUYpxecYyHAvBNwHFM7w"/>
81    <meta name="description" content="Sign into your Rose Cottage Florals account."/>
82    <meta name="keywords" content=""/>
83    <meta name="robots" content="NOINDEX,NOFOLLOW"/>
84    <link rel="canonical" href="https://rosecottageflorals.com/customer/account/login/"/>
85
86    <link rel="icon" href="https://asset.bloomnation.com/f_auto,q_auto/v1/vendor/global/favicon/favicon.ico" type="image/x-icon"/>
87    <link rel="shortcut icon" href="https://asset.bloomnation.com/f_auto,q_auto/v1/vendor/global/favicon/favicon.ico" type="image/x-icon"/>
88
89
90    
90<script type="text/javascript" src="https://promfiles.com/bloom/dist/js/lib/jquery/jquery-1.12.1.min.2a534122.js"></script>
90
91    
91<script>jQuery.noConflict();</script>
91
92    
92<script type="application/ld+json">{"@context":"https://schema.org/","@type":["Florist","LocalBusiness","Organization"],"@id":"https://rosecottageflorals.com/#florist","name":"Rose Cottage Florals","image":"https://asset.bloomnation.com/c_fit,dpr_2,f_auto,h_607,q_auto,w_960/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png","logo":"https://asset.bloomnation.com/c_fit,dpr_2,f_auto,h_607,q_auto,w_960/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png","url":"https://rosecottageflorals.com/","address":{"@type":"PostalAddress","streetAddress":"627 S Main St","addressLocality":"DeForest","addressRegion":"WI","postalCode":"53532","addressCountry":"US"},"telephone":"+16088422280","priceRange":"$$","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"Monday","opens":"08:30","closes":"16:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":["Tuesday","Wednesday","Thursday","Friday"],"opens":"08:30","closes":"18:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Saturday","opens":"08:30","closes":"12:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-02-14","validThrough":"2027-02-14","opens":"09:00","closes":"17:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-05-09","validThrough":"2027-05-09","opens":"09:00","closes":"17: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"}],"areaServed":[{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Cottage Grove"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"De Forest"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Mc Farland"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Middleton"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Morrisonville"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Oregon"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Fitchburg"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Stoughton"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Sun Prairie"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Verona"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"General Casualty Co"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Waunakee"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Westport"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Windsor"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Lake Windsor"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"Madison"}},{"@type":"Place","address":{"@type":"PostalAddress","addressCountry":"US","addressRegion":"WI","addressLocality":"State Capitol"}}],"description":"Madison's Local Florist Since 1990\nRose Cottage Florals has been hand-delivering premium floral arrangements and gift baskets to help strengthen relationships, give love and support, and celebrate life\u2019s special moments since 1990. From birthdays to anniversaries to commemorating a loved one, and every little \u201cjust because\u201d moment in between.\n\nWith Same Day Delivery in the Madison, WI area, we are dedicated to helping you find the perfect flowers to deliver your message and enhance your special ","sameAs":["https://www.facebook.com/912848305414132","https://www.instagram.com/rosecottagefloral","https://www.google.com/maps?cid=2331661815747292934","https://www.yelp.com/biz/rose-cottage-florals-deforest","https://tiktok.com/@rosecottagefloral","https://www.bloomnation.com/florist/rose-cottage-florals/"],"department":[{"@type":["Florist","LocalBusiness","Organization"],"name":"Rose Cottage Florals","image":"20250307124341_file_67ca413d3337b.png","url":"https://rosecottageflorals.com/","address":{"@type":"PostalAddress","streetAddress":"627 S Main St","addressLocality":"DeForest","addressRegion":"WI","postalCode":"53532","addressCountry":"US"},"telephone":"+16088422280","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"Monday","opens":"08:30","closes":"16:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":["Tuesday","Wednesday","Thursday","Frid
92ay"],"opens":"08:30","closes":"18:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Saturday","opens":"08:30","closes":"12:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-02-14","validThrough":"2027-02-14","opens":"09:00","closes":"17:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-05-09","validThrough":"2027-05-09","opens":"09:00","closes":"17: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":["Florist","LocalBusiness","Organization"],"name":"Rose Cottage Florals - second pick up location","image":"20250307124341_file_67ca413d3337b.png","url":"https://rosecottageflorals.com/","address":{"@type":"PostalAddress","streetAddress":"2140 Atwood Ave","addressLocality":"Madison","addressRegion":"WI","postalCode":"53704","addressCountry":"US"},"telephone":"+16082444454","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":"Monday","opens":"08:30","closes":"16:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":["Tuesday","Wednesday","Thursday","Friday"],"opens":"08:30","closes":"18:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":"Saturday","opens":"08:30","closes":"12:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-02-14","validThrough":"2027-02-14","opens":"09:00","closes":"17:00"},{"@type":"OpeningHoursSpecification","validFrom":"2027-05-09","validThrough":"2027-05-09","opens":"09:00","closes":"17: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"}]}],"hasMerchantReturnPolicy":{"@type":"MerchantReturnPolicy","applicableCountry":"US","returnPolicyCategory":"https://schema.org/MerchantReturnNotPermitted","merchantReturnLink":"https://rosecottageflorals.com/policies"},"hasShippingService":{"@type":"ShippingService","@id":"https://rosecottageflorals.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","Friday","Saturday"],"duration":{"@type":"QuantitativeValue","minValue":0,"maxValue":0,"unitCode":"DAY"},"cutoffTime":"11:30:00-05:00"},"shippingConditions":[{"@type":"ShippingConditions","shippingDestination":{"@type":"DefinedRegion","addressCountry":"US"},"shippingRate":{"@type":"MonetaryAmount","value":"9.99","currency":"USD"},"transitTime":{"@type":"ServicePeriod","duration":{"@type":"QuantitativeValue","minValue":0,"maxValue":0,"unitCode":"DAY"}}}]},"hasMemberProgram":{"@type":"MemberProgram","name":"Rose Cottage","description":"Earn 1 Rose Cottage for every $1.00 spent. Redeem 600 Rose Cottage for $25.00 off.","hasTiers":[{"@type":"MemberProgramTier","name":"Rose Cottage","hasTierBenefit":[{"@type":"TierBenefitLoyaltyPoints"}],"membershipPointsEarned":1}]},"aggregateRating":{"@type":"AggregateRating","ratingValue":"4.8621","reviewCount":"87","worstRating":"1","bestRating":"5","url":"https://www.bloomnation.com/florist/rose-cottage-florals/reviews/"}}</script>
92
93
94<link rel="stylesheet" href="https://promfiles.com/bloom/dist/js/bloomnation/review-photos.8ea4dd02.css" />
95<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/bootstrap.min.8dd31aca.css" media="all" />
96<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/font-awesome.min.da606908.css" media="all" />
97<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/layout.c5c342e2.css" media="all" />
98<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/typography.ab03696f.css" media="all" />
99<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/header.min.6ecf0dca.css" media="all" />
100<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/base/default/css/account.min.171a970e.css" media="all" />
101<link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/ps-account.min.8b1fae5e.css" media="all" />
102<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>
103<link rel="preload" as="style" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/components.min.a065e359.css" onload="this.onload=null;this.rel='stylesheet'" /><noscript><link rel="stylesheet" href="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/css/components.min.a065e359.css" /></noscript>
104<script src="https://promfiles.com/bloom/dist/js/runtime.8353d46c.js"></script>
vendor: 1 bytes, line 104
104
105<script src="https://promfiles.com/bloom/dist/js/lib/ccard.0b909381.js"></script>
vendor: 1 bytes, line 105
105
106<script src="https://promfiles.com/bloom/dist/js/bloomnation/global.612205a7.js"></script>
vendor: 1 bytes, line 106
106
107<script src="https://promfiles.com/bloom/dist/js/bloomnation/forms/clear-validation-state.cb4122c4.js"></script>
vendor: 1 bytes, line 107
107
108<script src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/runtime.ceb56166.js"></script>
vendor: 1 bytes, line 108
108
109<script src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/js/bootstrap.min.ed580635.js"></script>
vendor: 1 bytes, line 109
109
110<script src="https://promfiles.com/bloom/dist/frontend/base/default/js/account-management/account-management-merged.f8d16fdb.js"></script>
vendor: 1 bytes, line 110
110
111<script src="https://promfiles.com/bloom/dist/js/popup/popup.eace3136.js" defer></script>
vendor: 1 bytes, line 111
111
112<script src="https://promfiles.com/bloom/dist/js/bloomnation/review-photos.59481161.js" defer></script>
vendor: 1 bytes, line 112
112
113<script src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/js/main-nav.05e9f99c.js" defer></script>
vendor: 1 bytes, line 113
113
114<script src="https://promfiles.com/bloom/dist/frontend/premiumsites/bloom/js/wm-slider.2c143ae6.js" defer></script>
114
115
116
117
118    
119                    <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&amp;display=swap" media="print" onload="this.media='all'">
120    
121    <style id="bn__site_theme">
122
123                :root {
124                    --primary-font: Lora, serif;
125                    --site-max-width: 1200px;
126                    --body-bg: rgb(255, 255, 255);
127                    --body-text-color: rgb(51, 51, 51);
128                    --text-action-color: #293333;
129                    --button-text-color: #212427;
130                    --element-action-color: #8fb750;
131                    --header-bg: rgb(255, 255, 255);
132                    --header-text-color: rgb(255, 255, 255);
133                    --footer-bg: #FFFFFF;
134                    --footer-text-color: rgb(33, 36, 39);
135                    --menu-color: rgb(7, 59, 97);
136                    --header-address-color: #333333ff;
137                    --my-account-color: rgb(33, 36, 39);
138                    --color-light: #fff;
139                    --card-action-color: rgb(41, 51, 51);
140                    --popular-pick-action-color: rgb(255, 255, 255);
141                    --element-action-color-active: #8fb750;
142                    --text-action-color-active: #29333390;
143                    --header-text-color-active: #fff;
144                    --body-text-color-active: #21242790;
145                    --footer-text-color-active: #21242790;
146                    --decorative-font: Lora, serif;
147                    --card-action-color-active: #424c4c;
148                    --popular-pick-action-color-active: #e6e6e6;
149                    --bn--background-color: #ffffff;
150                }
151        
152        body {
153            font-family: var(--primary-font);
154        }
155
156        body:not(.cms-page-view) {
157            background: var(--body-bg);
158        }
159
160        .row {
161            max-width: var(--site-max-width);
162        }
163
164        a,
165        a:active,
166        a:visited {
167            color: var(--text-action-color);
168        }
169
170        a:hover {
171            color: var(--text-action-color-active);
172        }
173
174        #header {
175            background: var(--header-bg);
176        }
177
178        .my-account-mob .header-cartBtn {
179            background-color: transparent !important;
180        }
181
182        .header-cartBtn .header-cartIcon {
183            color: var(--header-icon-color, #333);
184        }
185
186        #header .header-nav.headerNav-wrapper {
187            background: var(--menu-color);
188        }
189
190        .information-heading .infoHeading-item {
191            color: var(--header-address-color);
192        }
193
194        .nav-itemText {
195            color: var(--header-text-color);
196        }
197
198        .nav-itemText:hover,
199        .nav-itemWrapper:hover,
200        .nav-item:hover {
201            color: var(--header-text-color-active);
202        }
203
204        .note-msg,
205        .listings .note-msg,
206        ul.disc,
207        .listings-sorting_options span,
208        span.pagination-page_count,
209        .designerschoice-index-view #content,
210        a.itemListings-subheaderLink,
211        .breadcrumb>li,
212        .breadcrumb li a,
213        ul.disc li a {
214            color: var(--body-text-color);
215        }
216
217        a.itemListings-subheaderLink:hover,
218        .breadcrumb>li:hover,
219        .breadcrumb li a:hover,
220        ul.disc li a:hover {
221            color: var(--body-text-color-active);
222        }
223
224        .cms-page-view .breadcrumb>li,
225        .cms-page-view .breadcrumb li a {
226            color: inherit;
227        }
228
229        .cms-page-view .breadcrumb li a:visited,
230        .cms-page-view .breadcrumb li a:active,
231        .cms-page-view .breadcrumb li a:hover {
232            color: inherit;
233        }
234
235        h1.banners-header {
236            color: var(--body-text-color);
237        }
238
239        h2.itemListings-header {
240            color: var(--body-text-color);
241        }
242
243        h3.itemListings-subheader {
244            color: var(--body-text-color);
245        }
246
247        .cms-index-aboutus #content,
248        .cms-index-aboutus #content h1[itemprop=name],
249        .cms-index-aboutus #content span[itemprop=description],
250        .cms-index-faq #content,
251        .cms-index-faq #content h1[itemprop=name],
252        .cms-index-faq #content span[itemprop=description],
253        .about-us-nlp__header,
254        .product_details-about-designer h3,
255        .product_details-about-designer span {
256            color: var(--body-text-color);
257        }
258
259        .cms-index-gallery #content,
260        .cms-index-gallery #content a {
261            color: var(--body-text-color);
262        }
263
264        .cms-index-gallery #content a:hover {
265            color: var(--body-text-color-active);
266        }
267
268        .listings .sidebar-sort > div.sidebar {
269            background: var(--color-light, #fff);
270        }
271
272        .listings .sidebar-sort > div.sidebar-best_selling {
273            background: var(--color-light, #fff);
274        }
275
276        h1.catalog-header {
277            color: var(--body-text-color);
278        }
279        .pagination > .active > a,
280        .pagination > .active > span,
281        .pagination > .active > a:hover,
282        .pagination > .active > span:hover,
283        .pagination > .active > a:focus,
284        .pagination > .active > span:focus {
285            border-color: var(--element-action-color);
286            color: var(--button-text-color);
287            background: var(--element-action-color);
288        }
289
290        .pagination > li > a,
291        .pagination > li > span,
292        .pagination > li > a:hover,
293        .pagination > li > span:hover {
294            color: var(--text-action-color);
295        }
296        a.search-results-empty__btn,
297        .btn-success,
298        .btn-update,
299        .btn-continue {
300            border-color: var(--element-action-color);
301            color: var(--button-text-color);
302            background: var(--element-action-color);
303        }
304
305        a.search-results-empty__btn:hover,
306        .btn-success:hover,
307        .btn-update:hover,
308        .btn-continue:hover,
309        .btn-success:focus,
310        .btn-success:active {
311            border-color: var(--element-action-color-active);
312            color: var(--button-text-color);
313            background: var(--element-action-color-active);
314        }
315        #footer {
316            background: var(--footer-bg);
317            color: var(--footer-text-color);
318        }
319
320        .footer-social_media {
321            background: var(--footer-bg);
322        }
323
324        section#footer #super-footer a,
325        section#footer #super-footer p,
326        section#footer a {
327            color: var(--footer-text-color);
328        }
329
330        section#footer #super-footer a:hover,
331        section#footer a:hover {
332            color: var(--footer-text-color-active);
333        }
334
335        #my-account_menu-label {
336            color: var(--my-account-color, #333);
337        }
338
339        .my-account-icon {
340            color: var(--header-icon-color, #333);
341        }
342
343        .link-default,
344        .link-default:visited,
345        .link-default:active,
346        .sidebar a,
347        .sidebar a:active,
348        .sidebar a:visited,
349        .delivery__content a,
350        .delivery__content a:active,
351        .delivery__content a:visited {
352            color: var(--card-action-color, #428bca);
353        }
354
355        a.link-default:hover,
356        .sidebar a:hover,
357        .delivery__content a:hover {
358            color: var(--card-action-color-active, #2a6496);
359        }
360
361        a.social__icon-link:hover {
362            color: var(--card-action-color-active, #2a6496);
363        }
364
365        .poppick_item a,
366        .poppick_item a:active,
367        .poppick_item a:visited {
368            color: var(--popular-pick-action-color, #428bca);
369        }
370
371        .poppick_item a:hover {
372            color: var(--popular-pick-action-color-active, #2a6496);
373        }
374
375        .social__icon-link,
376        .social__icon-link:active,
377        .social__icon-link:visited {
378            color: inherit;
379        }
380
381        .subscription-list-page__title,
382        .subscription-list-page__description,
383        .subscription-customize-form-section,
384        .subscription-customize-form-terms-section,
385        .subscription-customize-form__disclaimer,
386        .product-list__additional-info,
387        .subscription-customize-form__header {
388            color: var(--body-text-color);
389        }
390
391        .member_of_bloomnation-logo {
392            background: rgba(255,255,255,0.7);
393            border-radius: 12px;
394        }
395    </style>
396
397    <style>
398    :root {
399        --bn--primary-color: ;
400        --bn--secondary-color: ;
401        --bn--background-color: ;
402        --bn--mobile-menu-text-color: ;
403    }
404
405    /* Primary Color Classes */
406    
407    /* Secondary Color Classes */
408    
409    /* Background Color Classes */
410    
411    /* Background Color Classes */
412    </style>
413
414    <style data-id="vendor-css">
415        @import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&display=swap');:root{--color-dark:#212427;--header-nav-bg:#073b61}html{font-size:62.5%}body{font-family:var(--primary-font)}.row{max-width:var(--site-max-width)}a,a:active,a:visited{color:var(--text-action-color)}a:hover{color:var(--text-action-color-active)}.cms-page-view .std{margin:0 auto;max-width:var(--site-max-width)}.topBanner>*{padding:1rem 4.6rem !important;text-align:center}.topBanner div p{margin-bottom:0}#header{padding:2.5rem 0 0;min-height:fit-content;border-bottom:1px solid #efefef}.row.header-innerContainer{display:flex;justify-content:flex-end;align-items:center}.infoHeading{margin-bottom:0}.header-logo{margin-top:0}.cms-index-gallery .companyLogo-img,.checkout-onestep-index .company-logo img,.companyLogo-img{max-width:35rem}.my-account-mob .header-cartBtn{background:var(--element-action-color)}.my-account-mob .header-cartBtn:hover{background:var(--element-action-color-active)}.header-cartBtn .header-cartIcon{color:var(--button-text-color)}.header-cart .my-account-button-text,.cart_text{color:var(--color-dark)}.header-cart .my-account-button-text:hover,.cart_text:hover{color:var(--color-dark)}.header-cart .header-cartBtn-wrapper .cart-badge,.badge{background:var(--text-action-color)}.header-nav{background:var(--header-nav-bg)}.nav-itemText{color:var(--header-text-color)}.nav-item:hover,.nav-itemText:hover,.nav-itemWrapper:hover,.nav-itemWrapper .nav-item:hover{color:var(--header-text-color-active);background:transparent}.header-subnav .nav-item--subnav:hover{color:var(--color-dark)}h1.banners-header{z-index:9999}.banner--left{width:100%}.bar-helper_text,.listings .sidebar-sort h6{color:var(--color-dark) !important}.product-card__tag{background:var(--color-light);color:var(--color-dark);width:100%}.custom_arrangement_header{margin:20px 20px 40px}.gallery-title{text-align:center}.featured_listings{display:none}.search_bar{background:transparent}.bar-quick_select,.bar-quick_sort .search_bar>div{background:#7a9c44}.bar-quick_select a,.bar-quick_select span{color:var(--color-light) !important}.bar-quick_sort .search_bar button{background:var(--element-action-color);color:var(--button-text-color)}.sidebar-title{background:#efefef}.listings .sidebar-sort>div.sidebar{background:var(--color-light)}.listings .sidebar-sort>div.sidebar-best_selling{background:var(--color-light)}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{border-color:var(--element-action-color);color:var(--button-text-color);background:var(--element-action-color)}.pagination>li>a,.pagination>li>span,.pagination>li>a:hover,.pagination>li>span:hover{color:var(--text-action-color)}#shopping-cart-table tr{background:var(--color-light)}.cart .sidebar{background:var(--color-light)}a.search-results-empty__btn,#orderForm .orderForm-checkout .btn,.btn-success,.btn-checkout,.btn-checkout-next,#checkout .sidebar .btn-success,.btn-update,.btn-continue,.checkout-cart-index .cart .btn-proceed-checkout{border-color:var(--element-action-color);color:var(--button-text-color);background:var(--element-action-color);font-weight:400 !important;border-radius:3px !important}a.search-results-empty__btn:hover,#orderForm .orderForm-checkout .btn:hover,.btn-success:hover,.btn-checkout:hover,#checkout .sidebar .btn-success:hover,.btn-update:hover,.btn-continue:hover,.btn-success:focus,.btn-success:active,.checkout-cart-index .cart .btn-proceed-checkout:hover{border-color:var(--element-action-color-active);color:var(--button-text-color);background:var(--element-action-color-active)}.header-secure-badge{float:right}#checkout .sidebar .sidebar-inner,#checkout .step-status,#checkout .step{margin-top:1rem;background:var(--color-light);border:1px solid #efefef}#account-management.account{height:auto}#account-management .account-overlay{background:transparent}#footer{padding-bottom:1rem;color:var(--footer-text-color)}.footer-infoItem{margin-bottom:2rem}section#footer a{color:var(--footer-text-color)}section#footer a:hover{color:var(--footer-text-color-active)}.footer-social_media{background:var(--footer-bg)}.footer-infoItem .infoItem-header,#super-footer .copyright__link,#super-footer .copyright__all-rights-reserved{font-weight:600 !important}.social-innerContainer{display:flex;justify-content:center;flex-wrap:wrap;align-items:center}.about-us-page-premier-florist p{white-space:normal}#super-footer .copyright__link{color:var(--color-dark)}#super-footer .map-container{display:flex;justify-content:center;overflow:hidden}.map-container img{object-fit:cover}.footerImgs-itemsContainer{display:flex;justify-content:center;align-items:center}.footerImgs-itemsContainer::before{display:none}.u-responsiveImg{width:100%}@media screen and (max-width:768px){.cms-index-gallery .companyLogo-img,.companyLogo-img{max-width:100%}.checkout-onestep-index .company-logo img{max-width:15rem}.banner--left{margin-top:0}.bar-quick_sort{margin-top:1.5rem}.bar-quick_sort .search_bar{padding-right:0}.footer-infoItem{margin-bottom:2rem}}    </style>
416
417<style>
418    .wm-link-button {
419        display: inline-block;
420        margin-bottom: 0;
421        font-weight: normal;
422        text-align: center;
423        vertical-align: middle;
424        cursor: pointer;
425        background-image: none;
426        border: 1px solid transparent;
427        white-space: nowrap;
428        padding: 6px 12px;
429        font-size: 14px;
430        line-height: 1.42857143;
431        border-radius: 4px;
432        -webkit-user-select: none;
433        -moz-user-select: none;
434        -ms-user-select: none;
435        user-select: none;
436    }
437    [id^='custom-page-main-content'] img {
438        max-width: 100%;
439    }
440    [id^='custom-page-main-content'] section:not([data-border='false']) .section-container {
441        padding: 3rem 1.5rem;
442    }
443    [id^='custom-page-main-content'] section[id^='section-blank'] {
444        padding: 1rem 0;
445    }
446    [id^='custom-page-main-content'] section[data-border='true'] {
447        padding: 3rem;
448    }
449    [id^='custom-page-main-content'] section {
450        min-height: fit-content;
451        color: var(--body-text-color);
452    }
453    [id^='custom-page-main-content'] section[data-gradient-type='linear'] {
454        background: linear-gradient(
455            var(--gradient-direction),
456            var(--gradient-from, transparent),
457            var(--gradient-to, transparent)
458        ) !important;
459    }
460
461    [id^='custom-page-main-content'] section[data-gradient-type='radial'] {
462        background: radial-gradient(var(--gradient-from, transparent), var(--gradient-to, transparent)) !important;
463    }
464    [id^='custom-page-main-content'] b,
465    [id^='custom-page-main-content'] strong {
466        font-weight: 700 !important;
467    }
468    [id^='section-banner'] {
469        background-color: #ebedef;
470    }
471    [id^='section-banner'][data-bgcolor='dark'] {
472        background-color: #8b8c92;
473    }
474    [id^='section-banner'][data-border='true'] {
475        padding: 3rem;
476    }
477
478    /* Banner Video Background — text always overlays the video; the
479       videoOverlayDarkness slider controls the optional darkness layer. */
480    [id^='section-banner'][data-bg-type='video'] {
481        position: relative;
482        padding: 0 !important;
483        overflow: hidden;
484        height: auto !important;
485        aspect-ratio: 16 / 9;
486    }
487    [id^='section-banner'][data-bg-type='video'] .banner-container {
488        position: absolute;
489        top: 0;
490        left: 0;
491        width: 100%;
492        height: 100%;
493        z-index: 2;
494        display: flex;
495        pointer-events: none;
496    }
497    [id^='section-banner'][data-bg-type='video'] .banner-container :is(
498        a, button, [data-gjs-type='dynamic-link'], [data-gjs-type='link-button']
499    ) {
500        pointer-events: auto;
501    }
502    [id^='section-banner'][data-bg-type='video'] .banner-container .section-container {
503        display: flex;
504        flex-direction: column;
505        justify-content: center;
506        align-items: center;
507        width: 100%;
508    }
509    [id^='section-banner'] .section-container {
510        height: 100% !important;
511        width: 100% !important;
512    }
513    .banner-video-wrapper {
514        position: relative;
515        width: 100%;
516        aspect-ratio: 16 / 9;
517    }
518    .banner-video-gradient {
519        position: absolute;
520        top: 0;
521        left: 0;
522        width: 100%;
523        height: 100%;
524        z-index: 1;
525        pointer-events: none;
526    }
527    video.banner-video {
528        width: 100%;
529        height: 100%;
530        object-fit: cover;
531        border: none;
532    }
533    iframe.banner-video {
534        width: 100%;
535        height: 100%;
536        border: none;
537    }
538
539    [data-gjs-type='grid-row'] * {
540        max-width: 100%;
541    }
542
543    [data-gjs-type='grid-column'] [data-gjs-type='text'] {
544        width: 100%;
545    }
546
547    [data-gjs-type='grid-row'] [data-gjs-type='grid-column'] {
548        width: 100%;
549        display: flex;
550        flex-direction: column;
551    }
552
553    /* Flex Columns */
554    [data-gjs-type='flex-columns'] {
555        display: flex;
556        width: 100%;
557    }
558    [data-gjs-type='flex-columns'] > [data-gjs-type='flex-column'] {
559        min-width: 0;
560        max-width: 100%;
561        display: flex;
562        flex-direction: column;
563    }
564    [data-gjs-type='flex-columns'] [data-gjs-type='flex-column'] [data-gjs-type='text'] {
565        width: 100%;
566    }
567
568    .wm-map iframe {
569        pointer-events: none;
570    }
571
572    /* Slider Section */
573    [id^='section-slider'] {
574        position: relative;
575    }
576    [id^='section-slider'] .slider-heading {
577        font-family: var(--decorative-font, 'sans-serif');
578        margin: 0 0 1.5rem;
579    }
580    [id^='section-slider'] .swiper {
581        width: 100%;
582        overflow: hidden;
583    }
584    [id^='section-slider'][data-nav-style='arrows-sides'] .swiper {
585        width: 85%;
586        margin: auto;
587    }
588    [id^='section-slider'] .swiper-wrapper {
589        display: flex;
590    }
591    [id^='section-slider'] .swiper-slide {
592        display: flex;
593        gap: 30px;
594        width: 100%;
595        min-height: 200px;
596        flex-shrink: 0;
597    }
598    [id^='section-slider'] .swiper-slide [data-gjs-type='grid-column'] {
599        flex: 1 1 0%;
600        min-width: 0;
601        display: flex;
602        flex-direction: column;
603    }
604
605    /* Slider Navigation — Arrow Icons */
606    [id^='section-slider'] .swiper-button-prev::after,
607    [id^='section-slider'] .swiper-button-next::after {
608        content: '';
609        display: block;
610        width: 8px;
611        height: 8px;
612        border-top: 2px solid var(--button-text-color, #fff);
613        border-right: 2px solid var(--button-text-color, #fff);
614    }
615    [id^='section-slider'] .swiper-button-next::after {
616        transform: rotate(45deg);
617        margin-left: -3px;
618    }
619    [id^='section-slider'] .swiper-button-prev::after {
620        transform: rotate(-135deg);
621        margin-right: -3px;
622    }
623
624    /* Slider Navigation — Arrows Top Right */
625    [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-button-prev,
626    [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-button-next {
627        position: absolute;
628        top: 0;
629        right: 16px;
630        left: auto;
631        width: 32px;
632        height: 32px;
633        border-radius: 50%;
634        background: var(--element-action-color, #333);
635        color: var(--button-text-color, #fff);
636        display: flex;
637        align-items: center;
638        justify-content: center;
639        cursor: pointer;
640        z-index: 10;
641    }
642    [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-button-prev {
643        right: 65px;
644    }
645    [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-pagination {
646        display: none;
647    }
648
649    /* Slider Navigation — Arrows Sides */
650    [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-prev,
651    [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-next {
652        position: absolute;
653        top: 50%;
654        transform: translateY(-50%);
655        width: 40px;
656        height: 40px;
657        border-radius: 50%;
658        background: var(--element-action-color, #333);
659        color: var(--button-text-color, #fff);
660        display: flex;
661        align-items: center;
662        justify-content: center;
663        cursor: pointer;
664        z-index: 10;
665    }
666    [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-prev {
667        left: 10px;
668    }
669    [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-next {
670        right: 10px;
671    }
672    [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-pagination {
673        display: none;
674    }
675
676    /* Slider Navigation — Dots Bottom */
677    [id^='section-slider'][data-nav-style='dots-bottom'] .swiper-button-prev,
678    [id^='section-slider'][data-nav-style='dots-bottom'] .swiper-button-next {
679        display: none;
680    }
681    [id^='section-slider'][data-nav-style='dots-bottom'] .swiper-pagination {
682        text-align: center;
683        padding: 16px 0;
684    }
685    [id^='section-slider'][data-nav-style='dots-bottom'] .swiper-pagination-bullet {
686        display: inline-block;
687        width: 16px;
688        height: 16px;
689        border-radius: 50%;
690        background: #fff;
691        border: 1px solid #000;
692        margin: 0 6px;
693        cursor: pointer;
694    }
695    [id^='section-slider'][data-nav-style='dots-bottom'] .swiper-pagination-bullet-active {
696        background: #000;
697    }
698
699    .text-and-image-section [data-position='right'] {
700        order: 1 !important;
701    }
702    .text-and-image-section .right-text {
703        order: 0 !important;
704    }
705    .text-and-image-section.cover .wm-image-container {
706        width: 50%;
707    }
708    .wm-image-container {
709        position: relative;
710        width: max-content;
711        max-width: 100%;
712    }
713    .wm-image-container .image-overlay{
714        position: absolute;
715        top: 0;
716        left: 0;
717        z-index: 1;
718        width: 100%;
719        height: 100%;
720        background-color: #000;
721        opacity: 0.25;
722        pointer-events: none;
723        display: none;
724    }
725    .wm-image-container.has-overlay .image-overlay {
726        display: block;
727    }
728
729    section .section-container {
730        max-width: var(--site-max-width);
731        margin: 0 auto;
732        min-height: fit-content;
733        height: auto;
734        display: flex;
735        flex-direction: column;
736    }
737
738    [data-gjs-type='divider']::before {
739        content: '';
740        position: absolute;
741        left: 0;
742        right: 0;
743        top: 50%;
744        border-top: var(--divider-height, 1px) solid var(--divider-color, #000);
745        transform: translateY(-50%);
746    }
747
748    .nlp-llm-text-block h2,
749    .nlp-llm-text-block h3 {
750        font-family: var(--decorative-font, 'sans-serif');
751    }
752
753    /* Shop Address */
754    .wm-shop-address__grid {
755        display: grid;
756        align-content: start;
757    }
758    .wm-shop-address__grid--item a {
759        text-decoration: underline;
760        color: var(--body-text-color, '#333');
761        font-family: var(--primary-font);
762        font-size: 16px;
763        font-weight: var(--bn--font-medium);
764    }
765    .wm-shop-address__grid--item a:hover {
766        color: var(--body-text-color-active, '#000');
767    }
768    .wm-shop-address__grid--item svg path {
769        fill: var(--body-text-color, '#333');
770    }
771
772    /* Shop Hours */
773    .wm-shop-hours__title {
774        margin-top: 0;
775        font-family: var(--decorative-font, 'sans-serif');
776    }
777    .wm-shop-hours__grid {
778        display: grid;
779        grid-template-columns: max-content 1fr;
780        column-gap: 1.5rem;
781        row-gap: 0.75rem;
782        font-size: inherit;
783    }
784    .wm-shop-hours__grid--item {
785        font-weight: var(--bn--font-medium);
786    }
787    .wm-nlp-section .wm-shop-hours__grid {
788        font-size: 14px;
789        font-weight: 200;
790    }
791
792    /* Reviews section */
793    .wm-reviews {
794        [data-gjs-type='grid-column'] {
795            background-color: #fff;
796            border: 1px solid #E4E4E4;
797            padding: 1.2rem;
798            border-radius: 8px;
799            box-shadow: 0px 0px 20px 0px #4345511A;
800        }
801        [data-gjs-type='grid-column'] [data-gjs-type='text'] {
802            width: auto;
803        }
804        h2 {
805            margin: 0 0 2rem;
806            font-family: var(--decorative-font), sans-serif;
807        }
808        .wm-reviews__header {
809            display: grid;
810            grid-template-columns: max-content 1fr;
811            gap: 1rem;
812            align-items: center;
813            margin-bottom: .5rem;
814
815            h3 {
816                font-size: 14px;
817                font-family: var(--decorative-font), sans-serif;
818                font-weight:600 !important;
819                margin: 0;
820            }
821        }
822        .wm-reviews__rating {
823            margin-bottom: 0.5rem;
824        }
825        .wm-reviews__circle {
826            height: 40px;
827            width: 40px;
828            border-radius: 50%;
829            background-color: #FCE4EC;
830            display: flex;
831            align-items: center;
832            justify-content: center;
833        }
834        .wm-reviews__circle > span {
835            font-size: 14px;
836            font-weight:600 !important;
837            color: #880E4F;
838        }
839        .wm-reviews__date {
840            font-size: 12px;
841            color: #8B8C92;
842        }
843        .wm-reviews__content {
844            font-size: 14px;
845            line-height: 20px;
846            height: 80px;
847            overflow: auto;
848            font-weight: var(--bn--font-medium);
849        }
850        .wm-reviews__read-more {
851            background-color: transparent;
852            border: 0;
853            color: #1251CA;
854            transition: all 0.3s ease;
855            font-size: 12px;
856            padding: 0;
857            margin-top: .5rem;
858        }
859        .wm-reviews__read-more:hover {
860            text-decoration: underline;
861            filter: brightness(0.9);
862        }
863        .wm-reviews__dialog {
864            max-width: 600px;
865            width: 100%;
866            border: 0;
867            border-radius: 4px;
868            position: relative;
869
870            article {
871                margin-bottom: 0;
872                border-bottom: 0;
873                padding-bottom: 0;
874            }
875
876            .wm-reviews__dialog--close {
877                position: absolute;
878                top: 15px;
879                right: 15px;
880                background-color: transparent;
881                border: 0;
882                cursor: pointer;
883            }
884        }
885    }
886
887    /* Review photos strip (BLOOM-17499); the overlay is .wm-review-photos-overlay below. */
888    .wm-reviews .wm-reviews__photos {
889        display: flex;
890        flex-wrap: wrap;
891        gap: 8px;
892        list-style: none;
893        margin: 12px 0 0;
894        padding: 0;
895    }
896    .wm-reviews .wm-reviews__photo-item {
897        margin: 0;
898        padding: 0;
899    }
900    .wm-reviews .wm-reviews__photo {
901        display: block;
902        width: 96px;
903        height: 96px;
904        padding: 0;
905        border: 0;
906        border-radius: 4px;
907        overflow: hidden;
908        background: #eee;
909        cursor: zoom-in;
910        line-height: 0;
911    }
912    .wm-reviews .wm-reviews__photo img {
913        display: block;
914        width: 100%;
915        height: 100%;
916        object-fit: cover;
917    }
918    .wm-reviews .wm-reviews__photo:focus-visible {
919        outline: 2px solid currentColor;
920        outline-offset: 2px;
921    }
922
923    /* Product List Section */
924    .product-list--horizontal {
925        overflow-x: auto;
926        white-space: nowrap;
927        padding: 0 0 10px 15px;
928    }
929
930    .product-list--horizontal .product-list__item {
931        display: inline-block;
932        width: 252px;
933        margin-right: 15px;
934    }
935
936    /* Atomic CSS Helpers */
937    .text-uppercase {
938        text-transform: uppercase;
939    }
940
941    /* Custom arrangements & subscriptions */
942    .custom-page-nlp__customArrangements .text-image-text > div,
943    .custom-page-nlp__subscriptions .text-image-text > div {
944        font-size: 18px;
945    }
946
947    /* Blog posts */
948    .wm-blog-posts {
949        display: grid;
950        grid-template-columns: repeat(var(--columns, 2), 1fr);
951        column-gap: var(--column-gap);
952        row-gap: var(--row-gap);
953        padding: var(--frame);
954    }
955    .wm-blog-posts:not(.side-image) .wm-blog-posts__item {
956        display: flex;
957        flex-direction: column;
958    }
959    .wm-blog-posts:not(.side-image) .wm-blog-posts__content {
960        flex-grow: 1;
961        align-items: start;
962    }
963    .wm-blog-posts:not(.side-image) .wm-blog-posts__image {
964        border: 1px solid #DDD;
965        border-bottom: none;
966    }
967    .wm-blog-posts.side-image .wm-blog-posts__image {
968        border: 1px solid #DDD;
969        border-right: none;
970        height: 100%;
971    }
972    .wm-blog-posts.side-image .wm-blog-posts__image-link {
973        width: 100%;
974        height: 100%;
975    }
976    .wm-blog-posts .wm-blog-posts__item {
977        display: flex;
978        flex-direction: column;
979    }
980    .wm-blog-posts__heading {
981        grid-column: 1 / -1;
982        font-family: var(--decorative-font, 'sans-serif');
983        font-size: 3rem;
984        font-weight: 700;
985        line-height: 1.3;
986    }
987    .wm-blog-posts img {
988        height: 300px;
989        object-fit: cover;
990        width: 100%;
991    }
992    .wm-blog-posts .wm-blog-posts__content {
993        background: #F4F4F4;
994        padding: 2rem;
995        height: auto;
996        display: flex;
997        flex-direction: column;
998        justify-content: center;
999    }
1000    .wm-blog-posts.two-column .wm-blog-posts__content {
1001        align-items: center;
1002    }
1003    .wm-blog-posts.two-column {
1004        align-items: center;
1005    }
1006    .wm-blog-posts.list .wm-blog-posts__content {
1007        background-color: transparent;
1008    }
1009    .wm-blog-posts.side-image .wm-blog-posts__content,
1010    .wm-blog-posts.list .wm-blog-posts__content,
1011    .wm-blog-posts.two-column .wm-blog-posts__content {
1012        height: 100%;
1013    }
1014    .wm-blog-posts.side-image img {
1015        height: 250px;
1016    }
1017    .wm-blog-posts.side-image .wm-blog-posts__item {
1018        display: grid;
1019        align-items: center;
1020    }
1021    .wm-blog-posts.side-image[style*="--columns:1"] .wm-blog-posts__item,
1022    .wm-blog-posts.side-image[style*="--columns: 1"] .wm-blog-posts__item {
1023        grid-template-columns: 1fr;
1024    }
1025    .wm-blog-posts.side-image[style*="--columns:2"] .wm-blog-posts__item,
1026    .wm-blog-posts.side-image[style*="--columns: 2"] .wm-blog-posts__item {
1027        grid-template-columns: 45% 55%;
1028    }
1029    .wm-blog-posts__date {
1030        color: #282A35;
1031        display: block;
1032        margin-bottom: 1rem;
1033    }
1034    .wm-blog-posts__title {
1035        color: #282A35;
1036        font-family: var(--decorative-font, 'sans-serif');
1037        font-size: 2.25rem;
1038        font-weight: 700;
1039        line-height: 1.3;
1040        margin-bottom: 1rem;
1041    }
1042    .wm-blog-posts__excerpt {
1043        margin-bottom: 1.75rem;
1044    }
1045    .wm-blog-posts__read-more {
1046        margin-top: auto;
1047        text-decoration: underline;
1048    }
1049
1050    /* Recent Deliveries */
1051    * + .recent-deliveries {
1052        margin-top: 4rem;
1053    }
1054    .recent-deliveries:not(:last-child) {
1055        margin-bottom: 4rem;
1056    }
1057    .recent-deliveries__feed {
1058        list-style: none;
1059        margin: 0 auto;
1060        padding: 0;
1061        max-width: 640px;
1062        display: flex;
1063        flex-direction: column;
1064        gap: 3.2rem;
1065    }
1066    .recent-deliveries__entry {
1067        background: var(--body-bg, #fff);
1068        border: 1px solid var(--divider-color, #e5e7eb);
1069        border-radius: 1.6rem;
1070        padding: 3.2rem 4rem;
1071        color: var(--body-text-color);
1072    }
1073    .recent-deliveries__shop {
1074        display: flex;
1075        align-items: center;
1076        gap: 1.4rem;
1077        margin-bottom: 2.8rem;
1078    }
1079    .recent-deliveries__avatar {
1080        width: 44px;
1081        height: 44px;
1082        border-radius: 50%;
1083        object-fit: cover;
1084        flex: 0 0 auto;
1085    }
1086    .recent-deliveries__avatar--initials {
1087        display: flex;
1088        align-items: center;
1089        justify-content: center;
1090        color: #fff;
1091        font-size: 1.5rem;
1092        font-weight: 600;
1093        letter-spacing: 0.05rem;
1094        text-transform: uppercase;
1095        user-select: none;
1096    }
1097    .recent-deliveries__shop-info {
1098        min-width: 0;
1099    }
1100    .recent-deliveries__shop-name {
1101        font-size: 1.7rem;
1102        font-weight: 600;
1103        margin: 0;
1104        color: var(--body-text-color);
1105    }
1106    .recent-deliveries__shop-location {
1107        font-size: 1.3rem;
1108        margin: 0.2rem 0 0;
1109        color: var(--body-text-color);
1110        opacity: 0.7;
1111    }
1112    .recent-deliveries__image-wrapper {
1113        display: flex;
1114        justify-content: center;
1115        margin-bottom: 2.8rem;
1116    }
1117    .recent-deliveries__image {
1118        width: 65%;
1119        height: auto;
1120        aspect-ratio: 1 / 1;
1121        object-fit: cover;
1122        border-radius: 6px;
1123        display: block;
1124    }
1125    .recent-deliveries__caption {
1126        margin-bottom: 2.4rem;
1127    }
1128    .recent-deliveries__caption-text {
1129        font-size: 1.5rem;
1130        line-height: 1.6;
1131        margin: 0;
1132        color: var(--body-text-color);
1133    }
1134    .recent-deliveries__date {
1135        display: block;
1136        margin-top: 1.4rem;
1137        font-size: 1.1rem;
1138        text-transform: uppercase;
1139        letter-spacing: 0.2rem;
1140        color: var(--body-text-color);
1141        opacity: 0.6;
1142        white-space: nowrap;
1143    }
1144    .recent-deliveries__product {
1145        border-top: 1px solid var(--divider-color, #e5e7eb);
1146        padding-top: 2rem;
1147        display: flex;
1148        align-items: flex-start;
1149        justify-content: space-between;
1150        gap: 1.6rem;
1151    }
1152    .recent-deliveries__product-info {
1153        min-width: 0;
1154    }
1155    .recent-deliveries__product-name {
1156        font-size: 1.6rem;
1157        font-weight: 500;
1158    }
1159    a.recent-deliveries__product-name {
1160        color: var(--text-action-color);
1161        text-decoration: none;
1162        border-bottom: 1px solid currentColor;
1163    }
1164    a.recent-deliveries__product-name:hover {
1165        color: var(--text-action-color-active);
1166        text-decoration: none;
1167    }
1168    span.recent-deliveries__product-name {
1169        color: var(--body-text-color);
1170    }
1171    .recent-deliveries__upgrade {
1172        font-size: 1.2rem;
1173        text-transform: uppercase;
1174        letter-spacing: 0.15rem;
1175        margin: 0.6rem 0 0;
1176        color: var(--body-text-color);
1177        opacity: 0.6;
1178    }
1179    .recent-deliveries__occasion {
1180        display: block;
1181        margin-top: .75rem;
1182        font-size: 1rem;
1183        text-transform: uppercase;
1184        letter-spacing: 0.2rem !important;
1185        color: var(--body-text-color);
1186        white-space: nowrap;
1187    }
1188    /* FAQ */
1189    [data-gjs-type] .store-faq__faq {
1190        margin: 0;
1191    }
1192    .store-faq__faq-items {
1193        display: grid;
1194        gap: 8px;
1195    }
1196    .faq {
1197        border: 1px solid #e2e2e2;
1198        border-radius: 8px;
1199        background: #FAFAFA;
1200        overflow: hidden;
1201        padding: 20px;
1202    }
1203    .faq__q {
1204        display: block;
1205        margin: 0;
1206        padding-right: 24px;
1207        cursor: pointer;
1208        font-size: 16px;
1209        font-weight: 600;
1210        position: relative;
1211        outline: none;
1212        user-select: none;
1213        list-style: none;
1214    }
1215    .faq__q::-webkit-details-marker {
1216        display: none;
1217    }
1218    .faq__q::marker {
1219        content: none;
1220    }
1221    .faq__q::after {
1222        content: "";
1223        position: absolute;
1224        right: 0;
1225        top: 50%;
1226        width: 10px;
1227        height: 10px;
1228        border-right: 2px solid #495057;
1229        border-bottom: 2px solid #495057;
1230        transform: translateY(-50%) rotate(-45deg);
1231        transition: transform 200ms ease;
1232    }
1233    .faq[open] .faq__q::after {
1234        transform: translateY(-50%) rotate(45deg);
1235    }
1236    .faq__content {
1237        display: grid;
1238        grid-template-rows: 0fr;
1239        transition: grid-template-rows 200ms ease;
1240    }
1241    .faq[open] .faq__content {
1242        grid-template-rows: 1fr;
1243    }
1244    .faq__a {
1245        margin-top: 20px;
1246        overflow: hidden;
1247    }
1248    .faq__a-inner {
1249        color: #333;
1250        line-height: 1.5;
1251        font-weight: 300;
1252        font-size: 16px;
1253    }
1254
1255    /* Gallery */
1256    .wm-gallery {
1257        padding: var(--frame, 0);
1258    }
1259    .wm-gallery__description {
1260        margin-bottom: 1.5rem;
1261        color: var(--body-text-color, #333);
1262    }
1263    .wm-gallery__grid {
1264        display: grid;
1265        grid-template-columns: repeat(var(--columns, 2), 1fr);
1266        column-gap: var(--column-gap, 16px);
1267        row-gap: var(--row-gap, 16px);
1268    }
1269    .wm-gallery__item {
1270        display: block;
1271        overflow: hidden;
1272        cursor: pointer;
1273    }
1274    .wm-gallery__item--linked {
1275        cursor: pointer;
1276    }
1277    .wm-gallery__image {
1278        width: 100%;
1279        height: auto;
1280        object-fit: cover;
1281        aspect-ratio: var(--aspect-ratio, 4/3);
1282        border-radius: var(--border-radius, 0);
1283        transition: transform 0.3s ease;
1284    }
1285    .wm-gallery__item:hover .wm-gallery__image {
1286        transform: scale(1.02);
1287    }
1288    .wm-gallery__caption {
1289        padding: 0.5rem 0;
1290        display: flex;
1291        flex-direction: column;
1292        gap: 0.25rem;
1293    }
1294    .wm-gallery__image-title {
1295        font-weight: bold !important;
1296        font-size: 16px;
1297        margin-top: 4px;
1298    }
1299
1300    /* Gallery - Masonry layout */
1301    .wm-gallery--masonry .wm-gallery__grid {
1302        display: block;
1303        column-count: var(--columns, 2);
1304        column-gap: var(--column-gap, 16px);
1305    }
1306    .wm-gallery--masonry .wm-gallery__item {
1307        break-inside: avoid;
1308        margin-bottom: var(--row-gap, 16px);
1309    }
1310    .wm-gallery--masonry .wm-gallery__image {
1311        aspect-ratio: unset;
1312        height: auto;
1313        object-fit: contain;
1314    }
1315
1316    .wm-gallery--masonry .wm-gallery__grid--fill-row {
1317        display: grid;
1318        grid-template-columns: repeat(var(--columns, 2), 1fr);
1319        column-gap: var(--column-gap, 16px);
1320        row-gap: var(--row-gap, 16px);
1321        align-items: start;
1322    }
1323    .wm-gallery--masonry .wm-gallery__grid--fill-row .wm-gallery__item {
1324        margin-bottom: 0;
1325    }
1326    .wm-gallery--masonry .wm-gallery__grid--fill-row.is-masonry-js {
1327        grid-auto-rows: 1px;
1328        row-gap: 0;
1329    }
1330
1331    .wm-gallery.wm-gallery--carousel {
1332        max-width: 800px;
1333        margin: 0 auto;
1334    }
1335
1336    /* Gallery - Carousel (Swiper core styles) */
1337    .swiper {
1338        margin-left: auto;
1339        margin-right: auto;
1340        position: relative;
1341        overflow: hidden;
1342        list-style: none;
1343        padding: 0;
1344        z-index: 1;
1345        display: block;
1346    }
1347    .swiper-wrapper {
1348        position: relative;
1349        width: 100%;
1350        height: 100%;
1351        z-index: 1;
1352        display: flex;
1353        transition-property: transform;
1354        transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
1355        box-sizing: content-box;
1356    }
1357    .swiper-slide {
1358        flex-shrink: 0;
1359        width: 100%;
1360        height: 100%;
1361        position: relative;
1362        transition-property: transform;
1363    }
1364    .swiper-slide-invisible-blank {
1365        visibility: hidden;
1366    }
1367    /* Hide default Swiper navigation buttons */
1368    .swiper-button-prev,
1369    .swiper-button-next {
1370        display: none;
1371    }
1372
1373    /* Gallery Carousel component */
1374    .wm-gallery-carousel {
1375        position: relative;
1376        width: 100%;
1377    }
1378    .wm-gallery-carousel__main {
1379        position: relative;
1380        display: flex;
1381        align-items: center;
1382        gap: 16px;
1383    }
1384    .wm-gallery-carousel__swiper {
1385        width: 100%;
1386        overflow: hidden;
1387    }
1388    .wm-gallery-carousel__link {
1389        display: block;
1390        width: 100%;
1391    }
1392    .wm-gallery-carousel__link--active {
1393        cursor: pointer;
1394    }
1395    .wm-gallery-carousel__link:not(.wm-gallery-carousel__link--active) {
1396        pointer-events: none;
1397    }
1398    .wm-gallery-carousel__image {
1399        width: 100%;
1400        height: auto;
1401        object-fit: cover;
1402        display: block;
1403    }
1404    /* Carousel navigation buttons */
1405    .wm-gallery-carousel__nav {
1406        flex-shrink: 0;
1407        width: 40px;
1408        height: 40px;
1409        display: flex;
1410        align-items: center;
1411        justify-content: center;
1412        background: white;
1413        border: 1px solid #e0e0e0;
1414        border-radius: 50%;
1415        cursor: pointer;
1416        transition: background-color 0.2s, border-color 0.2s;
1417        z-index: 10;
1418    }
1419    .wm-gallery-carousel__nav:hover {
1420        background-color: #f5f5f5;
1421        border-color: #ccc;
1422    }
1423    .wm-gallery-carousel__nav:disabled {
1424        opacity: 0.5;
1425        cursor: not-allowed;
1426    }
1427    /* Overlay navigation (for full-width carousel) */
1428    .wm-gallery-carousel__nav--overlay {
1429        position: absolute;
1430        top: 50%;
1431        transform: translateY(-50%);
1432        background: rgba(255, 255, 255, 0.9);
1433    }
1434    .wm-gallery-carousel__nav--overlay.wm-gallery-carousel__nav--prev {
1435        left: 16px;
1436    }
1437    .wm-gallery-carousel__nav--overlay.wm-gallery-carousel__nav--next {
1438        right: 16px;
1439    }
1440    /* Thumbnails layout - arrows outside */
1441    .wm-gallery-carousel--carousel-thumbnails .wm-gallery-carousel__main {
1442        display: flex;
1443        align-items: center;
1444    }
1445    .wm-gallery-carousel--carousel-thumbnails .wm-gallery-carousel__swiper {
1446        flex: 1;
1447        min-width: 0;
1448    }
1449    .wm-gallery-carousel--carousel-thumbnails .wm-gallery-carousel__nav {
1450        position: relative;
1451    }
1452    /* Full-width layout - arrows on image */
1453    .wm-gallery-carousel--carousel .wm-gallery-carousel__main {
1454        position: relative;
1455    }
1456    .wm-gallery-carousel--carousel .wm-gallery-carousel__swiper {
1457        width: 100%;
1458    }
1459    /* Thumbnails */
1460    .wm-gallery-carousel__thumbs {
1461        margin-top: 16px;
1462        overflow: hidden;
1463        display: flex;
1464        justify-content: center;
1465    }
1466    .wm-gallery-carousel__thumbs .swiper-wrapper {
1467        justify-content: center;
1468        gap: 0.75rem;
1469        overflow: auto;
1470    }
1471    .wm-gallery-carousel__thumbs .swiper-slide {
1472        opacity: 0.6;
1473        cursor: pointer;
1474        transition: opacity 0.2s;
1475        width: 80px !important;
1476        height: 80px;
1477        flex-shrink: 0;
1478
1479    }
1480    .wm-gallery-carousel__thumbs .swiper-slide-thumb-active {
1481        opacity: 1;
1482    }
1483    .wm-gallery-carousel__thumb-image {
1484        width: 80px;
1485        height: 80px;
1486        object-fit: cover;
1487        display: block;
1488    }
1489
1490    /* Gallery Lightbox (wm-gallery-lightbox CSR element) */
1491    .wm-glb {
1492        position: fixed;
1493        inset: 0;
1494        z-index: 99999;
1495        background: rgba(0, 0, 0, 0.92);
1496        display: flex;
1497        align-items: center;
1498        justify-content: center;
1499    }
1500    .wm-glb__swiper {
1501        width: 100%;
1502        height: 100%;
1503    }
1504    .wm-glb__slide {
1505        display: flex;
1506        align-items: center;
1507        justify-content: center;
1508        width: 100%;
1509        height: 100%;
1510        box-sizing: border-box;
1511        padding: 72px 88px 112px;
1512    }
1513    .wm-glb__slide .swiper-zoom-container {
1514        width: 100%;
1515        height: 100%;
1516    }
1517    .wm-glb__image {
1518        max-width: 100%;
1519        max-height: 100%;
1520        width: auto;
1521        height: auto;
1522        object-fit: contain;
1523        margin: auto;
1524        display: block;
1525    }
1526    .wm-glb__close {
1527        position: absolute;
1528        top: 16px;
1529        right: 20px;
1530        z-index: 2;
1531        background: transparent;
1532        border: none;
1533        padding: 8px;
1534        color: #fff;
1535        cursor: pointer;
1536        line-height: 0;
1537    }
1538    .wm-glb__nav {
1539        position: absolute;
1540        top: 50%;
1541        transform: translateY(-50%);
1542        z-index: 2;
1543        background: transparent;
1544        border: none;
1545        padding: 12px;
1546        color: #fff;
1547        cursor: pointer;
1548        line-height: 0;
1549        opacity: 0.85;
1550        transition: opacity 0.2s ease;
1551    }
1552    .wm-glb__nav:hover,
1553    .wm-glb__nav:focus-visible,
1554    .wm-glb__close:hover,
1555    .wm-glb__close:focus-visible {
1556        opacity: 1;
1557    }
1558    .wm-glb__nav:focus-visible,
1559    .wm-glb__close:focus-visible,
1560    .wm-glb__view:focus-visible {
1561        outline: 2px solid #fff;
1562        outline-offset: 2px;
1563    }
1564    .wm-glb__nav--prev {
1565        left: 12px;
1566    }
1567    .wm-glb__nav--next {
1568        right: 12px;
1569    }
1570    .wm-glb__caption {
1571        position: absolute;
1572        bottom: 24px;
1573        left: 50%;
1574        transform: translateX(-50%);
1575        z-index: 2;
1576        max-width: 80vw;
1577        text-align: center;
1578        color: #fff;
1579        display: flex;
1580        flex-direction: column;
1581        gap: 6px;
1582    }
1583    .wm-glb__title {
1584        position: absolute;
1585        top: 18px;
1586        left: 50%;
1587        transform: translateX(-50%);
1588        z-index: 2;
1589        max-width: 60vw;
1590        text-align: center;
1591        color: #fff;
1592        font-weight: bold;
1593        font-size: 20px;
1594    }
1595    .wm-glb__description {
1596        font-size: 16px;
1597        opacity: 0.85;
1598    }
1599    .wm-glb__view {
1600        align-self: center;
1601        margin-top: 6px;
1602        padding: 6px 18px;
1603        border: 1px solid #fff;
1604        border-radius: 4px;
1605        background: #fff;
1606        color: #000 !important;
1607        text-decoration: none;
1608        font-size: 14px;
1609    }
1610    .wm-glb__view:hover {
1611        opacity: 0.85;
1612    }
1613    .wm-glb__counter {
1614        position: absolute;
1615        top: 20px;
1616        left: 24px;
1617        z-index: 2;
1618        color: #fff;
1619        font-size: 14px;
1620        opacity: 0.85;
1621    }
1622    @media (max-width: 600px) {
1623        .wm-glb__slide {
1624            padding: 64px 56px 104px;
1625        }
1626        .wm-glb__nav {
1627            padding: 6px;
1628        }
1629    }
1630
1631    /* Review photos overlay (wm-review-photos-overlay CSR element, BLOOM-17499): a native <dialog>
1632       appended to <body>, so nothing here nests under .wm-reviews. */
1633    .wm-review-photos-overlay {
1634        position: fixed;
1635        inset: 0;
1636        width: 100%;
1637        max-width: none;
1638        height: 100%;
1639        max-height: none;
1640        margin: 0;
1641        padding: 0;
1642        border: 0;
1643        background: transparent;
1644        color: #fff;
1645        overflow: hidden;
1646    }
1647    .wm-review-photos-overlay::backdrop {
1648        background: rgba(0, 0, 0, 0.88);
1649    }
1650    .wm-review-photos-overlay__stage {
1651        position: absolute;
1652        inset: 0;
1653        display: flex;
1654        align-items: center;
1655        justify-content: center;
1656        padding: 56px 64px;
1657        box-sizing: border-box;
1658        touch-action: pan-y;
1659    }
1660    .wm-review-photos-overlay__image {
1661        display: block;
1662        max-width: 100%;
1663        max-height: 100%;
1664        width: auto;
1665        height: auto;
1666        object-fit: contain;
1667        border-radius: 4px;
1668        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
1669    }
1670    .wm-review-photos-overlay__button {
1671        position: absolute;
1672        display: flex;
1673        align-items: center;
1674        justify-content: center;
1675        width: 44px;
1676        height: 44px;
1677        padding: 0;
1678        border: 0;
1679        border-radius: 50%;
1680        background: rgba(255, 255, 255, 0.14);
1681        color: #fff;
1682        cursor: pointer;
1683        line-height: 0;
1684    }
1685    .wm-review-photos-overlay__button:hover,
1686    .wm-review-photos-overlay__button:focus-visible {
1687        background: rgba(255, 255, 255, 0.3);
1688        outline: 2px solid #fff;
1689        outline-offset: 2px;
1690    }
1691    .wm-review-photos-overlay__button svg {
1692        width: 22px;
1693        height: 22px;
1694        fill: none;
1695        stroke: currentColor;
1696        stroke-width: 2;
1697        stroke-linecap: round;
1698        stroke-linejoin: round;
1699    }
1700    .wm-review-photos-overlay__close {
1701        top: 12px;
1702        right: 12px;
1703    }
1704    .wm-review-photos-overlay__prev,
1705    .wm-review-photos-overlay__next {
1706        top: 50%;
1707        transform: translateY(-50%);
1708    }
1709    .wm-review-photos-overlay__prev {
1710        left: 12px;
1711    }
1712    .wm-review-photos-overlay__next {
1713        right: 12px;
1714    }
1715    .wm-review-photos-overlay__counter {
1716        position: absolute;
1717        left: 0;
1718        right: 0;
1719        bottom: 16px;
1720        margin: 0;
1721        font-size: 14px;
1722        line-height: 20px;
1723        text-align: center;
1724        color: rgba(255, 255, 255, 0.85);
1725    }
1726    .wm-review-photos-overlay[data-single] .wm-review-photos-overlay__prev,
1727    .wm-review-photos-overlay[data-single] .wm-review-photos-overlay__next,
1728    .wm-review-photos-overlay[data-single] .wm-review-photos-overlay__counter {
1729        display: none;
1730    }
1731    body.wm-review-photos-open {
1732        overflow: hidden;
1733    }
1734    @media (max-width: 767px) {
1735        .wm-review-photos-overlay__stage {
1736            padding: 56px 12px;
1737        }
1738        .wm-review-photos-overlay__prev,
1739        .wm-review-photos-overlay__next {
1740            top: auto;
1741            bottom: 44px;
1742            transform: none;
1743        }
1744    }
1745
1746    /* Gallery List — shared */
1747    .wm-gallery-list__image {
1748        width: 100%;
1749        aspect-ratio: 4/3;
1750        object-fit: cover;
1751        border-radius: var(--border-radius, 0);
1752    }
1753    .wm-gallery-list__title {
1754        font-family: var(--decorative-font, 'sans-serif');
1755        font-size: 20px;
1756        font-weight: 600;
1757        color: inherit;
1758        text-decoration: none;
1759    }
1760    .wm-gallery-list__title:hover {
1761        text-decoration: underline;
1762    }
1763    .wm-gallery-list__description {
1764        color: var(--body-text-color, #333);
1765        margin-top: 0.5rem;
1766    }
1767    .wm-gallery-list__image-link {
1768        display: block;
1769        overflow: hidden;
1770        border-radius: var(--border-radius, 0);
1771    }
1772
1773    /* Gallery List — columns variant */
1774    .wm-gallery-list--columns {
1775        display: grid;
1776        grid-template-columns: repeat(var(--columns, 3), 1fr);
1777        gap: 24px;
1778    }
1779    .wm-gallery-list--columns .wm-gallery-list__item {
1780        display: flex;
1781        flex-direction: column;
1782    }
1783    .wm-gallery-list--columns .wm-gallery-list__content {
1784        text-align: center;
1785    }
1786    .wm-gallery-list--columns .wm-gallery-list__title {
1787        display: block;
1788        margin-top: 0.75rem;
1789    }
1790
1791    /* Gallery List — textAndImageVertical variant */
1792    .wm-gallery-list--textAndImageVertical {
1793        display: flex;
1794        flex-direction: column;
1795        gap: 24px;
1796    }
1797    .wm-gallery-list--textAndImageVertical .wm-gallery-list__item {
1798        display: grid;
1799        grid-template-columns: 1fr 1fr;
1800        gap: 24px;
1801        align-items: center;
1802    }
1803
1804    /* Gallery List — textAndImageHorizontal variant */
1805    .wm-gallery-list--textAndImageHorizontal {
1806        display: flex;
1807        flex-direction: column;
1808    }
1809    .wm-gallery-list--textAndImageHorizontal .wm-gallery-list__item {
1810        display: grid;
1811        grid-template-columns: 1fr 1fr;
1812        align-items: center;
1813    }
1814    .wm-gallery-list--textAndImageHorizontal .wm-gallery-list__item .wm-gallery-list__content {
1815        padding: 8%;
1816    }
1817    .wm-gallery-list--textAndImageHorizontal .wm-gallery-list__item--reversed {
1818        direction: rtl;
1819    }
1820    .wm-gallery-list--textAndImageHorizontal .wm-gallery-list__item--reversed > * {
1821        direction: ltr;
1822    }
1823
1824    /* Gallery List — noImages variant */
1825    .wm-gallery-list--noImages {
1826        display: flex;
1827        flex-direction: column;
1828        gap: 12px;
1829    }
1830    .wm-gallery-list--noImages .wm-gallery-list__item {
1831        text-align: center;
1832    }
1833
1834    /* Mobile */
1835    @media (max-width: 800px) {
1836        [id^='custom-page-main-content'] [data-mobile-font-size='true'] {
1837            font-size: var(--mobile-font-size, 16px) !important;
1838        }
1839
1840        [data-gjs-type='grid-row']:not([data-nostack='true']) {
1841            grid-template-columns: 1fr !important;
1842        }
1843
1844        .wwd-service-areas__grid {
1845            grid-template-columns: 1fr !important;
1846        }
1847
1848        [data-gjs-type='flex-columns']:not([data-nostack='true']) {
1849            flex-wrap: wrap !important;
1850            overflow-x: visible !important;
1851        }
1852        [data-gjs-type='flex-columns']:not([data-nostack='true']) > [data-gjs-type='flex-column'] {
1853            flex: 1 1 100% !important;
1854        }
1855
1856        [id^='section-slider'] .swiper-slide {
1857            flex-direction: column;
1858        }
1859        [id^='section-slider'] .swiper-slide [data-gjs-type='grid-column'] {
1860            flex: 1 1 100% !important;
1861        }
1862        [id^='section-slider'][data-nav-style='arrows-sides'] .swiper {
1863            width: 100%;
1864        }
1865        [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-prev,
1866        [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-button-prev {
1867            top: unset;
1868            right: auto;
1869            transform: translateX(-50%);
1870            bottom: 0;
1871            left: 45%;
1872        }
1873        [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-next,
1874        [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-button-next {
1875            top: unset;
1876            left: auto;
1877            transform: translateX(50%);
1878            bottom: 0;
1879            right: 45%;
1880        }
1881
1882        section .section-container {
1883            width: 100% !important;
1884        }
1885
1886        .people-image-wrapper,
1887        .services-image-wrapper {
1888            height: auto !important;
1889        }
1890
1891        .banner-container {
1892            min-height: fit-content !important;
1893            padding: 2.5rem 0;
1894        }
1895        [id^='section-banner'][data-bg-type='video'] .banner-container {
1896            padding: 0;
1897        }
1898        [id^='section-banner'][data-bg-type='video'] .banner-container .section-container {
1899            padding: 6% !important;
1900        }
1901
1902        .text-and-image-section .text-and-image-container {
1903            flex-direction: column !important;
1904            padding: 0 !important;
1905        }
1906
1907        .text-and-image-section .text-image-text {
1908            width: 100% !important;
1909        }
1910
1911        .text-and-image-section.cover .text-image-text {
1912            padding: 3rem 15px !important;
1913        }
1914
1915        .text-and-image-section.cover.img-top .text-image-text {
1916            padding: 1rem 15px 3rem !important;
1917        }
1918
1919        .text-and-image-section .text-image-img,
1920        .text-and-image-section .text-image-text {
1921            padding: 0 !important;
1922        }
1923
1924        .text-and-image-section .text-image-img {
1925            width: auto !important;
1926        }
1927        .text-and-image-section.cover .text-image-img,
1928        .text-and-image-section.cover .wm-image-container {
1929            width: 100% !important;
1930        }
1931
1932        .text-and-image-section [data-position='right'] {
1933            order: 0 !important;
1934        }
1935        .text-and-image-section .right-text {
1936            order: 1 !important;
1937        }
1938        .text-and-image-section [data-position='left'] img {
1939            margin-right: auto !important;
1940            margin-left: 0 !important;
1941        }
1942        .text-and-image-section img {
1943            width: 100% !important;
1944        }
1945        .wm-map-container {
1946            float: none !important;
1947            width: auto !important;
1948            max-width: 100% !important;
1949        }
1950        .wm-link, .wm-link-button {
1951            display: flex;
1952            align-items: center;
1953            justify-content: center;
1954            max-width: max-content;
1955        }
1956
1957        .wm-link-button {
1958            height: 44px;
1959        }
1960        .wm-blog-posts {
1961            grid-template-columns: 1fr;
1962        }
1963        .wm-blog-posts.side-image {
1964            grid-template-columns: 1fr;
1965        }
1966        /* Side-image layout should look like grid layout on mobile */
1967        .wm-blog-posts.side-image .wm-blog-posts__item {
1968            display: flex;
1969            flex-direction: column;
1970            grid-template-columns: 1fr;
1971        }
1972        .wm-blog-posts.side-image .wm-blog-posts__image,
1973        .wm-blog-posts.side-image .wm-blog-posts__content {
1974            width: 100%;
1975        }
1976        .wm-blog-posts.side-image .wm-blog-posts__image {
1977            border: 1px solid #DDD;
1978            border-bottom: none;
1979        }
1980        .wm-blog-posts.side-image .wm-blog-posts__content {
1981            flex-grow: 1;
1982            align-items: start;
1983            height: auto;
1984        }
1985        .wm-blog-posts.side-image img {
1986            height: 300px;
1987        }
1988
1989        /* Recent Deliveries mobile */
1990        .recent-deliveries__entry {
1991            padding: 2.4rem 2rem;
1992        }
1993        .recent-deliveries__image {
1994            width: 100%;
1995        }
1996
1997        /* Gallery mobile */
1998        .wm-gallery__grid,
1999        .wm-gallery-list--columns {
2000            grid-template-columns: 1fr;
2001        }
2002        .wm-gallery-list--textAndImageVertical .wm-gallery-list__item,
2003        .wm-gallery-list--textAndImageHorizontal .wm-gallery-list__item {
2004            grid-template-columns: 1fr;
2005        }
2006        .wm-gallery-list--textAndImageHorizontal .wm-gallery-list__item--reversed {
2007            direction: ltr;
2008        }
2009        .wm-gallery--masonry .wm-gallery__grid {
2010            column-count: 1;
2011        }
2012        /* Row-fill masonry collapses to a single grid column on mobile. Because it
2013           is always a grid (never column-count), the flat DOM keeps the 1, 2, 3…
2014           reading order regardless of whether the JS staggering has run. */
2015        .wm-gallery--masonry .wm-gallery__grid--fill-row {
2016            grid-template-columns: 1fr;
2017        }
2018        .wm-gallery-list--textAndImageHorizontal {
2019            gap: 24px;
2020        }
2021        .wm-gallery-list--textAndImageHorizontal .wm-gallery-list__item .wm-gallery-list__content {
2022            padding: 0;
2023            margin-top: 0.75rem;
2024        }
2025    }
2026
2027    @media (max-width: 480px) {
2028        [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-prev,
2029        [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-button-prev {
2030            left: 41%;
2031            bottom: -25px;
2032        }
2033        [id^='section-slider'][data-nav-style='arrows-sides'] .swiper-button-next,
2034        [id^='section-slider'][data-nav-style='arrows-top-right'] .swiper-button-next {
2035            right: 41%;
2036            bottom: -25px;
2037        }
2038    }
2039
2040    /* Appointment Widget (wm-appointment-widget) */
2041    .wm-appt {
2042        --wm-appt-border: #e2e4ea;
2043        --wm-appt-text: #1f2430;
2044        --wm-appt-muted: #6b7280;
2045        /* Neutral palette mirrors the premium site checkout button (ps AppButton --primary,
2046           --color-gray-800 base / --color-gray-950 hover); green for success. */
2047        --wm-appt-primary: #1f2937;
2048        --wm-appt-primary-hover: #0d1016;
2049        --wm-appt-success: #2e7d32;
2050        font-family: inherit;
2051        /* Explicit base so type sizing doesn't depend on the page's root font-size. */
2052        font-size: 16px;
2053        line-height: 1.5;
2054        color: var(--wm-appt-text);
2055        max-width: 920px;
2056        margin: 0 auto;
2057        border: 1px solid var(--wm-appt-border);
2058        border-radius: 12px;
2059        background: #fff;
2060        box-shadow: 0 1px 10px rgba(67, 69, 81, 0.08);
2061        overflow: hidden;
2062    }
2063
2064    .wm-appt__header {
2065        padding: 28px 32px;
2066        background: linear-gradient(180deg, #f7f8fb 0%, #fff 100%);
2067        border-bottom: 1px solid var(--wm-appt-border);
2068    }
2069
2070    .wm-appt__title {
2071        margin: 0 0 6px;
2072        font-size: 24px;
2073        font-weight: 700 !important;
2074        line-height: 1.2;
2075    }
2076
2077    .wm-appt__caption {
2078        margin: 0;
2079        font-size: 16px;
2080        color: var(--wm-appt-text);
2081    }
2082
2083    .wm-appt__columns {
2084        display: grid;
2085        grid-template-columns: 1fr 1fr;
2086    }
2087
2088    .wm-appt__calendar {
2089        padding: 24px 32px;
2090        border-right: 1px solid var(--wm-appt-border);
2091    }
2092
2093    .wm-appt__times {
2094        padding: 24px 32px;
2095    }
2096
2097    .wm-appt__eyebrow {
2098        display: block;
2099        font-size: 12px;
2100        color: var(--wm-appt-text);
2101        margin-bottom: 16px;
2102    }
2103
2104    .wm-appt__month-nav {
2105        display: flex;
2106        align-items: center;
2107        justify-content: space-between;
2108        margin-bottom: 16px;
2109    }
2110
2111    .wm-appt__month {
2112        font-size: 18px;
2113        font-weight: 600 !important;
2114    }
2115
2116    .wm-appt__month-arrows {
2117        display: flex;
2118        gap: 4px;
2119    }
2120
2121    .wm-appt__arrow {
2122        width: 32px;
2123        height: 32px;
2124        display: inline-flex;
2125        align-items: center;
2126        justify-content: center;
2127        border: none;
2128        background: transparent;
2129        border-radius: 6px;
2130        cursor: pointer;
2131        color: var(--wm-appt-text);
2132    }
2133
2134    .wm-appt__arrow:hover:not(:disabled) {
2135        background: rgba(31, 41, 55, 0.08);
2136    }
2137
2138    .wm-appt__arrow:disabled {
2139        opacity: 0.35;
2140        cursor: default;
2141    }
2142
2143    .wm-appt__weekdays,
2144    .wm-appt__days {
2145        display: grid;
2146        grid-template-columns: repeat(7, 1fr);
2147    }
2148
2149    .wm-appt__weekday {
2150        text-align: center;
2151        font-size: 12px;
2152        font-weight: 500 !important;
2153        color: #6a7282;
2154        padding-bottom: 8px;
2155    }
2156
2157    .wm-appt__days {
2158        gap: 4px;
2159    }
2160
2161    .wm-appt__day {
2162        aspect-ratio: 1;
2163        display: inline-flex;
2164        align-items: center;
2165        justify-content: center;
2166        border: none;
2167        background: transparent;
2168        border-radius: 8px;
2169        font-size: 14px;
2170        font-weight: 500 !important;
2171        cursor: pointer;
2172        color: var(--wm-appt-text);
2173    }
2174
2175    .wm-appt__day:hover:not(.wm-appt__day--disabled):not(.wm-appt__day--selected) {
2176        background: rgba(31, 41, 55, 0.08);
2177    }
2178
2179    .wm-appt__day--selected {
2180        background: var(--wm-appt-primary);
2181        color: #fff;
2182        font-weight: 600 !important;
2183    }
2184
2185    .wm-appt__day--disabled {
2186        color: #c8ccd4;
2187        cursor: default;
2188    }
2189
2190    .wm-appt__times-empty {
2191        height: 100%;
2192        min-height: 220px;
2193        display: flex;
2194        flex-direction: column;
2195        align-items: center;
2196        justify-content: center;
2197        text-align: center;
2198        color: #b4b8c2;
2199        gap: 12px;
2200    }
2201
2202    .wm-appt__times-empty p {
2203        margin: 0;
2204        font-size: 16px;
2205    }
2206
2207    .wm-appt__times-title {
2208        margin: 0 0 20px;
2209        font-size: 18px;
2210        font-weight: 600 !important;
2211    }
2212
2213    .wm-appt__times-none {
2214        color: var(--wm-appt-muted);
2215        font-size: 16px;
2216    }
2217
2218    .wm-appt__slots {
2219        display: grid;
2220        grid-template-columns: 1fr 1fr;
2221        gap: 8px;
2222        max-height: 400px;
2223        overflow-y: auto;
2224        padding-right: 4px;
2225    }
2226
2227    .wm-appt__slot {
2228        padding: 10px 12px;
2229        border: 1px solid var(--wm-appt-border);
2230        background: #fff;
2231        border-radius: 8px;
2232        font-size: 14px;
2233        font-weight: 500 !important;
2234        cursor: pointer;
2235        color: var(--wm-appt-text);
2236        text-align: center;
2237    }
2238
2239    .wm-appt__slot:hover:not(.wm-appt__slot--selected) {
2240        border-color: var(--wm-appt-primary);
2241    }
2242
2243    .wm-appt__slot--selected {
2244        background: var(--wm-appt-primary);
2245        border-color: var(--wm-appt-primary);
2246        color: #fff;
2247        font-weight: 600 !important;
2248    }
2249
2250    .wm-appt__meta {
2251        margin: 20px 0 0;
2252        display: flex;
2253        flex-direction: column;
2254        gap: 6px;
2255    }
2256
2257    .wm-appt__meta div {
2258        display: flex;
2259        gap: 6px;
2260        font-size: 12px;
2261        color: var(--wm-appt-text);
2262    }
2263
2264    .wm-appt__meta dt,
2265    .wm-appt__meta dd {
2266        margin: 0;
2267    }
2268
2269    .wm-appt__details {
2270        padding: 24px 32px 28px;
2271        border-top: 1px solid var(--wm-appt-border);
2272        display: flex;
2273        flex-wrap: wrap;
2274        gap: 16px;
2275    }
2276
2277    .wm-appt__details-lead {
2278        width: 100%;
2279        margin: 0;
2280        font-size: 12px;
2281        font-weight: 400 !important;
2282    }
2283
2284    .wm-appt__field-row {
2285        width: 100%;
2286        display: flex;
2287        gap: 16px;
2288    }
2289
2290    .wm-appt__field {
2291        flex: 1;
2292        display: flex;
2293        flex-direction: column;
2294        gap: 6px;
2295    }
2296
2297    .wm-appt__field--full {
2298        width: 100%;
2299        flex-basis: 100%;
2300    }
2301
2302    .wm-appt__label {
2303        font-size: 14px;
2304        font-weight: 600 !important;
2305        margin-bottom: 0 !important;
2306    }
2307
2308    .wm-appt__required {
2309        margin-left: 2px;
2310        color: #d23b3b;
2311    }
2312
2313    .wm-appt__input {
2314        width: 100%;
2315        box-sizing: border-box;
2316        padding: 12px 14px;
2317        border: 1px solid var(--wm-appt-border);
2318        border-radius: 8px;
2319        font-family: inherit;
2320        font-size: 16px;
2321        color: var(--wm-appt-text);
2322        background: #fff;
2323    }
2324
2325    .wm-appt__input::placeholder {
2326        color: #bcbcbd;
2327    }
2328
2329    .wm-appt__input:focus {
2330        outline: none;
2331        border-color: var(--wm-appt-primary);
2332    }
2333
2334    .wm-appt__input--error {
2335        border-color: #d23b3b;
2336    }
2337
2338    .wm-appt__textarea {
2339        resize: vertical;
2340    }
2341
2342    .wm-appt__field-error {
2343        font-size: 14px;
2344        color: #d23b3b;
2345    }
2346
2347    .wm-appt__error {
2348        width: 100%;
2349        margin: 0;
2350        font-size: 16px;
2351        color: #d23b3b;
2352    }
2353
2354    .wm-appt__submit {
2355        align-self: flex-start;
2356        padding: 12px 24px;
2357        border: none;
2358        border-radius: 8px;
2359        background: var(--wm-appt-primary);
2360        color: #fff;
2361        font-family: inherit;
2362        font-size: 16px;
2363        font-weight: 600 !important;
2364        cursor: pointer;
2365    }
2366
2367    .wm-appt__submit:hover:not(:disabled) {
2368        background: var(--wm-appt-primary-hover);
2369    }
2370
2371    .wm-appt__submit:disabled {
2372        opacity: 0.6;
2373        cursor: default;
2374    }
2375
2376    .wm-appt__confirmation {
2377        padding: 48px 32px;
2378        display: flex;
2379        flex-direction: column;
2380        align-items: center;
2381        text-align: center;
2382        gap: 12px;
2383        color: var(--wm-appt-success);
2384    }
2385
2386    .wm-appt__confirmation-title {
2387        margin: 0;
2388        font-size: 26px;
2389        font-weight: 700 !important;
2390        color: var(--wm-appt-text);
2391    }
2392
2393    .wm-appt__confirmation-message {
2394        margin: 0 0 8px;
2395        font-size: 18px;
2396        color: var(--wm-appt-muted);
2397        max-width: 380px;
2398    }
2399
2400    @media (max-width: 640px) {
2401        .wm-appt__columns {
2402            grid-template-columns: 1fr;
2403        }
2404
2405        .wm-appt__calendar {
2406            border-right: none;
2407            border-bottom: 1px solid var(--wm-appt-border);
2408        }
2409
2410        .wm-appt__field-row {
2411            flex-direction: column;
2412        }
2413    }
2414
2415</style>
2416
2417	<!-- [START] Analytics Content: [default] -->
2418<!-- Google Tag Manager -->
2419<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
2420new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
2421j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
2422'https://www.googletagmanager.com/gtm.js?id='+i+dl+ '&gtm_cookies_win=x';f.parentNode.insertBefore(j,f);
2423})(window,document,'script','dataLayer','GTM-TLR3ZL8');
2424window.dataLayer = window.dataLayer || [];
2425dataLayer.push({"ga4PsId":"G-RWY7QD072S","vendorAccountId":"vndr_vbcY7jEo8qj0xhVK"});
2426                    if (typeof Object.assign != 'function') {
2427          Object.assign = function(target, varArgs) { // .length of function is 2
2428            'use strict';
2429            if (target == null) { // TypeError if undefined or null
2430              throw new TypeError('Cannot convert undefined or null to object');
2431            }
2432
2433            var to = Object(target);
2434
2435            for (var index = 1; index < arguments.length; index++) {
2436              var nextSource = arguments[index];
2437
2438              if (nextSource != null) { // Skip over if undefined or null
2439                for (var nextKey in nextSource) {
2440                  // Avoid bugs when hasOwnProperty is shadowed
2441                  if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) {
2442                    to[nextKey] = nextSource[nextKey];
2443                  }
2444                }
2445              }
2446            }
2447            return to;
2448          };
2449        }
2450
2451            var pageMetadataEventObj = Object.assign({
2452                'event': 'pageMetadata',
2453                'title': document.title,
2454                'path': location.pathname,
2455                'url': location.href,
2456                'referrer': document.referrer,
2457                'search': location.search,
2458                'visitedDomain': 'rosecottage.bloomnation.com',
2459                'login': 'notLoggedIn'
2460            }, JSON.parse('{"pageType":"Customer Account"}'));            pageMetadataEventObj['vendorDomain'] = 'rosecottageflorals.com';        window.dataLayer.push(pageMetadataEventObj);window.dataLayer = window.dataLayer || [];
2461dataLayer.push([]);
2462</script>
2462
2463<!-- End Google Tag Manager -->
2464	<!-- [END] Analytics Content: [default] -->
2465<script>
2466    //<![CDATA[
2467    var FORM_KEY = (document.cookie.match(/(?:^|;\s*)_csrf=([^;]*)/) || [])[1] || '';
2468    //]]>
2469</script>
2469
2470
2471                        <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'">
vendor: 84 bytes, lines 2471-2472
2471
2472                    <script src="https://www.google.com/recaptcha/api.js"></script>
2472<meta name="google-site-verification" content="WRf84sAwDZsNzqv2AeQhzmqFktts_3GEBrdM1cn-m-4" />
2473
2474<!-- [START] Custom HTML --><!-- [END] Custom HTML --></head>
2475<body class=" customer-account-login vendor-10360 bloom growth">
2476
2477
2478    <a class="skip-to-mp" href="https://www.bloomnation.com/florist/rose-cottage-florals/?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/rose-cottage-florals/?nav=premium-accessibility</a>
2479
2480<script>
2481  (function () {
2482    function ready(callback) {
2483      if (document.readyState === 'loading') {
2484        document.addEventListener('DOMContentLoaded', callback);
2485      } else {
2486        callback();
2487      }
2488    }
2489
2490    /**
2491     * Height of an element that may still be display:none.
2492     *
2493     * getComputedStyle() reports the declared height, which is 'auto' whenever the stylesheet does
2494     * not pin one — and parseInt('auto') is NaN. jQuery's .css('height') avoided that by briefly
2495     * laying the element out off-screen, so do the same. layout.css currently does pin
2496     * #header-accessibilityPopup at 205px, which is the only reason the simple read would work
2497     * today; this keeps working if that ever changes.
2498     */
2499    function hiddenHeight(element) {
2500      if (window.getComputedStyle(element).display !== 'none') {
2501        return element.offsetHeight;
2502      }
2503
2504      var style = element.style;
2505      var saved = {
2506        position: style.position,
2507        visibility: style.visibility,
2508        display: style.display
2509      };
2510
2511      style.position = 'absolute';
2512      style.visibility = 'hidden';
2513      style.display = 'block';
2514
2515      var height = element.offsetHeight;
2516
2517      style.position = saved.position;
2518      style.visibility = saved.visibility;
2519      style.display = saved.display;
2520
2521      return height;
2522    }
2523
2524    ready(function () {
2525      var accessibilityBtn = document.querySelector('.accessibility-widget [data-accessibility-btn]');
2526      var accessibilityPopup = document.querySelector('.accessibility-widget [data-accessibility-popup]');
2527      var accessibilityOverlay = document.querySelector('.accessibility-widget-overlay');
2528
2529      if (!accessibilityBtn || !accessibilityPopup || !accessibilityOverlay) {
2530        return;
2531      }
2532
2533      // Must be the exact negative of the container height, so the popup tucks fully out of sight.
2534      var popupHiddenHeight = hiddenHeight(accessibilityPopup) * -1;
2535      var showHide = { attribute: 'top', show: '0px', hide: popupHiddenHeight + 'px' };
2536
2537      function checkPopupVisible() {
2538        return window.getComputedStyle(accessibilityPopup)[showHide.attribute] === showHide.show;
2539      }
2540
2541      function togglePopup(popup, button, action, data) {
2542        popup.style[data.attribute] = data[action];
2543        var show = action === 'show';
2544        button.setAttribute('aria-expanded', String(show));
2545        accessibilityOverlay.style.display = show ? 'block' : 'none';
2546      }
2547
2548      function hideAccessibilityPopup() {
2549        togglePopup(accessibilityPopup, accessibilityBtn, 'hide', showHide);
2550      }
2551
2552      function showAccessibilityPopup() {
2553        accessibilityPopup.style.display = 'block';
2554        // Ensure the transition runs after the display:block above has been applied.
2555        setTimeout(function () {
2556          togglePopup(accessibilityPopup, accessibilityBtn, 'show', showHide);
2557        }, 0);
2558      }
2559
2560      function handleClickOutsidePopup() {
2561        if (checkPopupVisible()) {
2562          hideAccessibilityPopup();
2563        }
2564      }
2565
2566      accessibilityBtn.addEventListener('click', function () {
2567        if (checkPopupVisible()) {
2568          hideAccessibilityPopup();
2569        } else {
2570          showAccessibilityPopup();
2571        }
2572      });
2573
2574      accessibilityPopup.addEventListener('click', hideAccessibilityPopup);
2575
2576      accessibilityPopup.addEventListener('transitionend', function () {
2577        if (!checkPopupVisible()) {
2578          accessibilityPopup.style.display = 'none';
2579        }
2580      });
2581
2582      accessibilityOverlay.addEventListener('click', handleClickOutsidePopup);
2583    });
2584  })();
2585</script>
2585
2586
2587
2588<div class="accessibility-widget">
2589    <div class="accessibility-widget-overlay" aria-hidden="true"></div>
2590    <div class="header-accessibilityInnerContainer">
2591        <button
2592            id="header-accessibilityPopupBtn"
2593            aria-haspopup="true"
2594            aria-expanded="false"
2595            aria-controls="header-accessibilityPopup"
2596            aria-label="Accessibility Information"
2597            data-accessibility-btn
2598        >
2599        <svg class="ada-icon-dot" width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">
2600            <circle cx="21" cy="21" r="21" fill="#017AFF"/>
2601            <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"/>
2602        </svg>
2603        <svg class="ada-icon-tab" width="42" height="42" viewBox="0 0 42 42" fill="none" xmlns="http://www.w3.org/2000/svg">
2604            <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"/>
2605            <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"/>
2606        </svg>
2607    </button>
2608    <aside id="header-accessibilityPopup" aria-labelledby="header-accessibilityPopupBtn" data-accessibility-popup>
2609        <p>For an accessible ADA experience, please <a href="https://www.bloomnation.com/florist/rose-cottage-florals/?nav=premium-accessibility" rel="nofollow">visit our Marketplace.</a></p>
2610        <p><a href="https://rosecottageflorals.com/accessibility-statement/">Visit our Accessibility page</a> for further assistance or to learn more about our efforts.</p>
2611    </aside>
2612    </div>
2613</div>
2614
2615
2616	<!-- [START] Analytics Content: [default] -->
2617<!-- Google Tag Manager (noscript) -->
2618<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-TLR3ZL8&gtm_cookies_win=x%22"
2619height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
2620<!-- End Google Tag Manager (noscript) -->
2621	<!-- [END] Analytics Content: [default] -->
2622
2623
2624<script>
2625    (function () {
2626        /*
2627         * A page restored from the back/forward cache is not re-executed, so the cart count, the
2628         * logged-in state and any flash messages would be whatever they were when the visitor left.
2629         * PageTransitionEvent.persisted is true only for that restore, so reload to rebuild the page
2630         * server-side. This reads the native event directly; the jQuery version had to unwrap
2631         * event.originalEvent to reach the same flag.
2632         */
2633        window.addEventListener('pageshow', function (event) {
2634            if (event.persisted) {
2635                window.location.reload();
2636            }
2637        });
2638
2639        /*
2640         * Kill switch that freezes navigation: while window.forceDisableAllLinks is set, every
2641         * anchor without a force-redirect attribute stops navigating. Nothing in this repository
2642         * sets the flag, so this does nothing unless a script injected into the page turns it on.
2643         *
2644         * The jQuery version bound a handler to every anchor present at DOM ready and did nothing at
2645         * all on the flag-is-off path. One listener costs nothing while the flag is off and also
2646         * covers anchors added after DOM ready — but it has to run in the capture phase to match
2647         * the old reach: dropdown-nav.js stops propagation on every .dropdown-toggle and
2648         * .dropdown-content click, as does toggleDropdown() in topMobile.phtml, so a listener
2649         * delegated on the bubble phase would never see the desktop subnav links at all.
2650         */
2651        document.addEventListener('click', function (event) {
2652            if (!window.forceDisableAllLinks) {
2653                return;
2654            }
2655
2656            var target = event.target;
2657            var link = target && typeof target.closest === 'function' ? target.closest('a') : null;
2658
2659            if (!link || link.hasAttribute('force-redirect')) {
2660                return;
2661            }
2662
2663            event.preventDefault();
2664            // Belt and braces: preventDefault alone has been seen to let a navigation through here.
2665            link.setAttribute('href', '#');
2666        }, true);
2667    })();
2668</script>
2668
2669
2670<header id="header_mobile" class="header-mobile visible-xs text-center">
2671    <table class="header-mobile-grid">
2672        <tbody>
2673            <tr>
2674                <td class="menu-cell">
2675                    <div class="menu-container">
2676                        
2677<nav class="navigation-mobile-wrapper">
2678    <div class="navToggle-container nav-itemWrapper nav-itemWrapper--navToggle text-left">
2679        <!-- Nav Toggle -->
2680        <button
2681            id="navToggleMobile"
2682            class="nav-toggle-mobile nav-item nav-item-mobile nav-item--navToggle text-center"
2683            aria-controls="navigationMobile"
2684            aria-expanded="false"
2685            title="Main Navigation">
2686            <i class="fa fa-reorder"></i>
2687        </button>
2688    </div>
2689    <ul class="navigation col-md-12 navigation-mobile" id="navigationMobile">
2690        <li class="nav-itemWrapper text-right">
2691
2692                            <a href="https://rosecottageflorals.com/customer/account/create/" class="nav-item nav-item-mobile account-link">
2693                    <span class="nav-itemText mobile-menu-text-color">Sign Up</span>
2694                </a>
2695                    <span class="nav-itemText mobile-menu-text-color sign-up-log-in-separator">/</span>
2696                <a href="https://rosecottageflorals.com/customer/account/login/" class="nav-item nav-item-mobile account-link">
2697                    <span class="nav-itemText mobile-menu-text-color">Log in</span>
2698                </a>
2699            
2700        </li>
2701                                    <li class="nav-itemWrapper text-left">
2702                    <a class="nav-item" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/" target="_self">
2703                        <span class="nav-itemText mobile-menu-text-color">Shop</span>
2704                    </a>
2705                </li>
2706                                                <li class="dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown text-left">
2707                    <a class="dropdown-toggle nav-item nav-item-mobile nav-item--dropdown" role="button" data-target="#" data-toggle="dropdown">
2708                        <span class="nav-itemText mobile-menu-text-color">Occasions &#x25BE;</span>
2709                    </a>
2710                    <ul class="subnav dropdown-menu header-subnav" role="menu">
2711                                                    <li class="subnav-itemWrapper text-left">
2712                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/anniversary-flowers/" target="_self">
2713                                    <span class="nav-itemText mobile-menu-text-color">Anniversary</span>
2714                                </a>
2715                            </li>
2716                                                    <li class="subnav-itemWrapper text-left">
2717                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/autumn-flowers/" target="_self">
2718                                    <span class="nav-itemText mobile-menu-text-color">Autumn</span>
2719                                </a>
2720                            </li>
2721                                                    <li class="subnav-itemWrapper text-left">
2722                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/prom-flowers/" target="_self">
2723                                    <span class="nav-itemText mobile-menu-text-color">PROM</span>
2724                                </a>
2725                            </li>
2726                                                    <li class="subnav-itemWrapper text-left">
2727                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/birthday-flowers/" target="_self">
2728                                    <span class="nav-itemText mobile-menu-text-color">Birthday</span>
2729                                </a>
2730                            </li>
2731                                                    <li class="subnav-itemWrapper text-left">
2732                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/boss-s-day-flowers/" target="_self">
2733                                    <span class="nav-itemText mobile-menu-text-color">Boss's Day </span>
2734                                </a>
2735                            </li>
2736                                                    <li class="subnav-itemWrapper text-left">
2737                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/breast-cancer-awareness-month-flowers/" target="_self">
2738                                    <span class="nav-itemText mobile-menu-text-color">Breast Cancer Awareness Month</span>
2739                                </a>
2740                            </li>
2741                                                    <li class="subnav-itemWrapper text-left">
2742                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/congrats-flowers/" target="_self">
2743                                    <span class="nav-itemText mobile-menu-text-color">Congrats</span>
2744                                </a>
2745                            </li>
2746                                                    <li class="subnav-itemWrapper text-left">
2747                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/get-well-flowers/" target="_self">
2748                                    <span class="nav-itemText mobile-menu-text-color">Get Well</span>
2749                                </a>
2750                            </li>
2751                                                    <li class="subnav-itemWrapper text-left">
2752                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/gift-sets-flowers/" target="_self">
2753                                    <span class="nav-itemText mobile-menu-text-color">Gift Sets</span>
2754                                </a>
2755                            </li>
2756                                                    <li class="subnav-itemWrapper text-left">
2757                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/grandparent-s-day-flowers/" target="_self">
2758                                    <span class="nav-itemText mobile-menu-text-color">Grandparent's Day</span>
2759                                </a>
2760                            </li>
2761                                                    <li class="subnav-itemWrapper text-left">
2762                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/halloween-flowers/" target="_self">
2763                                    <span class="nav-itemText mobile-menu-text-color">Halloween</span>
2764                                </a>
2765                            </li>
2766                                                    <li class="subnav-itemWrapper text-left">
2767                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/i-m-sorry-flowers/" target="_self">
2768                                    <span class="nav-itemText mobile-menu-text-color">I'm Sorry</span>
2769                                </a>
2770                            </li>
2771                                                    <li class="subnav-itemWrapper text-left">
2772                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/just-because-flowers/" target="_self">
2773                                    <span class="nav-itemText mobile-menu-text-color">Just Because</span>
2774                                </a>
2775                            </li>
2776                                                    <li class="subnav-itemWrapper text-left">
2777                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/love-and-romance-flowers/" target="_self">
2778                                    <span class="nav-itemText mobile-menu-text-color">Love and Romance</span>
2779                                </a>
2780                            </li>
2781                                                    <li class="subnav-itemWrapper text-left">
2782                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/new-baby-flowers/" target="_self">
2783                                    <span class="nav-itemText mobile-menu-text-color">New Baby</span>
2784                                </a>
2785                            </li>
2786                                                    <li class="subnav-itemWrapper text-left">
2787                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/quinceanera-flowers/" target="_self">
2788                                    <span class="nav-itemText mobile-menu-text-color">Quinceañera</span>
2789                                </a>
2790                            </li>
2791                                                    <li class="subnav-itemWrapper text-left">
2792                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/rosh-hashanah-flowers/" target="_self">
2793                                    <span class="nav-itemText mobile-menu-text-color">Rosh Hashanah</span>
2794                                </a>
2795                            </li>
2796                                                    <li class="subnav-itemWrapper text-left">
2797                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/summer-flowers/" target="_self">
2798                                    <span class="nav-itemText mobile-menu-text-color">Summer</span>
2799                                </a>
2800                            </li>
2801                                                    <li class="subnav-itemWrapper text-left">
2802                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/sympathy-and-funeral-flowers/" target="_self">
2803                                    <span class="nav-itemText mobile-menu-text-color">Sympathy and Funeral</span>
2804                                </a>
2805                            </li>
2806                                                    <li class="subnav-itemWrapper text-left">
2807                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/thank-you-flowers/" target="_self">
2808                                    <span class="nav-itemText mobile-menu-text-color">Thank You</span>
2809                                </a>
2810                            </li>
2811                                                    <li class="subnav-itemWrapper text-left">
2812                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/wedding-flowers/" target="_self">
2813                                    <span class="nav-itemText mobile-menu-text-color">Wedding</span>
2814                                </a>
2815                            </li>
2816                                                    <li class="subnav-itemWrapper text-left">
2817                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/retirement-flowers/" target="_self">
2818                                    <span class="nav-itemText mobile-menu-text-color">Retirement</span>
2819                                </a>
2820                            </li>
2821                                                    <li class="subnav-itemWrapper text-left">
2822                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/housewarming-flowers/" target="_self">
2823                                    <span class="nav-itemText mobile-menu-text-color">Housewarming</span>
2824                                </a>
2825                            </li>
2826                                                    <li class="subnav-itemWrapper text-left">
2827                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/thinking-of-you-flowers/" target="_self">
2828                                    <span class="nav-itemText mobile-menu-text-color">Thinking of You</span>
2829                                </a>
2830                            </li>
2831                                            </ul>
2832                </li>
2833                                                <li class="dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown text-left">
2834                    <a class="dropdown-toggle nav-item nav-item-mobile nav-item--dropdown" role="button" data-target="#" data-toggle="dropdown">
2835                        <span class="nav-itemText mobile-menu-text-color">Weddings &#x25BE;</span>
2836                    </a>
2837                    <ul class="subnav dropdown-menu header-subnav" role="menu">
2838                                                    <li class="subnav-itemWrapper text-left">
2839                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/gallery" target="_self">
2840                                    <span class="nav-itemText mobile-menu-text-color">Gallery</span>
2841                                </a>
2842                            </li>
2843                                                    <li class="subnav-itemWrapper text-left">
2844                                <a class="nav-item nav-item-mobile nav-item--subnav text-left" href="https://rosecottageflorals.com/consultation/" target="_self">
2845                                    <span class="nav-itemText mobile-menu-text-color">Consultation</span>
2846                                </a>
2847                            </li>
2848                                            </ul>
2849                </li>
2850                                                <li class="nav-itemWrapper text-left">
2851                    <a class="nav-item" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/occasions/sympathy-and-funeral/" target="_self">
2852                        <span class="nav-itemText mobile-menu-text-color">Sympathy</span>
2853                    </a>
2854                </li>
2855                                                <li class="nav-itemWrapper text-left">
2856                    <a class="nav-item" href="https://rosecottageflorals.com/custom-flower-arrangements/" target="_self">
2857                        <span class="nav-itemText mobile-menu-text-color">Custom Arrangement</span>
2858                    </a>
2859                </li>
2860                                                <li class="nav-itemWrapper text-left">
2861                    <a class="nav-item" href="https://rosecottageflorals.com/about-us/" target="_self">
2862                        <span class="nav-itemText mobile-menu-text-color">About Us</span>
2863                    </a>
2864                </li>
2865                                                <li class="nav-itemWrapper text-left">
2866                    <a class="nav-item" href="https://rosecottageflorals.com/flower-subscriptions/" target="_self">
2867                        <span class="nav-itemText mobile-menu-text-color">Subscriptions</span>
2868                    </a>
2869                </li>
2870                                </ul>
2871    <div class="background-overlay" id="mobileBackgroundOverlay"></div>
2872</nav>
2873<script type="text/javascript">
2874    (function () {
2875        function ready(callback) {
2876            if (document.readyState === 'loading') {
2877                document.addEventListener('DOMContentLoaded', callback);
2878            } else {
2879                callback();
2880            }
2881        }
2882
2883        function each(selector, callback, root) {
2884            Array.prototype.forEach.call((root || document).querySelectorAll(selector), callback);
2885        }
2886
2887        // jQuery's :visible test, which is what the checks below used to run through.
2888        function isVisible(element) {
2889            return !!(element.offsetWidth || element.offsetHeight || element.getClientRects().length);
2890        }
2891
2892        /*
2893         * jQuery's .width(): the content-box width, as a number. Not getComputedStyle().width, which
2894         * resolves to the border box under the border-box sizing Bootstrap applies globally. Like
2895         * jQuery it also measures a display:none element, by laying it out off-screen — #header_mobile
2896         * carries visible-xs, so it is hidden on desktop.
2897         */
2898        function contentWidth(element) {
2899            if (window.getComputedStyle(element).display === 'none') {
2900                return swapMeasure(element, measureContentWidth);
2901            }
2902
2903            return measureContentWidth(element);
2904        }
2905
2906        function measureContentWidth(element) {
2907            var styles = window.getComputedStyle(element);
2908
2909            return element.offsetWidth
2910                - (parseFloat(styles.paddingLeft) || 0)
2911                - (parseFloat(styles.paddingRight) || 0)
2912                - (parseFloat(styles.borderLeftWidth) || 0)
2913                - (parseFloat(styles.borderRightWidth) || 0);
2914        }
2915
2916        /*
2917         * jQuery's swap() with cssShow: lay a hidden element out off-screen just long enough to
2918         * measure. The measure callback must not re-test display itself — Bootstrap's visible-xs is
2919         * `display: none !important` above 768px, which an inline style cannot beat, so the swap does
2920         * not actually reveal #header_mobile and a self-recursive version would never terminate.
2921         */
2922        function swapMeasure(element, measure) {
2923            var style = element.style;
2924            var saved = {
2925                position: style.position,
2926                visibility: style.visibility,
2927                display: style.display
2928            };
2929
2930            style.position = 'absolute';
2931            style.visibility = 'hidden';
2932            style.display = 'block';
2933
2934            var measured = measure(element);
2935
2936            style.position = saved.position;
2937            style.visibility = saved.visibility;
2938            style.display = saved.display;
2939
2940            return measured;
2941        }
2942
2943        // jQuery's $(document).height().
2944        function documentHeight() {
2945            var body = document.body;
2946            var html = document.documentElement;
2947
2948            return Math.max(
2949                body.scrollHeight,
2950                body.offsetHeight,
2951                html.clientHeight,
2952                html.scrollHeight,
2953                html.offsetHeight
2954            );
2955        }
2956
2957        /*
2958         * Submenu open/close, replacing the $('.dropdown-toggle').dropdown() call that used to sit
2959         * here. That call is what made the submenus toggle at all: the Bootstrap plugin binds
2960         * Dropdown.prototype.toggle straight to each element, and because that handler returns false
2961         * it also stops the click reaching Bootstrap's delegated [data-toggle=dropdown] handler on
2962         * document. Without the direct handler the delegated one runs after clearMenus() has already
2963         * removed the 'open' class, so it reads the menu as closed and re-opens it every time — a
2964         * submenu that can never be closed. The port below keeps the direct-handler semantics
2965         * (including getParent()'s data-target/href lookup and the second-click close) and works
2966         * whether or not Bootstrap is on the page, which it will not be after BLOOM-17575's P9.
2967         */
2968        function dropdownParent(toggle) {
2969            var selector = toggle.getAttribute('data-target');
2970
2971            if (!selector) {
2972                var href = toggle.getAttribute('href');
2973                selector = href && /#[A-Za-z]/.test(href) ? href.replace(/.*(?=#[^\s]*$)/, '') : null;
2974            }
2975
2976            var target = null;
2977
2978            if (selector) {
2979                try {
2980                    target = document.querySelector(selector);
2981                } catch (error) {
2982                    // The mobile toggles carry data-target="#", which is not a valid selector.
2983                    // jQuery quietly returned an empty set for it, so fall through to the parent.
2984                    target = null;
2985                }
2986            }
2987
2988            return target || toggle.parentNode;
2989        }
2990
2991        function closeOpenDropdowns() {
2992            each('[data-toggle="dropdown"]', function (toggle) {
2993                dropdownParent(toggle).classList.remove('open');
2994            });
2995        }
2996
2997        function toggleDropdown(event) {
2998            var toggle = event.currentTarget;
2999
3000            if (toggle.classList.contains('disabled') || toggle.disabled) {
3001                return;
3002            }
3003
3004            var parent = dropdownParent(toggle);
3005            var wasOpen = parent.classList.contains('open');
3006
3007            closeOpenDropdowns();
3008
3009            if (!wasOpen) {
3010                parent.classList.add('open');
3011                toggle.focus();
3012            }
3013
3014            event.preventDefault();
3015            // Bootstrap's handler returned false, which stopped the click reaching its own
3016            // document-level handlers. Keep that so nothing toggles the menu a second time.
3017            event.stopPropagation();
3018        }
3019
3020        ready(function () {
3021            each('.dropdown-toggle', function (toggle) {
3022                toggle.addEventListener('click', toggleDropdown);
3023            });
3024
3025            document.addEventListener('click', closeOpenDropdowns);
3026
3027            var navToggle = document.getElementById('navToggleMobile');
3028            var navigationMobile = document.getElementById('navigationMobile');
3029            var overlay = document.getElementById('mobileBackgroundOverlay');
3030            var headerMobile = document.getElementById('header_mobile');
3031            var body = document.body;
3032
3033            if (!navToggle || !navigationMobile || !overlay) {
3034                return;
3035            }
3036
3037            each('.dropdown-toggle', function (toggle) {
3038                toggle.addEventListener('click', function (event) {
3039                    if (isVisible(navigationMobile)) {
3040                        return;
3041                    }
3042
3043                    event.preventDefault();
3044
3045                    // A page carries several of these — one per desktop dropdown, plus the two
3046                    // dropdown-nav templates — and .is(':visible') was true if ANY of them was
3047                    // showing, so this has to ask all of them, not just the first.
3048                    var desktopSubnavOpen = Array.prototype.some.call(
3049                        document.querySelectorAll('.dropdown-content--arrownav-desktop'),
3050                        isVisible
3051                    );
3052
3053                    if (!desktopSubnavOpen) {
3054                        return;
3055                    }
3056
3057                    each('.dropdown-wrapper--hover', function (wrapper) {
3058                        each('.dropdown-toggle', function (hoverToggle) {
3059                            hoverToggle.setAttribute('aria-expanded', 'false');
3060                        }, wrapper);
3061                        each('.dropdown-content', function (content) {
3062                            content.classList.remove('dropdown-content--visible');
3063                        }, wrapper);
3064                        wrapper.classList.remove('open');
3065                    });
3066                });
3067            });
3068
3069            // Nav Toggle on click
3070            navToggle.addEventListener('click', function () {
3071                if (navigationMobile.classList.contains('open')) {
3072                    hideMenu();
3073                } else {
3074                    showMenu();
3075                }
3076            });
3077
3078            overlay.addEventListener('click', function () {
3079                hideMenu();
3080            });
3081
3082            navigationMobile.addEventListener('touchstart', startTouch, { passive: false });
3083            navigationMobile.addEventListener('touchmove', moveTouch, { passive: false });
3084
3085            // Swipe Up / Down / Left / Right
3086            var initialX = null;
3087            var initialY = null;
3088
3089            function startTouch(e) {
3090                initialX = e.touches[0].clientX;
3091                initialY = e.touches[0].clientY;
3092            }
3093
3094            function moveTouch(e) {
3095                if (initialX === null) {
3096                    return;
3097                }
3098
3099                if (initialY === null) {
3100                    return;
3101                }
3102
3103                var currentX = e.touches[0].clientX;
3104                var currentY = e.touches[0].clientY;
3105
3106                var diffX = initialX - currentX;
3107                var diffY = initialY - currentY;
3108
3109                if (Math.abs(diffX) > Math.abs(diffY)) {
3110                    // sliding horizontally
3111                    if (diffX > 0) {
3112                        // swiped left
3113                        menuSlideLeft();
3114                    }
3115                }
3116
3117                initialX = null;
3118                initialY = null;
3119            }
3120
3121            /*
3122             * Stale selector, kept as it was: the toggle lives in .navToggle-container, a sibling of
3123             * .navigation-mobile rather than a child, so this has matched nothing for a long time.
3124             * Restoring the intent would hide the hamburger while the menu is open — a visible
3125             * change, and not this ticket's.
3126             */
3127            function setNavToggleDisplay(display) {
3128                each('.navigation-mobile .nav-itemWrapper--navToggle', function (wrapper) {
3129                    wrapper.style.display = display;
3130                });
3131            }
3132
3133            function showMenu() {
3134                navToggle.setAttribute('aria-expanded', 'true');
3135                navigationMobile.classList.add('open');
3136                var containerWidth = headerMobile ? contentWidth(headerMobile) : 0;
3137                setNavToggleDisplay('none');
3138                navigationMobile.style.width = (containerWidth * 0.8) + 'px';
3139                overlay.style.height = documentHeight() + 'px';
3140                // The stylesheet hides the overlay, so an empty display would leave it hidden.
3141                overlay.style.display = 'block';
3142                body.style.position = 'fixed';
3143            }
3144
3145            function hideMenu() {
3146                navToggle.setAttribute('aria-expanded', 'false');
3147                navigationMobile.classList.remove('open');
3148                setNavToggleDisplay('');
3149                navigationMobile.style.width = '';
3150                overlay.style.height = '0px';
3151                overlay.style.display = 'none';
3152                body.style.position = '';
3153            }
3154
3155            function menuSlideLeft() {
3156                var containerWidth = headerMobile ? contentWidth(headerMobile) : 0;
3157                var settled = false;
3158                var timer = null;
3159
3160                function settle(event) {
3161                    if (event && event.propertyName && event.propertyName !== 'margin-left') {
3162                        return;
3163                    }
3164
3165                    if (settled) {
3166                        return;
3167                    }
3168
3169                    settled = true;
3170                    window.clearTimeout(timer);
3171                    navigationMobile.removeEventListener('transitionend', settle);
3172                    navigationMobile.style.transition = '';
3173                    navigationMobile.style.marginLeft = '0px';
3174                    navigationMobile.style.width = '';
3175                    navigationMobile.style.height = '';
3176                    navigationMobile.style.top = '';
3177                    navigationMobile.classList.remove('open');
3178                    setNavToggleDisplay('');
3179                    overlay.style.height = '0px';
3180                    overlay.style.display = 'none';
3181                }
3182
3183                navigationMobile.addEventListener('transitionend', settle);
3184                // Fallback for the cases transitionend never fires: reduced motion, or a margin that
3185                // is already at the target value.
3186                timer = window.setTimeout(settle, 150);
3187
3188                navigationMobile.style.transition = 'margin-left 100ms linear';
3189                // Force a reflow so the transition starts from the current margin.
3190                void navigationMobile.offsetWidth;
3191                navigationMobile.style.marginLeft = -(containerWidth * 0.8) + 'px';
3192            }
3193        });
3194    })();
3195</script>
3195
3196                    </div>
3197                </td>
3198                <td class="logo-cell">
3199                    <div class="logo-container">
3200                        <a class="companyLogo-imgContainer" href="https://rosecottageflorals.com/">
3201                                                        <img
3202                                class="companyLogo-img"
3203                                src="https://asset.bloomnation.com/c_fit,dpr_1,f_auto,h_380,q_auto,w_600/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png"
3204                                alt="Rose Cottage Florals - DeForest, WI florist"
3205                                srcset="https://asset.bloomnation.com/c_fit%2Cdpr_1%2Cf_auto%2Ch_380%2Cq_auto%2Cw_600/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png 1x, https://asset.bloomnation.com/c_fit%2Cdpr_2%2Cf_auto%2Ch_380%2Cq_auto%2Cw_600/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png 2x"
3206                                                                    width="600"
3207                                    height="380"
3208                                                            />
3209                                                    </a>
3210                    </div>
3211                </td>
3212                <td class="cart-cell">
3213                    <div class="cart-container">
3214                        <a href="https://rosecottageflorals.com/checkout/" class="mobile-cart-btn">
3215                            <div class="mobile-cart-icon-wrapper">
3216                                <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">
3217<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"/>
3218</svg>
3219</span>
3220                                                            </div>
3221                        </a>
3222                    </div>
3223                </td>
3224            </tr>
3225        </tbody>
3226
3227    </table>
3228</header>
3229<header id="header" class="hidden-xs">
3230        <div class="row header-innerContainer">
3231        <div class="information-heading infoHeading hidden-xs col-sm-4 col-md-4">
3232                        <span class="infoHeading-item infoHeading-item--name">Rose Cottage Florals</span>
3233            <span class="infoHeading-item infoHeading-item--address vendor-address">627 S Main St<br />
3234            DeForest,
3235            WI            53532</span>
3236                                                                                                                        <br />
3237                        <span class="infoHeading-item infoHeading-item--name infoHeading-additional-address--name additional-address-rose-cottage-florals---second-pick-up-location">Rose Cottage Florals - second pick up location</span>
3238                        <span class="infoHeading-item infoHeading-item--address infoHeading-additional-address--address additional-address-rose-cottage-florals---second-pick-up-location">2140 Atwood Ave<br />
3239                            Madison,
3240                            WI                            53704</span>
3241                                                    <span class="infoHeading-item infoHeading-item--phone infoHeading-additional-address--phone additional-address-rose-cottage-florals---second-pick-up-location"><a href="tel:(608) 244-4454" class="phone-link">(608) 244-4454</a></span>
3242                                                                                </div>
3243        <div class="header-logo col-xs-12 col-sm-4 col-md-4">
3244            <div class="company-logo">
3245                <a class="companyLogo-imgContainer" href="https://rosecottageflorals.com/">
3246                                        <img
3247                        class="companyLogo-img"
3248                        src="https://asset.bloomnation.com/c_fit,dpr_1,f_auto,h_607,q_auto,w_960/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png"
3249                        alt="Rose Cottage Florals - DeForest, WI florist"
3250                        srcset="https://asset.bloomnation.com/c_fit%2Cdpr_1%2Cf_auto%2Ch_607%2Cq_auto%2Cw_960/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png 1x, https://asset.bloomnation.com/c_fit%2Cdpr_2%2Cf_auto%2Ch_607%2Cq_auto%2Cw_960/v1/vendor/10360/profile/20250307124341_file_67ca413d3337b.png 2x"
3251                                                    width="960"
3252                            height="607"
3253                                            />
3254                                    </a>
3255            </div>
3256        </div>
3257        
3258<nav class="header-cart ps-header-cart col-xs-12 col-sm-4 col-md-4" aria-labelledby="ps-my-account_menu-label">
3259    <div class="ps-header-cartBtn-wrapper">
3260        <div class="ps-my-account-button-wrapper dropdown-wrapper">
3261            <button class="ps-my-account-button dropdown-toggle" aria-expanded="false" aria-haspopup="true">
3262                <span class="ps-my-account-button-text" id="ps-my-account_menu-label">My Account</span>
3263                <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">
3264<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"/>
3265</svg>
3266</span>
3267            </button>
3268                            
3269<div id="dropdown-nav--js" class="dropdown-nav dropdown-nav--login dropdown-content dropdown-content--arrownav-
3269desktop">
3270    <div class="dropdown-nav__arrow-up"></div>
3271    <div class="dropdown-nav__arrow-up--overlay"></div>
3272
3273    <ul class="dropdown-nav__list">
3274        <li class="dropdown-nav__list-item">
3275            <a class="dropdown-nav__link" href="https://rosecottageflorals.com/customer/account/login/" tabindex="-1" rel="nofollow">
3276                <p class="icon material-symbols-outlined">login</p>
3277                <span>Log in</span>
3278            </a>
3279        </li>
3280        <li class="dropdown-nav__list-item">
3281            <a class="dropdown-nav__link" href="https://rosecottageflorals.com/customer/account/create/" tabindex="-1" rel="nofollow">
3282                <p class="icon material-symbols-outlined">person</p>
3283                <span>Sign up</span>
3284            </a>
3285        </li>
3286                    <li class="dropdown-nav__list-item">
3287                <a class="dropdown-nav__link" href="https://rosecottageflorals.com/customer/account/createEnroll/" tabindex="-1" rel="nofollow">
3288                    <p class="icon material-symbols-outlined">stars</p>
3289                    <span>Join Loyalty</span>
3290                </a>
3291            </li>
3292            </ul>
3293</div>
3294                    </div>
3295
3296        <div class="ps-my-account-mob">
3297            <a href="https://rosecottageflorals.com/checkout/" class="btn btn-outline ps-cart_button ps-header-cartBtn" aria-label="view cart with 0 items">
3298                <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">
3299<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"/>
3300</svg>
3301</span>
3302                <span class="ps-cart_text ps-header-cart-text">(0) Cart</span>
3303                            </a>
3304        </div>
3305    </div>
3306    <style>
3307        /* Account Management Cart Modifications (start) */
3308        .ps-header-cart .ps-header-cart-badge {
3309            display: none;
3310            background: transparent;
3311            color: var(--header-icon-color, #000);
3312            position: absolute;
3313            top: 69%;
3314            left: 50%;
3315            transform: translate(-50%, -50%);
3316            padding: 0;
3317            font-size: 10px;
3318            font-weight: 600 !important;
3319            line-height: 1;
3320            pointer-events: none;
3321        }
3322
3323        .ps-header-cart .ps-my-account-button-wrapper {
3324            display: none;
3325        }
3326
3327        #header .ps-header-cart .ps-cart_button {
3328            border: 0;
3329            padding: 0;
3330        }
3331
3332        .ps-my-account-button {
3333            background: none;
3334            border: none;
3335            padding: 0;
3336        }
3337
3338        .ps-my-account-mob {
3339            display: inline-block;
3340        }
3341
3342        .ps-my-account-button-text {
3343            color: var(--my-account-color, #000);
3344        }
3345
3346        @media only screen and (min-width: 768px) {
3347            .account-management-dropdown-nav,
3348            .ps-header-cart-text {
3349                display: none;
3350            }
3351
3352            .ps-header-cart .ps-my-account-button-wrapper {
3353                position: relative;
3354                display: inline-block;
3355                float: left;
3356                margin-top: 3px;
3357                margin-right: 5px;
3358                cursor: pointer;
3359            }
3360
3361            .ps-header-cart .ps-my-account-button-text {
3362                text-align: right;
3363            }
3364
3365            .ps-header-cart .ps-my-account-button-wrapper {
3366                display: inline-block;
3367            }
3368
3369            .ps-header-cart .ps-my-account-button #ps-my-account_menu-label {
3370                font-weight: 500 !important;
3371                display: inline-block;
3372            }
3373
3374            .ps-header-cart .ps-header-cart-badge {
3375                display: block;
3376            }
3377
3378            .ps-header-cartBtn-wrapper {
3379                float: right;
3380            }
3381
3382            .ps-header-cartBtn {
3383                float: none;
3384                position: relative;
3385                margin: 0;
3386                padding: 0 10px;
3387                width: auto;
3388                height: auto;
3389                border: 0;
3390            }
3391
3392            .ps-header-cart-icon {
3393                width: 25px;
3394                height: 25px;
3395                margin: 0;
3396                vertical-align: middle;
3397                display: inline-flex;
3398                align-items: center;
3399                justify-content: center;
3400                position: relative;
3401                top: 2px;
3402            }
3403
3404            .ps-header-cart-icon svg {
3405                width: 100%;
3406                height: 100%;
3407                display: block;
3408            }
3409            .ps-header-cart-icon svg path {
3410                fill: var(--header-icon-color, var(--my-account-color, #000));
3411            }
3412        }
3413
3414        .ps-my-account-icon {
3415            width: 25px;
3416            height: 25px;
3417            margin: 0 6px;
3418            vertical-align: middle;
3419            display: inline-flex;
3420            align-items: center;
3421            justify-content: center;
3422        }
3423
3424        .ps-my-account-icon svg {
3425            width: 100%;
3426            height: 100%;
3427            display: block;
3428        }
3429
3430        .ps-my-account-icon svg path {
3431            fill: var(--header-icon-color, var(--my-account-color, #000));
3432        }
3433
3434        .ps-my-account-button svg {
3435            width: 25px;
3436            height: 25px;
3437        }
3438
3439        /* Account Management Cart Modifications (end) */
3440    </style>
3441    
3441<script type="text/javascript" src="https://promfiles.com/bloom/dist/frontend/base/default/js/dropdown-nav.5e3dac90.js" defer></script>
3441
3442</nav>
3443        <div class="clearfix"></div>
3444    </div>
3445
3446    <div class="clearfix"></div>
3447    <nav class="header-nav headerNav-wrapper">
3448        <div class="row headerNav-innerContainer">
3449            
3450<ul id="main-nav" class="navigation col-md-12">
3451	<li class="navToggle-container nav-itemWrapper nav-itemWrapper--navToggle">
3452		<!-- Nav Toggle -->
3453		<a href="#" class="nav-toggle nav-item" id="main-nav-toggle" aria-haspopup="true" aria-expanded="false">
3454			<i class="fa fa-reorder"></i>
3455			<span class="nav-show">Menu <i class="fa fa-caret-down"></i></span>
3456			<span class="nav-hide">Hide <i class="fa fa-caret-up"></i></span>
3457		</a>
3458	</li>
3459						<li class="nav-itemWrapper">
3460				<a class="nav-item" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/" target="_self"><span class="nav-itemText">Shop</span></a>
3461			</li>
3462								<li class="dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown dropdown-wrapper dropdown-wrapper--hover">
3463				<button class="dropdown-toggle nav-item nav-item--dropdown dropdown-nav-toggle" aria-expanded="false" aria-haspopup="true">
3464					<span class="nav-itemText">
3465						Occasions &#x25BE;
3466					</span>
3467				</button>
3468				<ul class="subnav dropdown-menu header-subnav dropdown-content dropdown-content--arrownav-desktop" role="menu">
3469											<li class="subnav-itemWrapper">
3470							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/anniversary-flowers/" target="_self">Anniversary</a>
3471						</li>
3472											<li class="subnav-itemWrapper">
3473							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/autumn-flowers/" target="_self">Autumn</a>
3474						</li>
3475											<li class="subnav-itemWrapper">
3476							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/prom-flowers/" target="_self">PROM</a>
3477						</li>
3478											<li class="subnav-itemWrapper">
3479							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/birthday-flowers/" target="_self">Birthday</a>
3480						</li>
3481											<li class="subnav-itemWrapper">
3482							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/boss-s-day-flowers/" target="_self">Boss's Day </a>
3483						</li>
3484											<li class="subnav-itemWrapper">
3485							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/breast-cancer-awareness-month-flowers/" target="_self">Breast Cancer Awareness Month</a>
3486						</li>
3487											<li class="subnav-itemWrapper">
3488							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/congrats-flowers/" target="_self">Congrats</a>
3489						</li>
3490											<li class="subnav-itemWrapper">
3491							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/get-well-flowers/" target="_self">Get Well</a>
3492						</li>
3493											<li class="subnav-itemWrapper">
3494							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/gift-sets-flowers/" target="_self">Gift Sets</a>
3495						</li>
3496											<li class="subnav-itemWrapper">
3497							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/grandparent-s-day-flowers/" target="_self">Grandparent's Day</a>
3498						</li>
3499											<li class="subnav-itemWrapper">
3500							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/halloween-flowers/" target="_self">Halloween</a>
3501						</li>
3502											<li class="subnav-itemWrapper">
3503							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/i-m-sorry-flowers/" target="_self">I'm Sorry</a>
3504						</li>
3505											<li class="subnav-itemWrapper">
3506							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/just-because-flowers/" target="_self">Just Because</a>
3507						</li>
3508											<li class="subnav-itemWrapper">
3509							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/love-and-romance-flowers/" target="_self">Love and Romance</a>
3510						</li>
3511											<li class="subnav-itemWrapper">
3512							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/new-baby-flowers/" target="_self">New Baby</a>
3513						</li>
3514											<li class="subnav-itemWrapper">
3515							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/quinceanera-flowers/" target="_self">Quinceañera</a>
3516						</li>
3517											<li class="subnav-itemWrapper">
3518							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/rosh-hashanah-flowers/" target="_self">Rosh Hashanah</a>
3519						</li>
3520											<li class="subnav-itemWrapper">
3521							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/summer-flowers/" target="_self">Summer</a>
3522						</li>
3523											<li class="subnav-itemWrapper">
3524							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/sympathy-and-funeral-flowers/" target="_self">Sympathy and Funeral</a>
3525						</li>
3526											<li class="subnav-itemWrapper">
3527							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/thank-you-flowers/" target="_self">Thank You</a>
3528						</li>
3529											<li class="subnav-itemWrapper">
3530							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/wedding-flowers/" target="_self">Wedding</a>
3531						</li>
3532											<li class="subnav-itemWrapper">
3533							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/retirement-flowers/" target="_self">Retirement</a>
3534						</li>
3535											<li class="subnav-itemWrapper">
3536							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/housewarming-flowers/" target="_self">Housewarming</a>
3537						</li>
3538											<li class="subnav-itemWrapper">
3539							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/thinking-of-you-flowers/" target="_self">Thinking of You</a>
3540						</li>
3541									</ul>
3542			</li>
3543								<li class="dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown dropdown-wrapper dropdown-wrapper--hover">
3544				<button class="dropdown-toggle nav-item nav-item--dropdown dropdown-nav-toggle" aria-expanded="false" aria-haspopup="true">
3545					<span class="nav-itemText">
3546						Weddings &#x25BE;
3547					</span>
3548				</button>
3549				<ul class="subnav dropdown-menu header-subnav dropdown-content dropdown-content--arrownav-
3549desktop" role="menu">
3550											<li class="subnav-itemWrapper">
3551							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/gallery" target="_self">Gallery</a>
3552						</li>
3553											<li class="subnav-itemWrapper">
3554							<a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/consultation/" target="_self">Consultation</a>
3555						</li>
3556									</ul>
3557			</li>
3558								<li class="nav-itemWrapper">
3559				<a class="nav-item" href="https://rosecottageflorals.com/deforest-florist-flower-delivery/occasions/sympathy-and-funeral/" target="_self"><span class="nav-itemText">Sympathy</span></a>
3560			</li>
3561								<li class="nav-itemWrapper">
3562				<a class="nav-item" href="https://rosecottageflorals.com/custom-flower-arrangements/" target="_self"><span class="nav-itemText">Custom Arrangement</span></a>
3563			</li>
3564								<li class="nav-itemWrapper">
3565				<a class="nav-item" href="https://rosecottageflorals.com/about-us/" target="_self"><span class="nav-itemText">About Us</span></a>
3566			</li>
3567								<li class="nav-itemWrapper">
3568				<a class="nav-item" href="https://rosecottageflorals.com/flower-subscriptions/" target="_self"><span class="nav-itemText">Subscriptions</span></a>
3569			</li>
3570			    <li class="account-management-dropdown-nav dropdown nav-dropdown nav-itemWrapper nav-itemWrapper--dropdown dropdown-wrapper">
3571        <button class="dropdown-toggle nav-item nav-item--dropdown" aria-expanded="false" aria-haspopup="true">
3572            <span class="nav-itemText">My Account &#x25BE;</span>
3573        </button>
3574        <ul class="subnav dropdown-menu header-subnav dropdown-content dropdown-content--arrownav-desktop" role="menu">
3575                        <li class="subnav-itemWrapper">
3576                <a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/customer/account/login/">Log in</a>
3577            </li>
3578            <li class="subnav-itemWrapper">
3579                <a class="nav-item nav-item--subnav" href="https://rosecottageflorals.com/customer/account/create/">
3580                    Sign Up                </a>
3581            </li>
3582                    </ul>
3583    </li>
3584</ul>
3585        </div>
3586    </nav>
3587
3588        <div class="clearfix"></div>
3589</header>
3590    <noscript>
3591        <div class="global-site-notice noscript">
3592            <div class="notice-inner">
3593                <p>
3594                    <strong>JavaScript seems to be disabled in your browser.</strong><br />
3595                    You must have JavaScript enabled in your browser to utilize the functionality of this website.                </p>
3596            </div>
3597        </div>
3598    </noscript>
3599
3600<section id="content">
3601
3602    
3603
3604	<div class="row">
3605		
3606			</div>
3607	 <div id="account-management" class="account">
3608    <div class="ps-account-form">
3609        <h1 class="ps-account-form__title">Log in to your account</h1>
3610        <div
3611    class="notification  "
3612    id="notification--js"
3613    role="alert"
3614>
3615    <p id="notification__text--js" class="notification__text">
3616        <span></span>
3617    </p>
3618    <div id="notification__close--js" class="notification__close">
3619        <img
3620            src="https://assets.bloomnation.com/pages/account-management/icon-x-close.svg"
3621            id="modal-close--js"
3622            alt="Close notification"
3623            class="fa fa-times account-modal__close"
3624            aria-label="Close notification"
3625        />
3626    </div>
3627</div>
3628
3629<script>
3630var notification;
3631
3632window.addEventListener('load', function() {
3633    'use strict';
3634
3635    /**
3636     * Creates a wrapper with various methods for the account management notification.
3637     *
3638     * @constructor
3639     */
3640    function Notification() {}
3641    Notification.prototype = {
3642        init: function init() {
3643            this.initDomNodes();
3644            this.initEventListeners();
3645        },
3646
3647        initDomNodes: function initDomNodes() {
3648            this.wrapper = document.getElementById('notification--js');
3649            this.notificationText = document.getElementById('notification__text--js');
3650            this.notificationClose = document.getElementById('notification__close--js');
3651        },
3652
3653        initEventListeners: function initEventListeners() {
3654            this.initNotificationCloseClick()
3655        },
3656
3657        initNotificationCloseClick: function initNotificationCloseClick() {
3658            var self = this;
3659
3660            this.notificationClose.addEventListener('click', function(evt) {
3661                self.hide();
3662            });
3663        },
3664
3665        showNotification: function showNotification(message, type) {
3666            if (!message) {
3667                return;
3668            }
3669
3670            type === 'error'
3671                ? this.wrapper.classList.add('notification--error')
3672                : this.wrapper.classList.remove('notification--error');
3673
3674            type === 'warning'
3675                ? this.wrapper.classList.add('notification--warning')
3676                : this.wrapper.classList.remove('notification--warning');
3677
3678            this.notificationText.innerHTML = message;
3679            this.wrapper.classList.add('notification--visible');
3680        },
3681
3682        showError: function showError(message) {
3683            this.showNotification(message, 'error');
3684        },
3685
3686        showWarning: function showWarning(message) {
3687            this.showNotification(message, 'warning');
3688        },
3689
3690        hide: function hide() {
3691            this.wrapper.classList.remove('notification--visible');
3692        }
3693    };
3694    Notification.prototype.constructor = Notification;
3695
3696    notification = new Notification;
3697    notification.init();
3698});
3699</script>
3699
3700        <form
3701            id="login-form"
3702        >
3703            <div class="ps-account-form__group" id="ps-account-form__group">
3704                <span class="form__input-error"></span>
3705            </div>
3706
3707            <div class="ps-account-form__group">
3708                <label
3709                    for="current-password--js"
3710                    class="ps-account-form__label required"
3711                >
3712                    Password                </label>
3713                <div class="ps-account-form__password" id="ps-account-form__password">
3714                    <div id="show-current-password--js" class="form__show-password">
3715                        <img
3716                            id="current-password-icon-open--js"
3717                            src="https://assets.bloomnation.com/pages/account-management/icon-eye-show.svg"
3718                            alt="Open eye icon"
3719                        />
3720                        <img
3721                            style="display: none;"
3722                            id="current-password-icon-closed--js"
3723                            src="https://assets.bloomnation.com/pages/account-management/icon-eye-hide.svg"
3724                            alt="Closed eye ion"
3725                        />
3726                        <span id="current-password-show-hide--js">Show password</span>
3727                    </div>
3728                </div>
3729                                    <div class="g-recaptcha" data-sitekey="6Lcj22gUAAAAAMgb9Y3KQY-7777SJY5R7TTtmthw"></div>
3730                            </div>
3731
3732            <button
3733                type="submit"
3734                class="ps-account-form__submit"
3735            >
3736                Log in            </button>
3737
3738            <div class="ps-account-form__forgot">
3739                <a href="https://rosecottageflorals.com/customer/account/forgotpassword/">
3740                    Forgot password?                </a>
3741            </div>
3742
3743            <div class="ps-account-form__line"></div>
3744
3745            <div class="ps-account-form__bottom">
3746                <span>Don't have an account?</span>
3747                <a
3748                    class="ps-account-form__cta-button"
3749                    type="button"
3750                    href="https://rosecottageflorals.com/customer/account/create/"
3751                >
3752                    Sign up                </a>
3753            </div>
3754        </form>
3755    </div>
3756</div>
3757
3758
3759
3760<script>
3761    (function () {
3762        function createInput(attributes) {
3763            var input = document.createElement('input');
3764            Object.keys(attributes).forEach(function (name) {
3765                input.setAttribute(name, attributes[name]);
3766            });
3767            return input;
3768        }
3769
3770        var loginForm = document.getElementById('login-form');
3771        loginForm.setAttribute('method', 'post');
3772        loginForm.setAttribute('action', "https://rosecottageflorals.com/customer/account/loginPost/");
3773        loginForm.appendChild(createInput({
3774            type: 'hidden',
3775            name: 'form_key',
3776            value: window.FORM_KEY
3777        }));
3778
3779        var emailGroup = document.getElementById('ps-account-form__group');
3780        var emailInput = createInput({
3781            id: 'email--js',
3782            type: 'email',
3783            name: 'login[username]',
3784            'class': "form__input",
3785            title: "Email Address",
3786            style: "background-image: url('https://assets.bloomnation.com/pages/account-management/form-input-alert.svg')",
3787            required: 'required'
3788        });
3789        // Assigned rather than setAttribute'd because the original used .val(),
3790        // which writes the value property and leaves the value attribute unset.
3791        emailInput.value = "";
3792        emailGroup.insertBefore(emailInput, emailGroup.firstChild);
3793        emailGroup.insertAdjacentHTML(
3794            'afterbegin',
3795            '<label for="email--js" class="ps-account-form__label required">Email address</label>'
3796        );
3797
3798        var passwordGroup = document.getElementById('ps-account-form__password');
3799        passwordGroup.insertBefore(createInput({
3800            id: 'current-password--js',
3801            type: 'password',
3802            'class': 'form__input',
3803            name: 'login[password]',
3804            title: "Password",
3805            required: 'required'
3806        }), passwordGroup.firstChild);
3807
3808        var forgotLink = document.querySelector('.ps-account-form__forgot').firstElementChild;
3809        var origForgotHref = forgotLink.href;
3810        document.getElementById('email--js').addEventListener('blur', function (e) {
3811            if (e.target.value.length) {
3812                forgotLink.href = origForgotHref + '?email=' + encodeURIComponent(e.target.value);
3813            }
3814        });
3815        if (typeof window.bnClearValidationState === 'function') {
3816            window.bnClearValidationState(document.getElementById('login-form'));
3817        }
3818    })();
3819</script>
3819
3820</section>
3821
3822 <div class="announcement" style="display: none">
3823    <div class="announcement-bg"></div>
3824    <div class="splash">
3825        <div class="splash-wrapper">
3826            <div>
3827                <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>
3828            </div>
3829        </div>
3830    </div>
3831</div>
3832 </div>
3833
3834<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","licenseKey":"0ac16663c3","applicationID":"6732204,2307825","transactionName":"YFIHZkFZXxAEUhUIDlkYJkdATF4OSlIUEhVYWgBAHFlSAApEDxVOW1gCW10=","queueTime":0,"applicationTime":64,"atts":"TBUQEAlDTE9HUENbGkpK","errorBeacon":"bam.nr-data.net","agent":""}</script>
3834</body>
3835</html>
3836
3837

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.