PageSourceSearch

https://thewinsorpilates.com/

html thewinsorpilates.com collected 2026-10-01 16:12:26 UTC 172,049 bytes, 2,749 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3  <head>
4    
5    <meta charset="utf-8">
6<script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"NRJS-76a079092d7e7822b1b","applicationID":"522494065","transactionName":"c1gNEEJcVVgHQ01AQl9FBgJCXFdATUEDVFNDGAoKVFZB","queueTime":0,"applicationTime":70,"agent":""}</script>
vendor: 1 bytes, line 6
6
7<script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"601537969",accountID:"6520289",trustKey:"6520289",xpid:"UgMFUVRbARAFVlNWDgUHUFE=",licenseKey:"NRJS-76a079092d7e7822b1b",applicationID:"522494065",browserID:"601537969"};;/*! For license information please see nr-loader-spa-1.322.0.min.js.LICENSE.txt */
8(()=>{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};
8e.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;
8const 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:()=>A,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);
8if(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,w(e,t)}function w(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 R(e,t,r,n,i){if(w(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&&(R(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&&(R(e,n,i,r,s),t.delete(i)),0===t.size}})}(e,a,s,t.timingMethod)}function A(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 w=0,R=0;p(r).recordManifestScriptWindow=(e,t)=>{e&&(w=w>0?Math.min(w,e):e),t&&(R=R>0?Math.max(R,t):t)},Object.defineProperty(r,"scriptStart",d(()=>{const e=y()?r.registeredAt:h?.script.start??r.fetchEnd;return w>0?Math.min(e,w):e})),Object.defineProperty(r,"scriptEnd",d(()=>{const e=y()?r.registeredAt:h?.script.end??r.registeredAt;return R>0?Math.max(e,R):e}))}catch(e){}return r}},5732(e,t,r){"use strict";r.d(t,{$5:()=>m,B5:()=>g,K6:()=>u,M$:()=>
8o,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])}
8(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}
8;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])},3962(e,t,r){"use strict";const n=r(860).K7.softNav;r.d(t,["O2",0,{INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},"OV",0,"popstate","Qu",0,{INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},"TZ",0,n,"ih",0,{IP:"in progress",PF:"pending finish",FIN:"finished",CAN:"cancelled"},"pP",0,"initialPageLoad","tC",0,["click","keydown","submit"]])},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","hw",0,"api-ixn-","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=>({212:"nr-spa-compressor",238:"nr-spa-iframe-message-handler",249:"nr-spa-recorder",478:"nr-spa"}[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)=>
8{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={478:"sha512-SARROoir04gFygxlr/+mTI+PyMeFL+epi1vnUA2G5mTQ7s3G44ItQBJKbOaIMdIE5OBzuaKhb4k5JYta0NICxg==",249:"sha512-6DKQo5WP7YlpzX6l9UfYkgGLGK2oITdoaYTcZtgl5Foa22NY63lED/0z1hBBLeD7qZCz/YdlY19/r8drlol1tg==",212:"sha512-CYxuvSpDx6ErqWJwAvpoHn54eY37YdMcFao/axOumlw3BsSL7yioOeB2LWViY/Njs818sQG10dSglUhYCMfLPw==",238:"sha512-mvbMILWa3ohYst+u6TLfNrmtY2swUIB3rbJFN/uzt3W62KhgvUVwB81UEZ1R0/it5bfrQ5EVz864pi/CAmucNQ=="};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={38:0,788: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
8ine_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 w=r(9232);var R=r(7836),T=r(3241);const A={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0};var S=r(9908),x=r(9752);function O(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,A)),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:w.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=R.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,S.p)("iframe-message",[t],void 0,"IFRAME",e.ee)}),e.runtime.configured=!0)}var _=r(1863),k=r(4261),N=r(1738);var L=r(1687),M=r(4234),P=r(5289),I=r(5270),j=r(7767),C=r(6389),D=r(7699);const B=new WeakSet,H=new WeakMap;class W extends M.W{constructor(e,t){super(e,t),this.abortHandler=void 0,this.featAggregate=void 0,this.loadedSuccessfully=void 0,this.onAggregateImported=new Promise(e=>{this.loadedSuccessfully=e}),this.deferred=Promise.resolve(),!1===e.init[this.featureName].autoStart?this.deferred=new Promise((t,r)=>{this.ee.on("manual-start-all",(0,C.J)(()=>{(0,L.Ak)(e,this.featureName),t()}))}):(0,L.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()=>
8{if((0,j.V)(e.init))try{const{setupAgentSession:t}=await r.e(478).then(r.bind(r,8766));t(e)}catch(e){(0,l.R)(20,e),t.emit("internal-error",[e]),(0,S.p)(D.qh,[e],void 0,n,t)}if(e.init.api.register.allow_iframe_bridge)try{const{setupIframeMFEMessageListener:t}=await r.e(238).then(r.bind(r,6417));t(e)}catch(e){(0,l.R)(23,e)}const[{Connector:i},{Harvester:s}]=await Promise.all([r.e(478).then(r.bind(r,6589)),r.e(478).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,L.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,L.Ze)(this.agentRef,this.featureName,!0),this.loadedSuccessfully(!1)}};g.RI?(0,P.GG)(()=>i(),!0):i()}#r(e,r,n){if(this.blocked)return!1;switch(e){case t.K7.sessionReplay:return(0,I.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){}O(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,N.Y)(k.Fw,function(e,r){"string"==typeof e&&("/"!==e.charAt(0)&&(e="/"+e),t.runtime.customTransaction=(r||"http://custom.transaction")+e,(0,S.p)("api-"+k.Fw,[(0,_.t)()],void 0,void 0,t.ee))},t),this.importAggregator(e,()=>e.init.feature_flags.includes("rum_v2")?r.e(478).then(r.bind(r,908)):r.e(478).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,P.sB)(t=>{e(t,"DOMContentLoaded")}),(0,P.GG)(t=>{e(t,"load")}),(0,P.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),O(this,e,e.loaderType||"agent"),t=this,(0,N.Y)(k.cD,function(e,r,n=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof r)||null===r)return(0,N.U)(t,e,r,k.cD,n);(0,l.R)(40,typeof r)}else(0,l.R)(39,typeof e)},t),function(e){(0,N.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,S.p)("api-setUserIdAndResetSession",[t],void 0,"session",e.ee):(0,N.U)(e,"enduser.id",t,k.Dl,!0)},e)}(this),function(e){(0,N.Y)(k.nb,function(t){if("string"==typeof t||null===t)return(0,N.U)(e,"application.version",t,k.nb,!1);(0,l.R)(42,typeof t)},e)}(this),function(e){(0,N.Y)("start",function(){e.ee.emit("manual-start-all")},e)}(this),function(e){(0,N.Y)(k.Pv,function(t=!0){if("boolean"==typeof t){if((0,S.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,S.p)("docHidden",[(0,_.t)()],void 0,z.T,this.ee),!0),(0,V.G)(()=>(0,S.p)("winPagehide",[(0,_.t)()],void 0,z.T,this.ee)),this.importAggregator(e,()=>r.e(478).then(r.bind(r,9917))))}}var q=r(3969);class Y extends W{static featureName=q.TZ;constructor(e){super(e,q.TZ),this.importAggregator(e,()=>r.e(478).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,_.t)()){"string"==typeof e&&(e=new Error(e)),(0,S.p)("err",[e,s,!1,r,n.runtime.isRecording,void 0,i],void 0,t.K7.jserrors,n.ee),(0,S.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,_.t)()){(0,ae.R)(n.ee,e,t,r,!1,i,s)}function ce(e,r,n,i,s=(0,_.t)()){(0,S.p)("api-"+k.hG,[s,e,r,i],void 0,t.K7.genericEvents,n.ee)}function de(e,r,n,i,s=(0,_.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)=>
8null==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,S.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,_.t)()){(0,S.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,_.t)();if(s(e)>1e4)return void a.disconnect();r=e}n??=(0,_.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,_.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 we=["entry","scripts","all"],Re=["name","id","type"],Te=new Map([[ce,"addPageAction"],[oe,"log"],[de,"measure"],[ie,"noticeError"],[ue,"recordCustomEvent"]]),Ae={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 Se(e){(0,N.Y)(k.eY,function(t){return xe(e,t)},e)}function xe(e,r){Ae.experimental(),r||={},r.instance=(0,ye.LA)(8),r.type=w.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:w.f.BA},r.manifest=(0,be.N)(r.manifest),void 0===r.timingMethod||we.includes(r.timingMethod)||(Ae.invali
8dTimingMethod(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||w.f.BA,"parent.id":r.parent?.id})}),Object.entries(r.tags).forEach(([e,t])=>{Re.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(Ae.disabled),u(r.id)&&u(r.name)||d(()=>Ae.invalidTarget(r)),c.forEach(e=>{try{const{name:t,id:n}=e.metadata.target;t===r.name&&n!==r.id&&Ae.duplicateName(r),n===r.id&&t!==r.name&&Ae.duplicateId(r)}catch(e){}});const f={addPageAction:(t,n={})=>m(ce,[t,{...a,...n},e],r),deregister:()=>{p(),d(Ae.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,_.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
8imeToRegister: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,_.t)();f.metadata.events.latestTimestamp=void 0;const a=Te.get(r)||"unknown";(0,S.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 Oe extends W{static featureName=Z.T;constructor(e){var t;super(e,Z.T),t=e,(0,N.Y)(k.o5,(e,r)=>ie(e,r,t),t),function(e){(0,N.Y)(k.bt,function(t){e.runtime.onerror=t},e)}(e),function(e){let t=0;(0,N.Y)(k.k6,function(e,r){++t>10||(this.runtime.releaseIds[e.slice(-200)]=(""+r).slice(-200))},e)}(e),Se(e);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",(t,r)=>{this.abortHandler&&(0,S.p)("ierr",[ee(t),(0,_.t)(),!0,{},e.runtime.isRecording,r],void 0,this.featureName,this.ee)}),g.gm.addEventListener("unhandledrejection",t=>{this.abortHandler&&(0,S.p)("err",[te(t),(0,_.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,S.p)("err",[re(t),(0,_.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(478).then(r.bind(r,9377)))}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var _e=r(8990);let ke=1;function Ne(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===g.gm?0:(0,_e.I)(e,"nr@id",function(){return ke++})}function Le(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 Me=r(8139),Pe=r(3434),Ie=r(5732);const je={},Ce=["open","send","setRequestHeader"];function De(e,t){var r=e||R.ee;const n=function(e){return(e||R.ee).get("xhr")}(r);if(void 0===g.gm.XMLHttpRequest)return n;if(je[n.debugId]++)return n;je[n.debugId]=1,(0,Me.u)(r,t);var i=(0,Pe.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,Ie.$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||R.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,Ie.$5)(t);var o;r.emit(i+"before-start",[e],n),n[R.P]&&n[R.P].dt&&(o=n[R.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})})}
8return 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,S.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=A,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){O(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=Le(i);a&&(n.txSize=a)}this.startTime=(0,_.t)(),this.requestBody=i,this.listener=function(e){try{"abort"!==e.type||s.loadCaptureCalled||(s.params.aborted=!0),("load"
8!==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=""+Ne(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function p(e,t){var r=""+Ne(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function m(){this.endTime=(0,_.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,_.t)()))}function E(e,t){this.xhrCbStart&&r.emit("xhr-cb-time",[(0,_.t)()-this.xhrCbStart,this.onload,t],t)}function w(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 R(e,t){this.params={},this.metrics={},this.startTime=(0,_.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=Le(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,_.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=Le(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 A(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):O(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=Le(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 O(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?Le(e.response):"text"===r||""===r||void 0===r?Le(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,S.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",w),r.on("fetch-start",R),r.on("fn-start",b),r.on("fetch-done",T)}(e,this.ee,this.handler,this.dt),this.importAggregator(e,()=>r.e(478).then(r.bind(r,3845)))}}const it={},st=["pushState","replaceState"];function at(e,t){const r=function(e){return(e||R.ee).get("history")}(e);return!g.RI||it[r.debugId]++||(it[r.debugId]=1,(0,Pe.YM)(r,void 0,t).inPlace(window.history,st,"-")),r}var ot=r(3738);function ct(e){(0,N.Y)(k.BL,function(r=Date.now()){const n=r-g.WN;n<0&&(0,l.R)(62,r),(0,S.p)(q.XG,[k.BL,{time:n}],void 0,t.K7.metrics,e.ee),e.addToTrace({name:k.BL,start:r,origin:"nr"}),(0,S.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,N.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,S.p)("bstApi",[r],void 0,t.K7.sessionTrace,n.ee)},n),ct(e);
8if(!(0,j.V)(e.init))return void this.deregisterDrain();const i=this.ee;let s;at(i,e),this.eventsEE=(0,Me.u)(i,e),this.eventsEE.on(gt,function(e,t){this.bstStart=(0,_.t)()}),this.eventsEE.on(pt,function(e,r){(0,S.p)("bst",[e[0],r,this.bstStart,(0,_.t)()],void 0,t.K7.sessionTrace,i)}),i.on(mt+lt,function(e){this.time=(0,_.t)(),this.startPath=location.pathname+location.hash}),i.on(mt+ft,function(e){(0,S.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,S.p)(dt,[r],void 0,t.K7.sessionTrace,i)}),s.observe({type:ut,buffered:!0})}catch(e){}this.importAggregator(e,()=>r.e(478).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,N.Y)(k.CH,function(){(0,S.p)(k.CH,[],void 0,t.K7.sessionReplay,n.ee)},n),function(e){(0,N.Y)(k.Tb,function(){(0,S.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,I.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(478).then(r.bind(r,6167)),this),this.ee.on("err",e=>{this.blocked||this.agentRef.runtime.isRecording&&(this.errorNoticed=!0,(0,S.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,I.Aw)(this.agentRef.init)}importRecorder(){return this.recorder?Promise.resolve(this.recorder):(this.#i??=Promise.all([r.e(478),r.e(249)]).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 wt=r(3962);class Rt extends W{static featureName=wt.TZ;constructor(e){if(super(e,wt.TZ),function(e){const r=e.ee.get("tracer");function n(){}(0,N.Y)(k.dT,function(e){return(new n).get("object"==typeof e?e:{})},e);const i=n.prototype={createTracer:function(n,i){var s={},a=this,o="function"==typeof i;return(0,S.p)(q.xV,["API/createTracer/called"],void 0,t.K7.metrics,e.ee),function(){if(r.emit((o?"":"no-")+"fn-start",[(0,_.t)(),a,o],s),o)try{return i.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw r.emit("fn-err",[arguments,this,t],s),t}finally{r.emit("fn-end",[(0,_.t)()],s)}}}};["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach(r=>{N.Y.apply(this,[r,function(){return(0,S.p)(k.hw+r,[performance.now(),...arguments],this,t.K7.softNav,e.ee),this},e,i])}),(0,N.Y)(k.PA,function(){(0,S.p)(k.hw+"routeName",[performance.now(),...arguments],void 0,t.K7.softNav,e.ee)},e)}(e),!g.RI||!(0,i.dV)().o.MO)return;const n=at(this.ee,e);try{this.removeOnAbort=new AbortController}catch(e){}wt.tC.forEach(e=>{(0,J.sp)(e,e=>{c(e)},!0,this.removeOnAbort?.signal)}
8);const s=()=>(0,S.p)("newURL",[(0,_.t)(),""+window.location],void 0,this.featureName,this.ee);n.on("pushState-end",s),n.on("replaceState-end",s),(0,J.sp)(wt.OV,e=>{c(e),(0,S.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)},!0,this.removeOnAbort?.signal);let a=!1;const o=new((0,i.dV)().o.MO)((e,t)=>{a||(a=!0,requestAnimationFrame(()=>{(0,S.p)("newDom",[(0,_.t)()],void 0,this.featureName,this.ee),a=!1}))}),c=(0,C.s)(e=>{"loading"!==document.readyState&&((0,S.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0}))},100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,()=>r.e(478).then(r.bind(r,4393)),{domObserver:o})}}var Tt=r(981);const At={},St=new Set;function xt(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 Ot{constructor(e,t){this.timestamp=(0,_.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 _t 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,N.Y)(k.hG,(e,t)=>ce(e,t,c),c),function(e){(0,N.Y)(k.fF,(t,r)=>ue(t,r,e),e)}(e),ct(e),Se(e),function(e){(0,N.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(At[r.debugId]++)return r;At[r.debugId]=1,(0,V.G)(()=>{const e=(0,_.t)();St.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)})});
8class n extends WebSocket{static name=Tt.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 Ot(e[0],e[1]),this.targets=(0,Ie.$5)(t),this.addEventListener("open",()=>{this.nrData.openedAt=(0,_.t)(),["protocol","extensions","binaryType"].forEach(e=>{this.nrData[e]=this[e]}),St.add(this)}),this.addEventListener("message",e=>{const{type:t,size:r}=xt(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,_.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,St.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}=xt(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,S.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,S.p)("spv",[kt(e),(0,_.t)()],void 0,t.K7.genericEvents,this.ee)}),l.disconnect()},{types:["csp-violation"],buffered:!0});l.observe()}g.gm.addEventListener("securitypolicyviolation",e=>{(0,S.p)("spv",[kt(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,S.p)("ua",[e],void 0,this.featureName,this.ee),!0)),o.qN.forEac
8h(e=>{const t=(0,C.s)(e=>{(0,S.p)("ua",[e],void 0,this.featureName,this.ee)},500,{leading:!0});(0,J.sp)(e,t)}),g.gm.addEventListener("error",()=>{(0,S.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,S.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,S.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,S.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)})}).observe({type:"resource",buffered:!0})}}a.some(e=>e)?this.importAggregator(e,()=>r.e(478).then(r.bind(r,8019))):this.deregisterDrain()}}function kt(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 Nt=r(2646);const Lt=new Map;function Mt(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||R.ee).get("logger")}(e),o=(0,Pe.YM)(a,void 0,s),c=new Nt.y(R.P);c.level=n.level,c.customAttributes=n.customAttributes,c.autoCaptured=i;const d=t[r]?.[Pe.Jt]||t[r];return Lt.set(d,c),o.inPlace(t,[r],"wrap-logger-",()=>Lt.get(d),void 0,!0),a}var Pt=r(1910);class It extends W{static featureName=se.TZ;constructor(e){var t;super(e,se.TZ),t=e,(0,N.Y)("log",(e,r)=>oe(e,r,t),t),function(e){(0,N.Y)(k.Wb,(t,r,{customAttributes:n={},level:i=se.p_.INFO}={})=>{Mt(e.ee,t,r,{customAttributes:n,level:i},!1,e)},e)}(e),Se(e);const n=this.ee;["log","error","warn","info","debug","trace"].forEach(t=>{(0,Pt.i)(g.gm.console[t]),Mt(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(478).then(r.bind(r,5288)))}}new F({features:[nt,K,G,vt,Et,Y,Oe,_t,It,Rt],loaderType:"spa"})})()})();</script>
8
9      <title>Winsor Pilates | The Original Hollywood Pilates Method.</title>
10      <meta property="og:title" content="Winsor Pilates | The Original Hollywood Pilates Method.">
11      <meta name="twitter:title" content="Winsor Pilates | The Original Hollywood Pilates Method.">
12      <meta name="description" content="Transform your body with the original Hollywood secret. Join 50 million success stories worldwide and start your Winsor Pilates transformation today.">
13      <meta property="og:description" content="Transform your body with the original Hollywood secret. Join 50 million success stories worldwide and start your Winsor Pilates transformation today.">
14      <meta name="twitter:description" content=" Transform your body with the original Hollywood secret. Join 50 million success stories worldwide and start your Winsor Pilates transformation today.">
15      <link
16  rel="icon"
17  href="https://thewinsorpilates.com/images/favicontypes/80848/winsor-pilates-logo_streaming.1780417431.png"
18>
19<link
20  rel="apple-touch-icon"
21  sizes="180x180"
22  href="https://thewinsorpilates.com/images/favicontypes/80848/winsor-pilates-logo_streaming.1780417431.png"
23>
24    <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
25    <meta name="csrf-token" content="">
26    <link rel="preconnect" href="https://fonts.googleapis.com">
27    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
28    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
29    
29<script src="https://ajax.googleapis.com/ajax/libs/webfont/1.5.10/webfont.js"></script>
29
30    
30<script>
31      window.editorId = 410098;
32      window.editorLink = 'https://app.uscreen.tv/bullet/page_builder/410098';
33      window.body_font_family = 'IBM Plex Sans:300,400,700,900';
34      window.heading_font_family = 'Barlow:300,400,700,900';
35    </script>
35
36    <link rel="stylesheet" href="https://assets-gke.uscreencdn.com/vite/assets/tailwind-CeQmPIAS.css" media="all" />
37      
37<script src="https://assets-gke.uscreencdn.com/vite/assets/storefront_hotwire-BZ9GwY5K.js" crossorigin="anonymous" type="module"></script>
37<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/preload-helper-s3Hva0Xc.js" as="script" crossorigin="anonymous">
38<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/excludeTurboTrainBroadcastReactEvents-Ch9QDwMS.js" as="script" crossorigin="anonymous">
39<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/VideoTracker-DKtiOlZs.js" as="script" crossorigin="anonymous">
40<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/turbo.es2017-esm-CbrezRZI.js" as="script" crossorigin="anonymous">
41<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/_commonjsHelpers-BosuxZz1.js" as="script" crossorigin="anonymous"><link rel="stylesheet" href="https://assets-gke.uscreencdn.com/vite/assets/storefront_hotwire-DtHu4oK3.css" media="screen" />
42      
42<script src="https://assets-gke.uscreencdn.com/vite/assets/web-components-BnSq9iDb.js" crossorigin="anonymous" type="module"></script>
42<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/preload-helper-s3Hva0Xc.js" as="script" crossorigin="anonymous">
43
44    <link rel="stylesheet" href="https://assets-gke.uscreencdn.com/vite/assets/page_builder-BMl1NNRh.css" media="all" />
45    <style>
46    :root {
47        --primary: #006EBF;
48        --primary-rgb: 0, 110, 191;
49        --contrast-text-color: #FFFFFF;
50        --contrast-to-primary-color: #fff;
51    }
52</style>
53<style id="custom-theme-styles" media="none">
54    body.light {
55        --main-color-h: 0;
56        --main-color-s: 100;
57        --main-color-l: 100;
58        --ds-bg-main: hsl(0, 100%, 100%);
59
60        --ds-bg-default: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 96%);
61        --ds-bg-inset: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 91%);
62        --ds-bg-overlay: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 98%);
63        --ds-bg-subtle: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 91%);
64
65        --ds-border-default: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 85%);
66        --ds-fg-default: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 8%);
67        --ds-fg-muted: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 25%);
68        --ds-fg-subtle: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 50%);
69    }
70
71    body.dark {
72        --main-color-h: 0;
73        --main-color-s: 100;
74        --main-color-l: 0;
75        --ds-bg-main: hsl(0, 100%, 0%);
76
77        --ds-bg-default: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 10%);
78        --ds-bg-overlay: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 2%);
79        --ds-bg-inset: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 6%);
80        --ds-bg-subtle: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 15%);
81
82        --ds-border-default: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 20%);
83        --ds-fg-default: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 98%);
84        --ds-fg-muted: hsl(var(--main-color-h), calc(var(--main-color-s) * 1%), 70%);
85        --ds-fg-subtle: hsl(var(--main-color-h), clamp(7%, calc(calc(var(--main-color-s) - 10) * 1%), 100%), 60%);
86    }
87
88</style>
89    
89<script async type='text/javascript' src='https://static.klaviyo.com/onsite/js/klaviyo.js?company_id=XHNBKC'></script>
89
90<!-- Taboola Pixel Code --> 
90<script>     _tfa.push({notify: 'event', name: 'view_content', id: 1790812}); </script>
90 <!-- End of Taboola Pixel Code -->
91<meta name="viewport" content="width=device-width, initial-scale=1.0">
92<style>
93  /* Direct override to force bold navigation text on the landing page */
94  header a, 
95  .header-menu-link, 
96  .nav-link, 
97  .navigation__link, 
98  .main-nav a,
99  [class*="menu"] a { 
100    font-weight: 600 !important; 
101  }
102</style>
103
104
105<meta name="p:domain_verify" content="05be4a356944f670401e7847630c5fb2"/>
106      <!-- Google Analytics -->
vendor: 69 bytes, lines 106-108
106
107
108    <script async src="https://www.googletagmanager.com/gtag/js?id=
108G-TQ2Z9Z3R3C
vendor: 16 bytes, lines 108-109
108"></script>
109    
109<script>
110      
vendor: 145 bytes, lines 110-113
110window.dataLayer = window.dataLayer || [];
111      function gtag(){dataLayer.push(arguments);}
112      gtag('js', new Date());
113      gtag('config', '
113G-TQ2Z9Z3R3C
vendor: 8 bytes, lines 113-114
113');
114    
114</script>
114
115<!-- End Google Analytics -->
116
117      <!-- Google Tag Manager -->
118  
118<script>
vendor: 348 bytes, lines 118-123
118
119    (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
120    new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
121    j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
122    'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
123    })(window,document,'script','dataLayer','
123GTM-PNLJJ6B7
vendor: 6 bytes, lines 123-124
123');
124  
124</script>
124
125<!-- End Google Tag Manager -->
126
127  </head>
128  <body dir="ltr" class="dark themeless group/body bg-ds-default">
129        <!-- Google Tag Manager (noscript) -->
vendor: 70 bytes, lines 129-130
129
130  <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
130GTM-PNLJJ6B7
vendor: 87 bytes, lines 130-132
130"
131  height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
132  
132<!-- End Google Tag Manager (noscript) -->
133
134    <style id="card_border_radius">
135      .pb-card {
136        border-radius: 0;
137      }
138    </style>
139    <style id="button_border_radius">
140      .pb-button {
141        border-radius: 0;
142      }
143    </style>
144    <style id="heading_font_family">
145      .heading_font_family {
146        font-family: 'Barlow';
147      }
148    </style>
149    <style id="body_font_family">
150      .body_font_family {
151        font-family: 'IBM Plex Sans';
152      }
153    </style>
154    
154<script src="https://assets-gke.uscreencdn.com/vite/assets/page_builder-CQXrcFwc.js" crossorigin="anonymous" type="module"></script>
154<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/api-CAiQbrBo-BbgJmk-9.js" as="script" crossorigin="anonymous">
155<link rel="modulepreload" href="https://assets-gke.uscreencdn.com/vite/assets/_commonjsHelpers-DaMA6jEr-DwXtFsJ3.js" as="script" crossorigin="anonymous">
156    <turbo-frame id="website_modal"></turbo-frame>
157    <div hidden="hidden" data-controller="edge-visit" data-edge-visit-url-value="/pages/410098/visit"></div>
158    <div class="sticky top-0 z-[100]">
159      
160      
161      <header id="website-header"
162  class="sticky top-0 z-[100] flex bg-ds-main h-20 border-b border-ds-default"
163  data-controller="themeless--header"
164>
165  <div class="container flex justify-between items-center my-auto">
166    <div class="flex justify-start w-[8.75rem] flex-none">
167      <a class="max-w-36 me-auto text-sm md:text-base text-ds-default" id="store-logo" data-type="main_logo" href="/">
168          <img alt="Winsor Pilates" src="https://alpha.uscreencdn.com/images/logotypes/80848/winsor-pilates-logo_streaming_horizontal.1780417356.png" />
169</a>    </div>
170
171    <nav id="website-links" class="h-full min-w-0 mx-auto hidden md:flex justify-center -mb-px" data-themeless--header-target="navigation">
172      <ul class="h-full flex justify-start space-x-4 invisible" data-themeless--header-target="navigationLinks">
173
174          <li class="relative group/item">
175            <a class="flex items-center min-w-max overflow-y-hidden text-center px-4 pt-8 pb-7 h-full border-b border-b-4 hover:text-primary font-medium border-primary text-primary" target="_self" data-type="home" href="/"><span class="flex items-center"><span>Home</span></span></a>
176          </li>
177
178          <li class="relative group/item">
179            <a class="flex items-center min-w-max overflow-y-hidden text-center px-4 pt-8 pb-7 h-full border-b border-b-4 hover:text-primary font-medium border-transparent text-ds-default" target="_self" data-type="catalog" href="/catalog"><span class="flex items-center"><span>Catalog</span></span></a>
180          </li>
181
182          <li class="relative group/item">
183            <a class="flex items-center min-w-max overflow-y-hidden text-center px-4 pt-8 pb-7 h-full border-b border-b-4 hover:text-primary font-medium border-transparent text-ds-default" target="_self" data-type="community" href="/community"><span class="flex items-center"><span>Community</span></span></a>
184          </li>
185
186          <li class="relative group/item">
187            <a class="flex items-center min-w-max overflow-y-hidden text-center px-4 pt-8 pb-7 h-full border-b border-b-4 hover:text-primary font-medium border-transparent text-ds-default" target="_self" href="/pages/about-us"><span class="flex items-center"><span>About Us</span></span></a>
188          </li>
189
190          <li class="relative group/item">
191            <a class="flex items-center min-w-max overflow-y-hidden text-center px-4 pt-8 pb-7 h-full border-b border-b-4 hover:text-primary font-medium border-transparent text-ds-default" target="_self" data-type="calendar" href="/calendar"><span class="flex items-center"><span>Calendar</span></span></a>
192          </li>
193
194          <li class="relative group/item">
195            <a class="flex items-center min-w-max overflow-y-hidden text-center px-4 pt-8 pb-7 h-full border-b border-b-4 hover:text-primary font-medium border-transparent text-ds-default" target="_self" href="/pages/reviews"><span class="flex items-center"><span>Reviews</span></span></a>
196          </li>
197      </ul>
198    </nav>
199
200    <div class="flex gap-x-2 items-center justify-end relative flex-none">
201
202
203      <ds-button style="--font-size: var(--font-size-4-5)" class="hidden lg:block" size="big" variant="regular" href="/sign_in">Sign in</ds-button>
204          <ds-button style="--font-size: var(--font-size-4-5)" size="big" variant="primary" href="/join">Join</ds-button>
205
206    <div class="relative flex items-center">
207      <input type="checkbox" id="menu-toggle" class="peer hidden" data-themeless--header-target="toggle" data-action="change->themeless--header#onMenuToggle">
208      <label for="menu-toggle" class="overlay hidden peer-checked:block fixed inset-0 "></label>
209      <label for="menu-toggle" class="cursor-pointer flex items-center justify-center p-2 rounded bg-ds-subtle hover:opacity-80 lg:hidden w-12"
210        data-themeless--header-target="toggleBurger"
211      >
212        <ds-icon class="text-ds-default block p-1" name="burger" size="24"></ds-icon>
213        <ds-icon class="text-ds-default hidden p-1" name="cross" size="24"></ds-icon>
214      </label>
215
216      <div id="main-menu" class="invisible" data-themeless--header-target="menu">
217        <div class="overflow-hidden relative box-border h-full flex w-full">
218          <nav class="h-auto max-h-full w-full min-h-0 overflow-y-auto px-4 py-2 border-ds-default" data-themeless--header-target="menuNavigation">
219            <ul class="flex flex-col space-y-1">
220                <li class="text-base md:text-sm font-normal leading-tight md:leading-none">
221                  <a class="block py-2 h-10 md:h-8 hover:underline" href="/sign_in">Sign in</a>
222                </li>
223                <li class="text-base md:text-sm font-normal leading-tight md:leading-none">
224                  <a class="block py-2 min-h-10 md:min-h-8 hover:underline underline-offset-2 underline" target="_self" data-type="home" href="/"><span class="flex items-center justify-items-stretch"><span>Home</span></span></a>
225                </li>
226                <li class="text-base md:text-sm font-normal leading-tight md:leading-none">
227                  <a class="block py-2 min-h-10 md:min-h-8 hover:underline underline-offset-2" target="_self" data-type="catalog" href="/catalog"><span class="flex items-center justify-items-stretch"><span>Catalog</span></span></a>
228                </li>
229                <li class="text-base md:text-sm font-normal leading-tight md:leading-none">
230                  <a class="block py-2 min-h-10 md:min-h-8 hover:underline underline-offset-2" target="_self" data-type="community" href="/community"><span class="flex items-center justify-items-stretch"><span>Community</span></span></a>
231                </li>
232                <li class="text-base md:text-sm font-normal leading-tight md:leading-none">
233                  <a class="block py-2 min-h-10 md:min-h-8 hover:underline underline-offset-2" target="_self" href="/pages/about-us"><span class="flex items-center justify-items-stretch"><span>About Us</span></span></a>
234                </li>
235                <li class="text-base md:text-sm font-normal leading-tight md:leading-none">
236                  <a class="block py-2 min-h-10 md:min-h-8 hover:underline underline-offset-2" target="_self" data-type="calendar" href="/calendar"><span class="flex items-center justify-items-stretch"><span>Calendar</span></span></a>
237                </li>
238                <li class="text-base md:text-sm font-normal leading-tight md:leading-none">
239                  <a class="block py-2 min-h-10 md:min-h-8 hover:underline underline-offset-2" target="_self" href="/pages/reviews"><span class="flex items-center justify-items-stretch"><span>Reviews</span></span></a>
240                </li>
241              <ds-viewport data-action="change->themeless--header#onScrollAnchorChange">
242                <div class="w-full h-[1px]"></div>
243              </ds-viewport>
244            </ul>
245          </nav>
246          <div aria-hidden="true" class="absolute top-0 left-0 right-0 bottom-0 pointer-events-none opacity-1 translate-y-0 aria-hidden:translate-y-10 aria-hidden:opacity-0 transition-all" style="box-shadow: 0px -60px 30px -32px var(--ds-bg-overlay) inset;" data-themeless--header-target="menuNavigationScrollShadow"></div>
247        </div>
248        <div class="p-4 border-ds-default border-t bg-ds-overlay text-xs font-normal">
249          <div class="flex flex-wrap gap-y-2">
250              <a class="block w-full mb-2 text-primary hover:underline underline-offset-2" data-turbo="true" data-turbo-frame="website_modal" href="/about/apps">Get the app -&gt;</a>
251              <a class="text-ds-muted text-sm md:text-[11px]" href="/terms">
252                <span class="hover:underline underline-offset-2">Terms</span>
253</a>              <span class="flex items-center font-medium mx-1 last:hidden">∙</span>
254              <a class="text-ds-muted text-sm md:text-[11px]" href="/privacy">
255                <span class="hover:underline underline-offset-2">Privacy</span>
256</a>              <span class="flex items-center font-medium mx-1 last:hidden">∙</span>
257              <a class="text-ds-muted text-sm md:text-[11px]" href="/gift_cards/new">
258                <span class="hover:underline underline-offset-2">Buy gift card</span>
259</a>              <span class="flex items-center font-medium mx-1 last:hidden">∙</span>
260              <a class="text-ds-muted text-sm md:text-[11px]" href="/gift_card_redemptions/new">
261                <span class="hover:underline underline-offset-2">Claim gift card</span>
262</a>              <span class="flex items-center font-medium mx-1 last:hidden">∙</span>
263              <a class="text-ds-muted text-sm md:text-[11px]" href="mailto:[email protected]">
264                <span class="hover:underline underline-offset-2">Help</span>
265</a>              <span class="flex items-center font-medium mx-1 last:hidden">∙</span>
266          </div>
267        </div>
268      </div>
269    </div>
270  </div>
271  </div>
272</header>
273
274
275    </div>
276    <div id="el-ecc19212f2e3c238" class=" relative" data-editor="section">
277    <section><!-- Update 071726 -->
278<!-- Global Styles & Animations -->
279
280<style>
281  :root {
282    --wp-blue: #006ebf;
283    --wp-blue-dark: #005aa0;
284    --wp-black: #0b0b0b;
285    --wp-text: #444444;
286    --wp-text-light: #777777;
287    --wp-bg-white: #ffffff;
288    --wp-bg-light: #f8f9fb;
289    --wp-california-blonde: #fce1bc;
290    --wp-linen: #f3eadf;
291    --wp-font: "Lato", sans-serif;
292    --wp-max-width: 1200px;
293    --wp-red: #d33a2c;
294  }
295
296  /* Global Resets */
297  html, body {
298    font-family: var(--wp-font);
299    color: var(--wp-text);
300    margin: 0;
301    padding: 0;
302    background-color: var(--wp-bg-white) !important; /* Fuerza el fondo blanco en toda la página base */
303    overflow-x: hidden; /* Evita sangrado de color y scroll horizontal en móviles */
304  }
305
306  /* Shared Container */
307  .wp-container {
308    max-width: var(--wp-max-width);
309    margin: 0 auto;
310    padding: 0 20px;
311    box-sizing: border-box;
312  }
313
314  /* Shared Section Titles */
315  .wp-section-title {
316    font-size: clamp(30px, 4vw, 46px);
317    font-weight: 800;
318    color: var(--wp-black);
319    line-height: 1.15;
320    margin-top: 0;
321  }
322
323  /* Shared CTA Button */
324  .wp-btn-primary {
325    display: inline-block;
326    background: var(--wp-blue);
327    color: var(--wp-bg-white);
328    padding: 14px 28px;
329    border-radius: 10px;
330    font-size: 17px;
331    font-weight: 700;
332    text-decoration: none;
333    transition: all 0.25s ease;
334  }
335
336  .wp-btn-primary:hover {
337    background: var(--wp-blue-dark);
338    transform: translateY(-2px);
339    box-shadow: 0 10px 24px rgba(0,0,0,0.12);
340  }
341
342  /* =========================================
343     Global Scroll Animations (Fade + Blur + Distance)
344     ========================================= */
345  .wp-animate-fade-up {
346    opacity: 0;
347    transform: translateY(40px);
348    filter: blur(5px); 
349    transition: 
350      opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1), 
351      transform 1.2s cubic-bezier(0.16, 1, 0.3, 1),
352      filter 1.2s cubic-bezier(0.16, 1, 0.3, 1);
353    will-change: opacity, transform, filter; 
354  }
355
356  .wp-animate-fade-up.wp-is-visible {
357    opacity: 1;
358    transform: translateY(0);
359    filter: blur(0); 
360  }
361</style>
362
363<!-- =========================================
364     Scroll Animation Logic
365     ========================================= -->
366<script>
367  document.addEventListener("DOMContentLoaded", function() {
368    // 1. Set up the Intersection Observer
369    const animationObserver = new IntersectionObserver((entries, observer) => {
370      entries.forEach(entry => {
371        if (entry.isIntersecting) {
372          entry.target.classList.add('wp-is-visible');
373          observer.unobserve(entry.target); 
374        }
375      });
376    }, { 
377      rootMargin: "0px 0px -20px 0px", 
378      threshold: 0 
379    });
380
381    // 2. Comprehensive selector grabbing EVERY element type across your sections
382    const elementsToAnimate = document.querySelectorAll(`
383      h2:not(.wp-hero-subtitle), 
384      h3, 
385      .wp-section-title,
386      .wp-gives-lead, .wp-gives-list li, .wp-gives-footer,
387      .wp-principles p, .wp-principles-image img,
388      .wp-method-perk, .wp-method-text p,
389      .wp-phone-frame, .wp-audioNote,
390      .wp-reviews-header p, .wp-reviews-container,
391      .wp-app-promo-content p, .wp-app-promo-list li, .wp-app-promo-image img,
392      .wp-final-cta p, .wp-btn-primary,
393      .wp-quote-text p, .wp-quote-author, .wp-quote-image img,
394      .wp-quote-banner,
395      .wp-featured-box,
396      .wp-logo-grid img,
397      .wp-magazines-info p,
398      .wp-photo-container img,
399      .wp-photo-legacy-content p, 
400      .wp-before-after-header p,
401      .slide,
402      .wp-before-after-note, 
403      .subhead,
404      .wp-promo-banner,
405      .wp-features-card,
406      .wp-price-card-wrapper
407    `);
408
409    // 3. Apply the hidden state class and observe them instantly
410    elementsToAnimate.forEach((el) => {
411      el.classList.add('wp-animate-fade-up');
412      animationObserver.observe(el);
413    });
414  });
415</script>
415</section>
416</div><div id="el-405305ffcf1f7223" class=" relative" data-editor="section">
417    <section></section>
418</div><div id="el-c82da84f3eeb7038" class=" relative" data-editor="section">
419    <section><!-- Hero Section -->
420<style>
421  .wp-hero-wrapper {
422    position: relative;
423    width: 100%;
424    background-color: var(--wp-bg-white); /* Error tipográfico corregido aquí */
425    overflow: hidden; 
426  }
427
428  .wp-hero {
429    position: relative;
430    width: 100%;
431    max-width: 1200px;
432    margin: 0 auto; 
433    min-height: 560px;
434    overflow: hidden;
435    font-family: var(--wp-font);
436    border-radius: 0px;
437    /* Eliminamos el box-shadow para dejar un corte recto y duro */
438  }
439
440  .wp-hero-subtitle {
441    font-size: clamp(22px, 3vw, 32px);
442    font-weight: 600;
443    margin: -10px 0 24px 0;
444    color: rgba(255, 255, 255, 0.95);
445    line-height: 1.3;
446  }
447
448  .wp-hero video.wp-main-video {
449    position: absolute;
450    inset: 0;
451    width: 100%;
452    height: 100%;
453    object-fit: cover;
454    transform: scale(1.05);
455  }
456
457  .wp-hero-overlay {
458    position: absolute;
459    inset: 0;
460    background: linear-gradient(
461      90deg,
462      rgba(0,0,0,0.45) 0%,
463      rgba(0,0,0,0) 50%
464    );
465  }
466
467  .wp-hero-content {
468    position: relative;
469    z-index: 2;
470    max-width: 1200px;
471    width: 100%;
472    margin: 0 auto;
473    padding: 120px 20px 50px; 
474    box-sizing: border-box;
475    color: var(--wp-bg-white);
476  }
477
478  .wp-hero h1 {
479    font-size: clamp(38px, 5vw, 60px);
480    font-weight: 800;
481    letter-spacing: -0.02em;
482    margin: 0 0 18px;
483    line-height: 1.05;
484  }
485
486  .wp-hero-quote {
487    max-width: 620px;
488    margin-bottom: 30px;
489  }
490
491  .wp-hero-quote p {
492    font-size: 20px;
493    line-height: 1.7;
494    margin: 0; 
495    font-style: normal;
496    color: rgba(255,255,255,0.96);
497  }
498
499  .wp-hero-quote strong {
500    font-weight: 900;
501    color: var(--wp-bg-white);
502    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
503  }
504
505  .wp-hero-quote span {
506    display: inline-block;
507    margin-top: 8px;
508    font-size: 15px;
509    font-weight: 700;
510    letter-spacing: 0.04em;
511    opacity: 0.9;
512  }
513
514  .wp-hero-actions {
515    display: flex;
516    gap: 14px;
517    flex-wrap: wrap;
518    align-items: center;
519  }
520
521  .wp-hero-cta {
522    display: inline-block;
523    background: var(--wp-blue);
524    color: var(--wp-bg-white);
525    padding: 14px 26px;
526    border-radius: 10px;
527    font-size: 18px;
528    font-weight: 700;
529    text-decoration: none;
530    transition: transform 0.15s ease, box-shadow 0.15s ease;
531  }
532
533  .wp-hero-cta:hover {
534    transform: translateY(-1px);
535    box-shadow: 0 10px 24px rgba(0,0,0,0.12);
536    filter: brightness(0.95);
537  }
538
539  .wp-hero-note {
540    margin-top: 14px;
541    font-size: 14px;
542    opacity: 0.85;
543  }
544
545  @media (max-width: 768px) {
546    .wp-hero-content {
547      padding: 90px 18px 40px;
548    }
549
550    .wp-hero-quote p {
551      font-size: 17px;
552      line-height: 1.6;
553    }
554  }
555</style>
556
557<div class="wp-hero-wrapper">
558  
559  <!-- Contenedor Principal (1200px máximo con cortes rectos) -->
560  <section class="wp-hero">
561    <video class="wp-main-video" autoplay muted loop playsinline preload="auto">
562      <source src="https://ld3pro.com/WP/LP26/Videos/WP_LandingPage-mobile-Hero-Video_RS_061126.mp4" type="video/mp4" />
563    </video>
564
565    <div class="wp-hero-overlay"></div>
566
567    <div class="wp-hero-content">
568      <h1>The Original Pilates-at-Home Method</h1>
569      <h2 class="wp-hero-subtitle"></h2>
570  
571      <div class="wp-hero-quote">
572        <!-- Texto actualizado aquí -->
573        <p><strong>Just 20 minutes a day, 3 times a week!</strong> Discover how easy it is to transform your body, get fit, and stay energized.</p>
574      </div>
575
576      <div class="wp-hero-actions">
577        <a href="/join" class="wp-hero-cta">Start 14-Day FREE Trial</a>
578      </div>
579
580      <div class="wp-hero-note">
581      </div>
582    </div>
583  </section>
584</div></section>
585</div><div id="el-dc4dc77bb087bba8" class=" relative" data-editor="section">
586    <section><!-- The Instructor Who Changed Everything -->
587<style>
588  .wp-photo-legacy {
589    padding: 90px 20px 10px; /* Matched padding to the promo section */
590    background: #ffffff;
591    font-family: "Lato", sans-serif;
592    overflow: hidden; 
593  }
594
595  .wp-photo-legacy-inner {
596    max-width: 1200px; /* Matched max-width */
597    margin: 0 auto;
598    display: grid;
599    grid-template-columns: 1fr 1.25fr; /* Matched grid-template-columns */
600    gap: 30px; /* Matched gap */
601    align-items: center;
602  }
603
604  .wp-photo-legacy-content h2 {
605    font-size: clamp(30px, 4vw, 44px);
606    font-weight: 800;
607    line-height: 1.15;
608    margin-bottom: 18px;
609    color: #0b0b0b;
610  }
611
612  .wp-photo-legacy-content p {
613    font-size: 18px; /* Slightly increased to match promo text size */
614    line-height: 1.6;
615    color: #444;
616    margin-bottom: 15px;
617  }
618
619  .wp-photo-legacy-content p strong {
620    font-weight: 800;
621    color: #0b0b0b;
622  }
623
624  .wp-photo-container img {
625    width: 100%;
626    height: auto;
627    display: block;
628    max-width: 100%;
629    border-radius: 0;
630    box-shadow: none;
631  }
632
633  @media (max-width: 900px) {
634    .wp-photo-legacy-inner {
635      grid-template-columns: 1fr;
636      text-align: center;
637      gap: 40px; /* Matched mobile gap */
638    }
639
640    .wp-photo-legacy-content p {
641      margin-left: auto;
642      margin-right: auto;
643    }
644
645    .wp-photo-container img {
646      width: 100%;
647      margin: 0 auto;
648    }
649  }
650</style>
651
652<section class="wp-photo-legacy">
653  <div class="wp-photo-legacy-inner">
654    <div class="wp-photo-legacy-content">
655      <h2>The Instructor Who Changed Everything</h2>
656      <p>
657        <strong>Mari Winsor</strong>, the "Queen of Pilates" as some of her A-list celebrity clients called her, is a pioneer. She took Pilates beyond Hollywood's exclusive studios and made it accessible to everyone everywhere. She sold millions of her videos around the world.
658      </p>
659      <p>
660        Today, Mari's Winsor Pilates continues to inspire and remains one of the most trusted and effective Pilates-at-Home programs ever created.
661      </p>
662    </div>
663
664    <div class="wp-photo-container">
665       <img src="https://ld3pro.com/WP/LP26/Images/Collage_Image_landing_page_051126_2026.jpg" alt="Mari Winsor with clients">
666    </div>
667  </div>
668</section></section>
669</div><div id="el-acc37361fcefc601" class=" relative" data-editor="section">
670    <section><!-- Magazines Scroll 2 (Self-Contained Visibility Fix) -->
671<style>
672  /* --- GUARANTEED WHITE SPACE ABOVE --- */
673  .wp-magazines-wrapper {
674    padding-top: 80px; 
675    background-color: var(--wp-bg-white, #ffffff); 
676  }
677
678  .magazine-section {
679    background: linear-gradient(90deg, #90cfff 0%, #2878db 50%, #90cfff 100%);
680    height: 140px; 
681    display: flex;
682    flex-direction: column;
683    justify-content: center;
684    align-items: center;
685    overflow: hidden;
686    position: relative;
687  }
688
689  /* --- Left White Fade Overlay --- */
690  .magazine-section::before {
691    content: "";
692    position: absolute;
693    top: 0;
694    bottom: 0;
695    left: 0;
696    width: calc(max(0px, (100% - var(--wp-max-width, 1200px)) / 2) + 100px);
697    background: linear-gradient(to right, var(--wp-bg-white, #ffffff) calc(100% - 100px), rgba(255,255,255,0) 100%);
698    z-index: 3;
699    pointer-events: none; 
700  }
701
702  /* --- Right White Fade Overlay --- */
703  .magazine-section::after {
704    content: "";
705    position: absolute;
706    top: 0;
707    bottom: 0;
708    right: 0;
709    width: calc(max(0px, (100% - var(--wp-max-width, 1200px)) / 2) + 100px);
710    background: linear-gradient(to left, var(--wp-bg-white, #ffffff) calc(100% - 100px), rgba(255,255,255,0) 100%);
711    z-index: 3;
712    pointer-events: none;
713  }
714
715  /* --- Title --- */
716  .section-title {
717    font-size: 1.1rem;
718    font-weight: 700;
719    color: #ffffff;
720    text-align: center;
721    text-transform: uppercase;
722    letter-spacing: 2px;
723    margin-top: 0;
724    margin-bottom: 14px; 
725    opacity: 0.9;
726    z-index: 4; 
727  }
728
729  /* --- Carousel Viewport --- */
730  .wp-carousel-viewport {
731    position: relative;
732    width: 100%;
733    max-width: 1000px; 
734    height: 40px; 
735    margin: 0 auto;
736    z-index: 2; 
737  }
738
739  .wp-logo-slide {
740    position: absolute;
741    inset: 0;
742    display: flex;
743    justify-content: center;
744    align-items: center;
745    gap: 70px; 
746    width: 100%;
747    pointer-events: none;
748  }
749
750  /* Initial State for Images (Ocultos abajo por defecto) */
751  .wp-logo-slide img {
752    height: 40px; 
753    width: auto; 
754    max-width: 200px; 
755    object-fit: contain;
756    display: block;
757    user-select: none;
758    
759    opacity: 0;
760    transform: translateY(20px);
761    filter: brightness(0) invert(1) blur(8px); 
762    transition: none; 
763  }
764
765  /* Active State (Solo se activa cuando la sección recibe la clase .wp-is-visible) */
766  .magazine-section.wp-is-visible .wp-logo-slide.is-active {
767    pointer-events: auto;
768  }
769
770  .magazine-section.wp-is-visible .wp-logo-slide.is-active img {
771    opacity: 1;
772    transform: translateY(0);
773    filter: brightness(0) invert(1) blur(0px);
774    transition: opacity 0.7s ease-out, transform 0.7s ease-out, filter 0.7s ease-out;
775    transition-delay: calc(var(--i) * 0.15s + 0.3s); 
776  }
777
778  /* Exiting State (Moviéndose hacia arriba) */
779  .magazine-section.wp-is-visible .wp-logo-slide.is-exiting img {
780    opacity: 0;
781    transform: translateY(-20px);
782    filter: brightness(0) invert(1) blur(8px);
783    transition: opacity 0.5s ease-in, transform 0.5s ease-in, filter 0.5s ease-in;
784    transition-delay: calc(var(--i) * 0.1s); 
785  }
786
787  /* --- Clickable Progress Indicators --- */
788  .wp-carousel-indicators {
789    display: flex;
790    justify-content: center;
791    align-items: center;
792    gap: 10px;
793    margin-top: 14px; 
794    z-index: 4;
795  }
796
797  .wp-indicator {
798    width: 35px;
799    height: 16px; 
800    cursor: pointer;
801    position: relative;
802    display: block;
803  }
804
805  .wp-indicator::before {
806    content: "";
807    position: absolute;
808    top: 50%;
809    transform: translateY(-50%);
810    left: 0;
811    width: 100%;
812    height: 4px;
813    border-radius: 4px;
814    background: rgba(255, 255, 255, 0.3);
815  }
816
817  .wp-indicator::after {
818    content: "";
819    position: absolute;
820    top: 50%;
821    transform: translateY(-50%);
822    left: 0;
823    height: 4px;
824    border-radius: 4px;
825    width: 0%;
826    background: #ffffff; 
827  }
828
829  /* Animación de llenado (Solo si la sección es visible) */
830  .magazine-section.wp-is-visible .wp-indicator.is-active::after {
831    animation: fillProgress 4s linear forwards;
832  }
833
834  .wp-carousel-indicators.is-paused .wp-indicator.is-active::after {
835    animation-play-state: paused;
836  }
837
838  @keyframes fillProgress {
839    0% { width: 0%; }
840    100% { width: 100%; }
841  }
842
843  /* --- Info Text Section --- */
844  .wp-magazines-info {
845    background-color: var(--wp-bg-white, #ffffff);
846    padding: 10px 0 15px 0; 
847    text-align: center;
848  }
849
850  .wp-magazines-info p {
851    max-width: 850px;
852    margin: 0 auto;
853    font-size: 15px; 
854    line-height: 1.6;
855    color: var(--wp-text-light);
856  }
857
858  /* --- Mobile Adjustments --- */
859  @media (max-width: 1200px) {
860    .magazine-section::before, .magazine-section::after {
861      width: 60px; 
862    }
863  }
864
865  @media (max-width: 900px) {
866    .wp-logo-slide { gap: 45px; }
867  }
868
869  @media (max-width: 768px) {
870    .wp-magazines-wrapper {
871      padding-top: 50px; 
872    }
873    .magazine-section {
874      height: 125px; 
875    }
876    .section-title {
877      font-size: 1rem;
878      margin-bottom: 10px;
879    }
880    .wp-carousel-viewport {
881      height: 32px;
882    }
883    .wp-carousel-indicators {
884      margin-top: 10px;
885      gap: 8px;
886    }
887    .wp-logo-slide {
888      gap: 40px; 
889    }
890    .wp-logo-slide img {
891      height: 32px; 
892      max-width: 140px; 
893    }
894    .wp-indicator {
895      width: 25px; 
896    }
897  }
898</style>
899
900<div class="wp-magazines-wrapper">
901  <!-- Blue Section -->
902  <section class="magazine-section" id="magazineHoverArea">
903    <h2 class="section-title">Featured In:</h2>
904    
905    <div class="wp-carousel-viewport" id="logoViewport">
906      <!-- Slides injected here via JS -->
907    </div>
908
909    <div class="wp-carousel-indicators" id="logoIndicators">
910      <!-- Indicators injected here via JS -->
911    </div>
912  </section>
913
914  <!-- Info Text Section -->
915  <section class="wp-magazines-info">
916    <div class="wp-container">
917      <p>When Mari created Winsor Pilates, she took the world by storm. She appeared on Oprah and CNN. She was featured in magazines such as Vogue, Glamour and Health.</p>
918    </div>
919  </section>
920</div>
921
922<script>
923  const basePath = "https://ld3pro.com/WP/LP26/Magazines/"; 
924
925  const magazines = [
926    "Redbook_Magazine_Logo_White.png",
927    "Instyle_Magazine_Logo_White.png",
928    "Glamour_Magazine_Logo_White.png",
929    "VOGUE_Magazine_Logo_White.png",
930    "Pilates_style_Magazine_Logo_White.png",
931    "FitPregnancy_Magazine_Logo_White.png",
932    "W_Magazine_Logo_White.png",
933    "Shape_Magazine_Logo_White.png",
934    "health_Magazine_Logo_White.png",
935    "Allure_Magazine_Logo_White.png"
936  ];
937
938  const viewport = document.getElementById('logoViewport');
939  const indicatorsContainer = document.getElementById('logoIndicators');
940  const hoverArea = document.getElementById('magazineHoverArea');
941  
942  let carouselInterval;
943  let currentIndex = 0;
944  let slides = [];
945  let indicators = [];
946  let isDesktopMode = null; 
947  let carouselHasStarted = false; 
948
949  const slideDuration = 4000; 
950
951  function buildCarousel() {
952    const isCurrentlyDesktop = window.innerWidth > 768;
953    
954    if (isDesktopMode === isCurrentlyDesktop) return;
955    isDesktopMode = isCurrentlyDesktop;
956
957    viewport.innerHTML = '';
958    indicatorsContainer.innerHTML = '';
959    clearInterval(carouselInterval);
960    currentIndex = 0;
961
962    const logoGroups = [];
963    
964    if (isCurrentlyDesktop) {
965      logoGroups.push(magazines.slice(0, 3));
966      logoGroups.push(magazines.slice(3, 6));
967      logoGroups.push(magazines.slice(6, 10));
968    } else {
969      for (let i = 0; i < magazines.length; i += 2) {
970        logoGroups.push(magazines.slice(i, i + 2));
971      }
972    }
973
974    logoGroups.forEach((group, index) => {
975      // 1. Crear Slide
976      const slideDiv = document.createElement('div');
977      slideDiv.className = `wp-logo-slide ${index === 0 ? 'is-active' : ''}`;
978      
979      let html = '';
980      group.forEach((fileName, i) => {
981        const cleanName = fileName.split('_')[0];
982        html += `<img src="${basePath}${fileName}" alt="${cleanName} Logo" loading="lazy" style="--i: ${i};">`;
983      });
984      
985      slideDiv.innerHTML = html;
986      viewport.appendChild(slideDiv);
987
988      // 2. Crear Barra de Progreso
989      const indicatorDiv = document.createElement('div');
990      indicatorDiv.className = `wp-indicator ${index === 0 ? 'is-active' : ''}`;
991      
992      indicatorDiv.addEventListener('click', () => goToSlide(index));
993      indicatorsContainer.appendChild(indicatorDiv);
994    });
995
996    slides = document.querySelectorAll('.wp-logo-slide');
997    indicators = document.querySelectorAll('.wp-indicator');
998    
999    if (carouselHasStarted && !indicatorsContainer.classList.contains('is-paused')) {
1000      carouselInterval = setInterval(nextSlide, slideDuration);
1001    }
1002  }
1003
1004  function goToSlide(targetIndex) {
1005    if (targetIndex === currentIndex) return; 
1006
1007    const currentSlide = slides[currentIndex];
1008    currentSlide.classList.remove('is-active');
1009    currentSlide.classList.add('is-exiting');
1010    indicators[currentIndex].classList.remove('is-active');
1011
1012    setTimeout(() => {
1013      currentSlide.classList.remove('is-exiting');
1014    }, 1200);
1015
1016    currentIndex = targetIndex;
1017
1018    slides[currentIndex].classList.add('is-active');
1019    void indicators[currentIndex].offsetWidth; 
1020    indicators[currentIndex].classList.add('is-active');
1021
1022    clearInterval(carouselInterval);
1023    if (!indicatorsContainer.classList.contains('is-paused')) {
1024      carouselInterval = setInterval(nextSlide, slideDuration);
1025    }
1026  }
1027
1028  function nextSlide() {
1029    if (slides.length <= 1) return;
1030    
1031    const currentSlide = slides[currentIndex];
1032    currentSlide.classList.remove('is-active');
1033    currentSlide.classList.add('is-exiting');
1034    indicators[currentIndex].classList.remove('is-active');
1035
1036    setTimeout(() => {
1037      currentSlide.classList.remove('is-exiting');
1038    }, 1200);
1039
1040    currentIndex = (currentIndex + 1) % slides.length;
1041    
1042    slides[currentIndex].classList.add('is-active');
1043    void indicators[currentIndex].offsetWidth; 
1044    indicators[currentIndex].classList.add('is-active');
1045  }
1046
1047  buildCarousel();
1048
1049  // EL FIX MÁGICO: El observador ahora inyecta la clase directamente al hacer scroll
1050  const startObserver = new IntersectionObserver((entries) => {
1051    if (entries[0].isIntersecting && !carouselHasStarted) {
1052      carouselHasStarted = true;
1053      
1054      // Forzamos la clase visible para que los logos aparezcan sí o sí
1055      hoverArea.classList.add('wp-is-visible'); 
1056      
1057      carouselInterval = setInterval(nextSlide, slideDuration);
1058    }
1059  }, { threshold: 0.1 });
1060  
1061  startObserver.observe(hoverArea);
1062
1063  // Hover detection
1064  const isTouchDevice = window.matchMedia("(max-width: 768px)").matches;
1065  if (!isTouchDevice) {
1066    hoverArea.addEventListener('mouseenter', () => {
1067      clearInterval(carouselInterval);
1068      indicatorsContainer.classList.add('is-paused'); 
1069    });
1070    
1071    hoverArea.addEventListener('mouseleave', () => {
1072      clearInterval(carouselInterval); 
1073      indicatorsContainer.classList.remove('is-paused'); 
1074      if(carouselHasStarted) {
1075        carouselInterval = setInterval(nextSlide, slideDuration); 
1076      }
1077    });
1078  }
1079
1080  window.addEventListener('resize', buildCarousel);
1081</script>
1081</section>
1082</div><div id="el-bc422c21471e6dec" class=" relative" data-editor="section">
1083    <section><!-- Built on Principles - Not Trends -->
1084<style>
1085  .wp-principles {
1086    padding: 90px 0;
1087    background-color: var(--wp-bg-white);
1088    overflow: hidden;
1089  }
1090  
1091  .wp-principles-inner {
1092    display: grid;
1093    /* 1.25fr for the image, 1fr for the text so the image has good presence */
1094    grid-template-columns: 1.25fr 1fr; 
1095    gap: 50px;
1096    align-items: center;
1097  }
1098
1099  .wp-principles-content h2 {
1100    margin-bottom: 24px;
1101    text-align: left;
1102  }
1103
1104  .wp-principles-content p {
1105    font-size: 18px;
1106    line-height: 1.65;
1107    color: var(--wp-text);
1108    margin-bottom: 20px;
1109    text-align: left;
1110  }
1111
1112  .wp-principles-content p:last-child {
1113    margin-bottom: 0;
1114  }
1115
1116  .wp-principles-content p strong {
1117    font-weight: 800;
1118    color: var(--wp-black);
1119  }
1120
1121  .wp-principles-image img {
1122    width: 100%;
1123    height: auto;
1124    display: block;
1125    max-width: 100%;
1126    border-radius: 0;
1127  }
1128
1129  /* Responsive Design for Mobile and Tablets */
1130  @media (max-width: 900px) {
1131    .wp-principles {
1132      padding: 60px 0;
1133    }
1134
1135    .wp-principles-inner {
1136      grid-template-columns: 1fr;
1137      gap: 40px;
1138    }
1139
1140    /* Centers text on smaller screens */
1141    .wp-principles-content h2,
1142    .wp-principles-content p {
1143      text-align: center;
1144    }
1145
1146    .wp-principles-image img {
1147      margin: 0 auto;
1148    }
1149  }
1150</style>
1151
1152<section class="wp-principles">
1153  <div class="wp-container wp-principles-inner">
1154    
1155    <!-- Image on the Left -->
1156    <div class="wp-principles-image">
1157      <img src="https://ld3pro.com/WP/LP26/Images/MariScreenshots.00_00_01_05Imagenfija005_sinbordes.jpg" alt="Mari Winsor Pilates Method">
1158    </div>
1159
1160    <!-- Text on the Right -->
1161    <div class="wp-principles-content">
1162      <h2 class="wp-section-title">Built on Principles - Not Trends</h2>
1163      
1164      <p>Mari Winsor’s signature <strong>"Dynamic Sequencing"</strong> technique is a specialized combination of classical Pilates exercises arranged in a specific, fast-paced progression. While traditional Pilates focuses heavily on slow, deliberate control, Winsor’s method was explicitly engineered to maximize <strong>calorie burning and rapid body sculpting</strong>.</p>
1165      
1166      <p>By shifting the focus toward an athletic flow, she adapted Joseph Pilates' floor exercises into a format that brought Hollywood-style results to mainstream fitness.</p>
1167    </div>
1168
1169  </div>
1170</section></section>
1171</div><div id="el-f5c08a61b6c5d105" class=" relative" data-editor="section">
1172    <section><!-- A Method for Real Life -->
1173<style>
1174  .wp-method {
1175    padding: 90px 0;
1176    background-color: var(--wp-bg-light); /* Uses your global light gray variable */
1177    overflow: hidden;
1178  }
1179  
1180  /* Modern CSS Grid for Desktop */
1181  .wp-method-grid {
1182    display: grid;
1183    grid-template-columns: 1fr 340px; /* Text takes the left, video is fixed at 340px on the right */
1184    gap: 70px;
1185    align-items: center; /* Vertically centers the text with the video */
1186    max-width: 1100px; /* Slightly tighter max-width for better reading line-lengths */
1187    margin: 0 auto;
1188  }
1189
1190  /* --- Text Column --- */
1191  .wp-method-text h2 {
1192    text-align: center; /* Título centrado en todas las pantallas */
1193    margin-bottom: 35px;
1194  }
1195
1196  /* Unified Paragraph Styles */
1197  .wp-method-text p {
1198    font-size: 18px; /* Unified font size */
1199    line-height: 1.7;
1200    color: var(--wp-text);
1201    margin-bottom: 20px;
1202    text-align: left;
1203  }
1204
1205  .wp-method-text p:last-child {
1206    margin-bottom: 0;
1207  }
1208
1209  .wp-method-text strong {
1210    color: var(--wp-black);
1211    font-weight: 800;
1212  }
1213
1214  /* Contenedor del Botón CTA (Ahora centrado en Desktop y Móvil) */
1215  .wp-method-btn {
1216    margin-top: 35px;
1217    text-align: center; 
1218  }
1219
1220  /* --- Video Column (Tara's Phone) --- */
1221  .wp-phone { position: relative; width: 100%; margin: 0 auto; }
1222  
1223  .wp-phone-frame {
1224      position: relative; width: 100%; aspect-ratio: 9 / 19.5;
1225      border-radius: 38px; overflow: hidden; background: #0b0b0b;
1226      box-shadow: 0 15px 35px rgba(0,0,0,0.15); border: 1px solid rgba(0,0,0,0.08);
1227  }
1228  
1229  .wp-phone-frame video { width: 100%; height: 100%; object-fit: cover; display: block; }
1230  
1231  .wp-playOverlay {
1232      position: absolute; inset: 0; display: none; align-items: center; justify-content: center;
1233      background: linear-gradient(180deg, rgba(0,0,0,0.1), rgba(0,0,0,0.5)); z-index: 3;
1234  }
1235  
1236  .wp-phone-frame.is-paused .wp-playOverlay { display: flex; }
1237  
1238  .wp-playBtn {
1239      display: inline-flex; align-items: center; gap: 8px; padding: 12px 18px;
1240      border-radius: 999px; background: var(--wp-blue); color: #fff; font-weight: 900; font-size: 15px; border: none; cursor: pointer;
1241      box-shadow: 0 4px 15px rgba(0,0,0,0.2);
1242  }
1243  
1244  .wp-tri { width: 0; height: 0; border-left: 12px solid #fff; border-top: 7px solid transparent; border-bottom: 7px solid transparent; }
1245  
1246  .wp-audioNote { margin-top: 16px; text-align: center; font-size: 13px; color: var(--wp-text-light); }
1247
1248  /* --- Responsive Design --- */
1249  @media (max-width: 992px) {
1250    .wp-method-grid {
1251      grid-template-columns: 1fr; /* Stacks text on top of video */
1252      gap: 50px;
1253    }
1254    
1255    .wp-phone {
1256      max-width: 324px; /* Constrains phone size on tablets/mobile */
1257    }
1258  }
1259
1260  @media (max-width: 768px) {
1261    .wp-method {
1262      padding: 60px 0;
1263    }
1264  }
1265</style>
1266
1267<section class="wp-method">
1268  <div class="wp-container wp-method-grid">
1269    
1270    <div class="wp-method-text">
1271      <h2 class="wp-section-title">A Method for Real Life</h2>
1272      
1273      <p>You don't need hours at the gym to transform your body. Winsor Pilates was built for real, busy schedules: <strong>just 20 minutes a day 3 times a week is enough to see real results</strong>.</p>
1274      <p>No jumping, no joint impact, no excuses — just smart movements that sculpt and strengthen from the inside out. It's the method that fits into your life, not the other way around. <strong>Consistency, not intensity, is what gets you there.</strong></p>
1275      
1276      <!-- Botón CTA Centrado -->
1277      <div class="wp-method-btn">
1278        <a href="/join" class="wp-btn-primary">Get 14-Day Free Trial</a>
1279      </div>
1280    </div>
1281
1282    <div class="wp-phone">
1283        <div class="wp-phone-frame" id="wpMariFrame">
1284            <video id="wpMariVideo" controls playsinline muted preload="none" poster="https://ld3pro.com/WP/LP26/Videos/WP_Testimonial_Tara_MV_011425_thmbnl.jpg">
1285                <source id="wpMariSource" data-src="https://ld3pro.com/WP/LP26/WP_Testimonial_Tara_MV_011425.mp4" type="video/mp4">
1286            </video>
1287            <div class="wp-playOverlay">
1288                <button class="wp-playBtn" type="button"><span class="wp-tri"></span> Tap to Play</button>
1289            </div>
1290        </div>
1291        <div class="wp-audioNote">Tip: Tap play, then use the speaker icon for sound.</div>
1292    </div>
1293
1294  </div>
1295</section>
1296
1297<script>
1298(function () {
1299    /* --- Intersection Observer Lazy Load Video Logic --- */
1300    const frame = document.getElementById("wpMariFrame");
1301    const video = document.getElementById("wpMariVideo");
1302    const source = document.getElementById("wpMariSource");
1303    const btn = frame ? frame.querySelector(".wp-playBtn") : null;
1304    
1305    if (frame && video && btn && source) {
1306        // Initial state: show the play button overlay
1307        frame.classList.add("is-paused");
1308
1309        btn.addEventListener("click", () => { 
1310            video.muted = false; 
1311            video.play(); 
1312        });
1313        
1314        // Function to inject the video URL and attempt autoplay
1315        const loadVideo = () => {
1316            if (!source.src) {
1317                source.src = source.getAttribute("data-src");
1318                video.load(); 
1319                video.muted = true;
1320                video.play()
1321                    .then(() => frame.classList.remove("is-paused"))
1322                    .catch(() => frame.classList.add("is-paused"));
1323            }
1324        };
1325
1326        // Standard Intersection Observer setup
1327        if ('IntersectionObserver' in window) {
1328            // "rootMargin" allows it to trigger just slightly before it enters the viewport (200px)
1329            const videoObserver = new IntersectionObserver((entries, observer) => {
1330                entries.forEach(entry => {
1331                    if (entry.isIntersecting) {
1332                        loadVideo();
1333                        observer.disconnect(); // Only load it once
1334                    }
1335                });
1336            }, { rootMargin: '0px 0px 200px 0px' });
1337
1338            videoObserver.observe(frame);
1339        } else {
1340            // Fallback for very old browsers: just load immediately
1341            loadVideo();
1342        }
1343    }
1344})();
1345</script>
1345</section>
1346</div><div id="el-4e16798ad207a969" class=" relative" data-editor="section">
1347    <section><!-- What Winsor Pilates gives you -->
1348<style>
1349  .wp-gives-you {
1350    padding: 90px 0;
1351    background-color: var(--wp-bg-white) !important; /* Forces the white background */
1352    overflow: hidden;
1353  }
1354  
1355  /* Modern CSS Grid for Desktop */
1356  .wp-gives-grid {
1357    display: grid;
1358    /* Divide el espacio en dos columnas iguales. El video a la izquierda, el texto a la derecha */
1359    grid-template-columns: 1fr 1fr; 
1360    gap: 60px;
1361    align-items: center; /* Centra verticalmente el texto con el video */
1362    max-width: 1100px; 
1363    margin: 0 auto;
1364    padding: 0 20px;
1365    box-sizing: border-box;
1366  }
1367
1368  /* --- Video Column --- */
1369  .wp-video-wrapper { 
1370    position: relative; 
1371    width: 100%; 
1372    margin: 0 auto; 
1373  }
1374  
1375  .wp-video-frame {
1376      position: relative; 
1377      width: 100%; 
1378      aspect-ratio: 16 / 9; /* Proporción horizontal clásica */
1379      border-radius: 24px; /* Un borde un poco más suave para formato horizontal */
1380      overflow: hidden; 
1381      background: #0b0b0b;
1382      box-shadow: 0 15px 35px rgba(0,0,0,0.15); 
1383      border: 1px solid rgba(0,0,0,0.08);
1384  }
1385  
1386  .wp-video-frame video { width: 100%; height: 100%; object-fit: cover; display: block; }
1387  
1388  .wp-playOverlay {
1389      position: absolute; inset: 0; display: none; align-items: center; justify-content: center;
1390      background: linear-gradient(180deg, rgba(0,0,0,0.1), rgba(0,0,0,0.5)); z-index: 3;
1391  }
1392  
1393  .wp-video-frame.is-paused .wp-playOverlay { display: flex; }
1394  
1395  .wp-playBtn {
1396      display: inline-flex; align-items: center; gap: 8px; padding: 12px 18px;
1397      border-radius: 999px; background: var(--wp-blue); color: #fff; font-weight: 900; font-size: 15px; border: none; cursor: pointer;
1398      box-shadow: 0 4px 15px rgba(0,0,0,0.2);
1399      transition: transform 0.2s ease;
1400  }
1401
1402  .wp-playBtn:hover {
1403      transform: scale(1.05);
1404  }
1405  
1406  .wp-tri { width: 0; height: 0; border-left: 12px solid #fff; border-top: 7px solid transparent; border-bottom: 7px solid transparent; }
1407  
1408  .wp-audioNote { margin-top: 16px; text-align: center; font-size: 13px; color: var(--wp-text-light); }
1409
1410  /* --- Text Column --- */
1411  .wp-gives-text {
1412    width: 100%;
1413  }
1414
1415  .wp-gives-text h2 {
1416    margin-bottom: 35px;
1417    text-align: left;
1418    color: var(--wp-black); 
1419  }
1420
1421  .wp-gives-list {
1422    list-style: none;
1423    padding: 0;
1424    margin: 0 0 30px 0;
1425  }
1426
1427  .wp-gives-list li {
1428    font-size: 18px;
1429    color: var(--wp-text);
1430    margin-bottom: 20px;
1431    display: flex;
1432    align-items: flex-start;
1433    gap: 12px;
1434    line-height: 1.6;
1435  }
1436
1437  .wp-gives-list li strong {
1438    color: var(--wp-black);
1439    font-weight: 800;
1440  }
1441
1442  .wp-gives-check {
1443    color: var(--wp-blue); 
1444    font-weight: 900;
1445    font-size: 18px;
1446    flex-shrink: 0;
1447  }
1448
1449  .wp-gives-footer {
1450    font-size: 18px;
1451    font-style: italic;
1452    color: var(--wp-black);
1453    margin-top: 10px;
1454  }
1455
1456  /* --- Responsive Design --- */
1457  @media (max-width: 992px) {
1458    .wp-gives-grid {
1459      grid-template-columns: 1fr; /* En pantallas pequeñas, se apila */
1460      gap: 40px;
1461    }
1462
1463    /* INVERSIÓN DE COLUMNAS SOLO EN MÓVIL/TABLET */
1464    .wp-gives-text {
1465      order: 1; /* El texto va primero arriba */
1466    }
1467    
1468    .wp-video-wrapper {
1469      order: 2; /* El video va segundo abajo */
1470    }
1471  }
1472
1473  @media (max-width: 768px) {
1474    .wp-gives-you {
1475      padding: 60px 0;
1476    }
1477    
1478    .wp-gives-text h2 {
1479      text-align: center; /* Centra el título en móviles para mejor lectura */
1480    }
1481  }
1482</style>
1483
1484<section class="wp-gives-you">
1485  <div class="wp-gives-grid">
1486    
1487    <!-- Video Column (Left on Desktop, Bottom on Mobile) -->
1488    <div class="wp-video-wrapper">
1489        <div class="wp-video-frame" id="wpInterviewFrame">
1490            <!-- No incluí poster para que simplemente cargue el primer frame del video 16:9 -->
1491            <video id="wpInterviewVideo" controls playsinline muted preload="none">
1492                <source id="wpInterviewSource" data-src="https://ld3pro.com/WP/LP26/Videos/WP_LandingPage_MariInterview_MV_071426.mp4" type="video/mp4">
1493            </video>
1494            <div class="wp-playOverlay">
1495                <button class="wp-playBtn" type="button"><span class="wp-tri"></span> Tap to Play</button>
1496            </div>
1497        </div>
1498        <div class="wp-audioNote">Tip: Tap play, then use the speaker icon for sound.</div>
1499    </div>
1500
1501    <!-- Text Column (Right on Desktop, Top on Mobile) -->
1502    <div class="wp-gives-text">
1503      <h2 class="wp-section-title">What Winsor Pilates gives you:</h2>
1504      
1505      <ul class="wp-gives-list">
1506        <li>
1507          <span class="wp-gives-check">✓</span> 
1508          <span><strong>Strengthen</strong> your core and build functional muscle</span>
1509        </li>
1510        <li>
1511          <span class="wp-gives-check">✓</span> 
1512          <span><strong>Refine</strong> your posture and mobility</span>
1513        </li>
1514        <li>
1515          <span class="wp-gives-check">✓</span> 
1516          <span><strong>Can improve</strong> your flexibility and breathing</span>
1517        </li>
1518        <li>
1519          <span class="wp-gives-check">✓</span> 
1520          <span><strong>Foster</strong> a mindful connection between body and mind</span>
1521        </li>
1522      </ul>
1523      
1524      <div class="wp-gives-footer">
1525        —all from the comfort of your own home.
1526      </div>
1527    </div>
1528
1529  </div>
1530</section>
1531
1532<script>
1533(function () {
1534    /* --- Intersection Observer Lazy Load Video Logic (Using New Unique IDs) --- */
1535    const frame = document.getElementById("wpInterviewFrame");
1536    const video = document.getElementById("wpInterviewVideo");
1537    const source = document.getElementById("wpInterviewSource");
1538    const btn = frame ? frame.querySelector(".wp-playBtn") : null;
1539    
1540    if (frame && video && btn && source) {
1541        // Initial state: show the play button overlay
1542        frame.classList.add("is-paused");
1543
1544        btn.addEventListener("click", () => { 
1545            video.muted = false; 
1546            video.play(); 
1547        });
1548        
1549        // Function to inject the video URL and attempt autoplay
1550        const loadVideo = () => {
1551            if (!source.src) {
1552                source.src = source.getAttribute("data-src");
1553                video.load(); 
1554                video.muted = true;
1555                video.play()
1556                    .then(() => frame.classList.remove("is-paused"))
1557                    .catch(() => frame.classList.add("is-paused"));
1558            }
1559        };
1560
1561        // Standard Intersection Observer setup
1562        if ('IntersectionObserver' in window) {
1563            // "rootMargin" allows it to trigger just slightly before it enters the viewport (200px)
1564            const videoObserver = new IntersectionObserver((entries, observer) => {
1565                entries.forEach(entry => {
1566                    if (entry.isIntersecting) {
1567                        loadVideo();
1568                        observer.disconnect(); // Only load it once
1569                    }
1570                });
1571            }, { rootMargin: '0px 0px 200px 0px' });
1572
1573            videoObserver.observe(frame);
1574        } else {
1575            // Fallback for very old browsers: just load immediately
1576            loadVideo();
1577        }
1578    }
1579})();
1580</script>
1580</section>
1581</div><div id="el-b5c4bf6f873daf5f" class=" relative" data-editor="section">
1582    <section><!-- What Members Are Saying (Reviews Section) -->
1583<style>
1584  .wp-reviews-section {
1585      padding: 90px 0;
1586      /* FONDO INVERTIDO: Ahora la sección usa el California Blonde */
1587      background-color: var(--wp-linen);
1588      overflow: hidden;
1589      font-family: var(--wp-font);
1590  }
1591
1592  .wp-reviews-container {
1593      width: 100%;
1594      max-width: 1250px;
1595      margin: 0 auto;
1596      position: relative;
1597      padding: 0 60px; 
1598      box-sizing: border-box;
1599  }
1600
1601  .wp-reviews-header {
1602      text-align: center;
1603      margin-bottom: 50px;
1604  }
1605
1606  .wp-reviews-header h2 {
1607      margin-bottom: 12px;
1608  }
1609
1610  .wp-reviews-header p {
1611      font-size: 18px;
1612      color: var(--wp-text);
1613      margin: 0;
1614  }
1615
1616  /* --- Swiping Track Container --- */
1617  .wp-reviews-carousel-wrapper {
1618      overflow: hidden;
1619      width: 100%;
1620      cursor: grab;
1621      touch-action: pan-y;
1622      padding: 10px 0; /* Solo para no cortar la sombra */
1623  }
1624  .wp-reviews-carousel-wrapper:active { cursor: grabbing; }
1625
1626  /* Espaciado perfecto y simétrico */
1627  .wp-reviews-track {
1628      display: flex;
1629      gap: 20px; 
1630      align-items: stretch; /* Fuerza a que todas las tarjetas mantengan la misma altura */
1631      transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
1632      will-change: transform;
1633  }
1634
1635  /* --- Individual Review Card --- */
1636  .wp-review-card {
1637      /* FONDO INVERTIDO: Ahora las tarjetas son blancas */
1638      background: var(--wp-bg-white); 
1639      border-radius: 12px;
1640      padding: 30px 25px;
1641      box-sizing: border-box;
1642      text-align: left;
1643      display: flex;
1644      flex-direction: column;
1645      justify-content: space-between;
1646      min-height: 250px;
1647      height: auto; 
1648      user-select: none;
1649      /* Sombra un poco más pronunciada para que resalte sobre el color */
1650      box-shadow: 0 4px 15px rgba(0,0,0,0.05);
1651      
1652      /* Escritorio: 3 tarjetas exactas restando los espacios (gaps) */
1653      flex: 0 0 calc(33.333% - 13.33px);
1654  }
1655
1656  .wp-stars {
1657      color: var(--wp-blue);
1658      font-size: 20px;
1659      margin-bottom: 15px;
1660      letter-spacing: 2px;
1661  }
1662
1663  .wp-review-text {
1664      font-size: 17px;
1665      font-weight: 700;
1666      line-height: 1.5;
1667      color: var(--wp-black);
1668      margin-bottom: 25px;
1669      flex-grow: 1;
1670  }
1671
1672  .wp-review-meta-info {
1673      font-size: 14px;
1674      color: var(--wp-text-light);
1675      line-height: 1.4;
1676  }
1677
1678  /* --- Navigation Arrows --- */
1679  .wp-nav-arrow {
1680      position: absolute;
1681      top: 50%;
1682      transform: translateY(-50%);
1683      background: var(--wp-bg-white);
1684      border: none; /* Quitamos el borde para un look más limpio sobre color */
1685      color: var(--wp-blue);
1686      width: 44px;
1687      height: 44px;
1688      border-radius: 50%;
1689      display: flex;
1690      align-items: center;
1691      justify-content: center;
1692      cursor: pointer;
1693      z-index: 10;
1694      font-weight: 900;
1695      font-size: 22px;
1696      box-shadow: 0 4px 12px rgba(0,0,0,0.08);
1697      transition: all 0.25s ease;
1698  }
1699
1700  .wp-nav-arrow:hover {
1701      background: var(--wp-blue);
1702      color: var(--wp-bg-white);
1703      transform: translateY(-50%) scale(1.05);
1704  }
1705
1706  .wp-prev { left: 0; }
1707  .wp-next { right: 0; }
1708
1709  /* --- Organic Pill Navigation --- */
1710  .wp-review-pills {
1711      display: flex;
1712      justify-content: center;
1713      align-items: center;
1714      flex-wrap: nowrap; /* Prohíbe que salten a una segunda línea por falta de espacio */
1715      gap: 8px;
1716      margin-top: 40px;
1717      height: 24px; /* Bloquea la altura rígidamente */
1718  }
1719
1720  .wp-pill {
1721      width: 12px;
1722      height: 12px;
1723      /* PUNTOS INVERTIDOS: Blanco semitransparente para que queden sutiles sobre el fondo rubio */
1724      background: rgba(255, 255, 255, 0.6);
1725      border-radius: 45% 55% 50% 50% / 55% 45% 55% 45%;
1726      cursor: pointer;
1727      transition: all 0.4s ease; 
1728      flex-shrink: 0; 
1729  }
1730
1731  .wp-pill.active {
1732      width: 40px;
1733      height: 24px;
1734      /* Punto activo mantiene el azul para contraste visual */
1735      background: var(--wp-blue);
1736      border-radius: 20px;
1737  }
1738
1739  /* --- Responsive Layouts --- */
1740  @media (max-width: 900px) and (min-width: 601px) {
1741      .wp-review-card {
1742          flex: 0 0 calc(50% - 10px);
1743      }
1744      .wp-reviews-container { padding: 0 50px; }
1745  }
1746
1747  @media (max-width: 600px) {
1748      .wp-reviews-section { padding: 60px 0; }
1749      .wp-reviews-container { padding: 0; }
1750      .wp-nav-arrow { display: none; }
1751      
1752      .wp-reviews-track { gap: 15px; } /* Ajuste de separación para móvil */
1753      
1754      .wp-review-card {
1755          flex: 0 0 82%; /* Tarjeta central al 82% de ancho */
1756          min-height: 280px;
1757      }
1758      
1759      /* Ajuste adicional en móvil para asegurar que los puntos quepan en pantallas muy pequeñas */
1760      .wp-review-pills { gap: 6px; }
1761  }
1762</style>
1763
1764<section class="wp-reviews-section">
1765  <div class="wp-reviews-header">
1766      <h2 class="wp-section-title">What Members Are Saying</h2>
1767      <p>Real stories from people who’ve made Winsor Pilates part of their lives.</p>
1768  </div>
1769
1770  <div class="wp-reviews-container">
1771      <button class="wp-nav-arrow wp-prev" id="wpPrev">‹</button>
1772      <button class="wp-nav-arrow wp-next" id="wpNext">›</button>
1773
1774      <div class="wp-reviews-carousel-wrapper" id="wpTouchArea">
1775          <div class="wp-reviews-track" id="wpReviewsTrack">
1776              <!-- Cards will be injected here via JavaScript -->
1777          </div>
1778      </div>
1779
1780      <div class="wp-review-pills" id="wpReviewPills"></div>
1781  </div>
1782</section>
1783
1784<script>
1785(function () {
1786    const reviews = [
1787        { text: "I simply LOVE it. If you do these pilates you will need nothing more...", name: "JAguar", meta: "Amazon Review" },
1788        { text: "Winsor Pilates was recommended to me by my trainer.", name: "Kara", meta: "Winsor Pilates Member" },
1789        { text: "It's kind of amazing how fast you start improving.", name: "Brittany", meta: "Winsor Pilates Member" },
1790        { text: "I love seeing and feeling the results in just a few days! Would definitely recommend!", name: "Alyssa", meta: "Winsor Pilates Member" },
1791        { text: "Mari's pilates routines are my evening workouts and 20 minutes really is enough to feel better, improve posture, strength and flexibility.", name: "Pandora", meta: "Winsor Pilates Member" },
1792        { text: "Winsor introduced me to Pilates and I will never give it up.", name: "Amazon Customer", meta: "Amazon Review" },
1793        { text: "The workouts are easy to do with no impact and give you quick results. I have big thighs and noticed the biggest difference there.", name: "Nicole", meta: "Winsor Pilates Member" },
1794        { text: "I am so excited to have found Mari Winsor Pilates workouts in an app!!! Omgeeeee!!!", name: "Felicia", meta: "Five-Star Amazon Review" },
1795        { text: "So grateful to have you back! Mari Winsor was my constant companion at 40 and now at 60 — I’m back and loving the benefits!", name: "Stacia", meta: "Winsor Pilates Member" },
1796        { text: "I did these on DVD about 20 years ago and loved them. Very excited to do Winsor Pilates again on demand.", name: "Jasmine", meta: "Returning Member" },
1797        { text: "I lost an inch on each thigh, hips, and butt in just two weeks. It’s real and it’s amazing.", name: "Verified User", meta: "Five-Star Amazon Review" }
1798    ];
1799
1800    const track = document.getElementById("wpReviewsTrack");
1801    const pillsWrap = document.getElementById("wpReviewPills");
1802    const wrapper = document.getElementById("wpTouchArea");
1803    let currentIndex = 0;
1804    let autoTimer;
1805
1806    // 1. Generate the HTML Cards
1807    reviews.forEach(r => {
1808        const card = document.createElement("div");
1809        card.className = "wp-review-card";
1810        card.innerHTML = `
1811            <div class="wp-stars">★★★★★</div>
1812            <div class="wp-review-text">"${r.text}"</div>
1813            <div class="wp-review-meta-info">—${r.name}, ${r.meta}</div>
1814        `;
1815        track.appendChild(card);
1816    });
1817
1818    // Calculate maximum slides based on screen width
1819    function getMaxIndex() {
1820        if (window.innerWidth <= 600) return reviews.length - 1; // Móvil: 1 tarjeta
1821        if (window.innerWidth <= 900) return reviews.length - 2; // Tablet: 2 tarjetas
1822        return reviews.length - 3; // Escritorio: 3 tarjetas
1823    }
1824
1825    // 2. Generate Pagination Pills
1826    function renderPills() {
1827        pillsWrap.innerHTML = "";
1828        const maxIdx = getMaxIndex();
1829        for (let i = 0; i <= maxIdx; i++) {
1830            const pill = document.createElement("div");
1831            pill.className = "wp-pill" + (i === currentIndex ? " active" : "");
1832            pill.onclick = () => { 
1833                resetTimer(); 
1834                showReview(i); 
1835            };
1836            pillsWrap.appendChild(pill);
1837        }
1838    }
1839
1840    // 3. Center Calculation Logic
1841    function showReview(newIdx) {
1842        const maxIdx = getMaxIndex();
1843        
1844        if (newIdx > maxIdx) newIdx = 0;
1845        if (newIdx < 0) newIdx = maxIdx;
1846        
1847        currentIndex = newIdx;
1848
1849        const card = track.querySelector(".wp-review-card");
1850        if(card) {
1851            const trackStyle = window.getComputedStyle(track);
1852            const gap = parseFloat(trackStyle.gap) || 0;
1853            const stepWidth = card.offsetWidth + gap;
1854            
1855            let translation = 0;
1856
1857            if (window.innerWidth <= 600) {
1858                const centerOffset = (wrapper.offsetWidth - card.offsetWidth) / 2;
1859                translation = centerOffset - (currentIndex * stepWidth);
1860            } else {
1861                translation = -(currentIndex * stepWidth);
1862            }
1863            
1864            track.style.transform = `translateX(${translation}px)`;
1865        }
1866
1867        document.querySelectorAll(".wp-pill").forEach((p, idx) => {
1868            p.classList.toggle("active", idx === currentIndex);
1869        });
1870    }
1871
1872    // 4. Auto-Play Timer
1873    function resetTimer() {
1874        clearInterval(autoTimer);
1875        autoTimer = setInterval(() => showReview(currentIndex + 1), 6000);
1876    }
1877
1878    // 5. Touch / Swipe Logic
1879    let startX = 0;
1880    const startAction = (e) => { 
1881        startX = e.type.includes('touch') ? e.touches[0].clientX : e.clientX; 
1882    };
1883
1884    const endAction = (e) => {
1885        let endX = e.type.includes('touch') ? e.changedTouches[0].clientX : e.clientX;
1886        let diffX = startX - endX;
1887
1888        if (Math.abs(diffX) > 50) {
1889            resetTimer();
1890            if (diffX > 0) {
1891                showReview(currentIndex + 1);
1892            } else {
1893                showReview(currentIndex - 1);
1894            }
1895        }
1896    };
1897
1898    wrapper.addEventListener('touchstart', startAction, {passive: true});
1899    wrapper.addEventListener('touchend', endAction, {passive: true});
1900    wrapper.addEventListener('mousedown', startAction);
1901    wrapper.addEventListener('mouseup', endAction);
1902
1903    // 6. Arrow Clicks
1904    document.getElementById("wpNext").onclick = () => { resetTimer(); showReview(currentIndex + 1); };
1905    document.getElementById("wpPrev").onclick = () => { resetTimer(); showReview(currentIndex - 1); };
1906
1907    // 7. Handle window resizing
1908    window.addEventListener('resize', () => {
1909        const maxIdx = getMaxIndex();
1910        if (currentIndex > maxIdx) currentIndex = maxIdx;
1911        renderPills();
1912        showReview(currentIndex);
1913    });
1914
1915    // Inicialización
1916    renderPills();
1917    showReview(0);
1918    resetTimer();
1919
1920})();
1921</script>
1921</section>
1922</div><div id="el-c9f5ae13983d7e75" class=" relative" data-editor="section">
1923    <section><!-- Real Transformations (B&As) -->
1924<style>
1925  .wp-before-after {
1926    padding: 0 20px 40px; /* Top padding changed from 90px to 0 */
1927    background: #f8f9fb;
1928    font-family: "Lato", sans-serif;
1929    overflow: hidden;
1930  }
1931
1932  .wp-before-after-inner {
1933    max-width: 1400px;
1934    margin: 0 auto;
1935  }
1936
1937  .wp-before-after-header {
1938    text-align: center;
1939    margin-bottom: 50px;
1940  }
1941
1942  /* Scoped Title Styles to prevent conflicts */
1943  .wp-before-after .section-title {
1944    font-size: clamp(34px, 4vw, 46px);
1945    font-weight: 800;
1946    color: #0b0b0b;
1947    margin-top: 0;
1948    margin-bottom: 24px;
1949    line-height: 1.2;
1950  }
1951
1952  /* Added explicit styling for the subtitle */
1953  .wp-before-after-header p {
1954    font-size: 18px;
1955    color: #555;
1956    margin: 0; 
1957  }
1958
1959  /* Carousel Setup */
1960  .wp-carousel {
1961    display: flex;
1962    overflow: hidden;
1963    mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
1964    -webkit-mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
1965  }
1966
1967  .wp-carousel-track {
1968    display: flex;
1969    gap: 20px; /* Space between boxes */
1970    will-change: transform;
1971  }
1972
1973  .slide {
1974    flex: 0 0 350px; /* Only define the width here */
1975    position: relative;
1976    /* Height is now auto - it will follow the image ratio */
1977    height: auto; 
1978  }
1979
1980  .slide img {
1981    width: 100%;
1982    height: auto;
1983    /* Reserves space before image loads so lazy-loading doesn't break the JS */
1984    aspect-ratio: 5 / 4; 
1985    object-fit: contain; /* Ensures the image fits cleanly in the reserved space */
1986    display: block; 
1987  }
1988
1989  .wp-before-after-note {
1990    text-align: center;
1991    font-size: 14px;
1992    color: #777;
1993    margin-top: 40px;
1994  }
1995
1996  @media (max-width: 768px) {
1997    .slide {
1998      flex: 0 0 280px; /* Slightly smaller on mobile */
1999    }
2000  }
2001</style>
2002
2003<section class="wp-before-after">
2004  <div class="wp-before-after-inner">
2005    <div class="wp-before-after-header">
2006      <h2 class="section-title">Real Transformations</h2>
2007      <p>See how Winsor Pilates transforms bodies.</p>
2008    </div>
2009
2010    <div class="wp-carousel" id="wpCarousel">
2011      <div class="wp-carousel-track" id="wpCarouselTrack">
2012        <div class="slide">
2013          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Anna.png" loading="lazy">
2014        </div>
2015        <div class="slide">
2016          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Cheryl.png" loading="lazy">
2017        </div>
2018        <div class="slide">
2019          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Sherry.png" loading="lazy">
2020        </div>
2021        <div class="slide">
2022          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Colette.png" loading="lazy">
2023        </div>
2024        <div class="slide">
2025          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Debbie.png" loading="lazy">
2026        </div>
2027        <div class="slide">
2028          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Lani.png" loading="lazy">
2029        </div>
2030        <div class="slide">
2031          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Sherry2.png" loading="lazy">
2032        </div>
2033        <div class="slide">
2034          <img src="https://ld3pro.com/WP/LP26/Images/ba26/WP_BA26_Marty.png" loading="lazy">
2035        </div>
2036      </div>
2037    </div>
2038    
2039    <div class="wp-before-after-note">
2040      Results may vary. Individual results depend on consistency and lifestyle.
2041    </div>
2042  </div>
2043</section>
2044
2045<script>
2046  (function () {
2047    const track = document.getElementById("wpCarouselTrack");
2048    
2049    // Duplicate for seamless loop
2050    const slides = track.innerHTML;
2051    track.innerHTML = slides + slides; 
2052
2053    let position = 0;
2054    const maxSpeed = 1.4; // Normal running speed
2055    let targetSpeed = maxSpeed;
2056    let currentSpeed = maxSpeed;
2057
2058    function animate() {
2059      // Smoothly ease currentSpeed towards targetSpeed
2060      // Tweak the 0.05 value to make the ease faster or slower
2061      currentSpeed += (targetSpeed - currentSpeed) * 0.05;
2062      
2063      // Stop moving completely if the speed gets extremely close to 0
2064      if (Math.abs(currentSpeed) > 0.01) {
2065        position -= currentSpeed;
2066      }
2067      
2068      // Check scrollWidth of the track for seamless loop
2069      if (Math.abs(position) >= track.scrollWidth / 2) {
2070        position = 0;
2071      }
2072      
2073      track.style.transform = `translateX(${position}px)`;
2074      requestAnimationFrame(animate);
2075    }
2076
2077    // Adjust target speeds on hover
2078    track.addEventListener("mouseenter", () => targetSpeed = 0);
2079    track.addEventListener("mouseleave", () => targetSpeed = maxSpeed);
2080
2081    // Ensure images are loaded so scrollWidth is calculated correctly
2082    window.onload = animate;
2083  })();
2084</script>
2084</section>
2085</div><div id="el-4c837efb88664a16" class=" relative" data-editor="section">
2086    <section><!-- Everything You Need, All in One Place -->
2087<style>
2088  .wp-app-promo {
2089    background: #ffffff;
2090    padding: 40px 20px 10px; /* Reduced top padding as requested */
2091    font-family: "Lato", sans-serif;
2092  }
2093
2094  .wp-app-promo-inner {
2095    max-width: 1200px;
2096    margin: 0 auto;
2097    display: grid;
2098    grid-template-columns: 1fr 1fr;
2099    gap: 30px;
2100    align-items: flex-start; 
2101  }
2102
2103  /* Applied the large title styling to both headers */
2104  .wp-app-promo-content h2,
2105  .wp-app-promo-media h2 {
2106    font-size: clamp(30px, 4vw, 44px);
2107    font-weight: 800;
2108    line-height: 1.15;
2109    color: #0b0b0b;
2110    margin-top: 0; 
2111  }
2112
2113  .wp-app-promo-content h2 {
2114    margin-bottom: 18px;
2115  }
2116
2117  .wp-app-promo-media h2 {
2118    text-align: center; 
2119    margin-bottom: 5px; 
2120  }
2121
2122  .wp-app-promo-content p {
2123    font-size: 18px;
2124    line-height: 1.6;
2125    color: #444;
2126    margin-bottom: 26px;
2127    max-width: 520px;
2128  }
2129
2130  .wp-app-promo-price {
2131    font-size: 24px;
2132    color: #0b0b0b; 
2133  }
2134
2135  .wp-app-promo-list {
2136    list-style: none;
2137    padding: 0;
2138    margin: 0 0 32px;
2139  }
2140
2141  .wp-app-promo-list li {
2142    font-size: 16px;
2143    margin-bottom: 12px;
2144    color: #222;
2145    position: relative;
2146    padding-left: 26px;
2147  }
2148
2149  .wp-app-promo-list li::before {
2150    content: "✓";
2151    position: absolute;
2152    left: 0;
2153    color: #006ebf;
2154    font-weight: 700;
2155  }
2156
2157  .wp-app-promo-cta {
2158    display: inline-block;
2159    background: #006ebf;
2160    color: #ffffff;
2161    padding: 14px 28px;
2162    border-radius: 10px;
2163    font-size: 17px;
2164    font-weight: 700;
2165    text-decoration: none;
2166  }
2167
2168  .wp-app-promo-cta:hover {
2169    filter: brightness(0.95);
2170  }
2171
2172  /* Styles for the second row of the image title */
2173  .wp-app-promo-image-title {
2174    font-size: 22px;
2175    font-weight: 800;
2176    color: #0b0b0b;
2177    text-align: center; 
2178    margin: 0 0 20px 0;
2179    line-height: 1.3;
2180  }
2181
2182  /* --- FIXED: Safe Cropping Container --- */
2183  .wp-app-promo-image {
2184    width: 100%; 
2185    margin: 0 auto;
2186    overflow: hidden; /* Hides the zoomed edges */
2187    border-radius: 16px; /* Gives the blue background a clean, premium edge */
2188  }
2189
2190  /* --- FIXED: Clean Zoom Math --- */
2191  .wp-app-promo-image img {
2192    width: 140%; /* Zooms the image in to make devices larger */
2193    max-width: none; /* Overrides global image limits */
2194    margin-left: -20%; /* Perfectly centers the 140% zoomed image */
2195    height: auto;
2196    display: block;
2197  }
2198
2199  @media (max-width: 900px) {
2200    .wp-app-promo-inner {
2201      grid-template-columns: 1fr;
2202      text-align: center;
2203      gap: 40px;
2204    }
2205
2206    .wp-app-promo-content p {
2207      margin-left: auto;
2208      margin-right: auto;
2209    }
2210
2211    .wp-app-promo-list {
2212      text-align: left;
2213      max-width: 420px;
2214      margin: 0 auto 32px;
2215    }
2216    
2217    .wp-app-promo-image {
2218      max-width: 500px; /* Keeps it from getting overly huge on mobile screens */
2219    }
2220  }
2221</style>
2222
2223<section class="wp-app-promo">
2224  <div class="wp-app-promo-inner">
2225    <div class="wp-app-promo-content">
2226      <h2>Everything You Need, All in One Place</h2>
2227
2228      <p>
2229        <strong>Stream all original and new workouts 24/7.</strong><br>
2230        Get all the tools you need to stay consistent on your own schedule, from any device.<br><br>
2231        <strong>Your Membership Includes:</strong>
2232      </p>
2233
2234      <ul class="wp-app-promo-list">
2235        <li>Instant access to the <u>Original Winsor Pilates Collection</u></li>
2236        <li>Fresh routines added every single month</li>
2237        <li>An interactive workout calendar to track progress</li>
2238        <li>Monthly challenges and digital Pilates Planners</li>
2239        <li>Streaks and badges to stay highly motivated</li>
2240        <li>Exclusive entry to our members-only community</li>
2241        <li>A customized meal plan</li>
2242      </ul>
2243
2244      <!-- 
2245      <a href="/join" class="wp-app-promo-cta">
2246        Start Your 14-Day Free Trial
2247      </a>
2248      -->
2249    </div>
2250
2251    <div class="wp-app-promo-media">
2252      <h2>Download the Free App</h2>
2253      <h3 class="wp-app-promo-image-title">for the full Winsor Pilates Experience</h3>
2254      <div class="wp-app-promo-image">
2255        <img
2256          src="https://ld3pro.com/WP/LP26/Images/WP_Landingpage_Mari-Phone-Ipad_opcion+APPs_Blue_7.png"
2257          alt="Winsor Pilates available on all devices"
2258        />
2259      </div>
2260    </div>
2261  </div>
2262</section></section>
2263</div><div id="el-7a09d2cba700c7e9" class=" relative" data-editor="section">
2264    <section><!-- PLANS -->
2265<style>
2266  .wp-pricing {
2267    padding: 100px 20px 60px;
2268    background: #f8f9fb;
2269    font-family: "Lato", sans-serif;
2270  }
2271
2272  .wp-pricing-inner {
2273    max-width: 1100px;
2274    margin: 0 auto;
2275    text-align: center;
2276  }
2277
2278  .wp-pricing h2 {
2279    font-size: clamp(34px, 4vw, 46px);
2280    font-weight: 800;
2281    color: #0b0b0b;
2282    margin-bottom: 12px;
2283  }
2284
2285  .wp-pricing .subhead {
2286    font-size: 18px;
2287    color: #555;
2288    margin-bottom: 40px; 
2289  }
2290
2291  /* Pricing Grid and Cards */
2292  .wp-price-grid {
2293    display: grid;
2294    grid-template-columns: repeat(2, 1fr);
2295    gap: 28px;
2296    padding-top: 20px; 
2297  }
2298
2299  .wp-price-card-wrapper {
2300    display: flex;
2301    flex-direction: column;
2302    height: 100%;
2303    width: 100%;
2304  }
2305
2306  .wp-price-card {
2307    background: #ffffff;
2308    border-radius: 22px;
2309    padding: 48px 40px;
2310    border: 1px solid #e6e8eb;
2311    text-align: left;
2312    position: relative;
2313    display: flex;
2314    flex-direction: column;
2315    transition: transform 0.3s ease-out, box-shadow 0.3s ease-out, border-color 0.3s ease-out;
2316    cursor: pointer;
2317    flex: 1; 
2318  }
2319
2320  .wp-price-card:hover {
2321    transform: translateY(-8px) scale(1.03);
2322    border-color: rgba(0, 110, 191, 0.4);
2323    box-shadow: 
2324      0 12px 30px rgba(0, 0, 0, 0.05),
2325      0 0 20px rgba(0, 110, 191, 0.15),
2326      0 0 50px rgba(0, 110, 191, 0.1);
2327  }
2328
2329  /* Featured Annual Card Styles */
2330  .wp-price-card.featured {
2331    border: 2px solid #006ebf;
2332    background: linear-gradient(180deg, #f4f9ff 0%, #ffffff 60%);
2333  }
2334  
2335  .wp-price-card.featured:hover {
2336    box-shadow: 
2337      0 15px 40px rgba(0, 0, 0, 0.08),
2338      0 0 25px rgba(0, 110, 191, 0.25),
2339      0 0 60px rgba(0, 110, 191, 0.15);
2340  }
2341
2342  /* Animated Pill Gradient */
2343  @keyframes fluidPill {
2344    0% { background-position: 0% 50%; }
2345    50% { background-position: 100% 50%; }
2346    100% { background-position: 0% 50%; }
2347  }
2348
2349  .wp-badge {
2350    position: absolute;
2351    top: -20px;
2352    left: 50%;
2353    transform: translateX(-50%);
2354    background: linear-gradient(90deg, #006ebf, #00a8e8, #003a70, #006ebf);
2355    background-size: 300% 100%;
2356    animation: fluidPill 4s ease infinite;
2357    color: #ffffff;
2358    font-size: 16px;
2359    font-weight: 700;
2360    padding: 8px 20px;
2361    border-radius: 999px;
2362    white-space: nowrap;
2363    box-shadow: 0 6px 16px rgba(0, 110, 191, 0.3);
2364    letter-spacing: 0.5px;
2365    text-transform: uppercase;
2366  }
2367
2368  .wp-plan {
2369    font-size: 26px;
2370    font-weight: 800;
2371    margin-bottom: 26px; /* Aumentado para compensar la remoción de plan-note */
2372    color: #0b0b0b;
2373  }
2374
2375  .wp-price {
2376    font-size: 52px;
2377    font-weight: 900;
2378    color: #0b0b0b;
2379  }
2380  
2381  .wp-price .original-price {
2382    font-size: 28px;
2383    color: #999;
2384    text-decoration: line-through;
2385    margin-right: 8px;
2386    font-weight: 700;
2387  }
2388
2389  .wp-price span {
2390    font-size: 16px;
2391    color: #666;
2392    font-weight: 500;
2393  }
2394
2395  /* Diseño de "Cupón" limpio para el código promocional */
2396  .wp-promo-tag {
2397    display: inline-block;
2398    align-self: flex-start;
2399    background: #eaf3fa;
2400    color: #005aa0;
2401    border-radius: 6px;
2402    padding: 6px 12px;
2403    font-size: 14px;
2404    font-weight: 600;
2405    margin-top: 12px;
2406    margin-bottom: 8px;
2407  }
2408
2409  .wp-promo-tag strong {
2410    font-weight: 900;
2411    letter-spacing: 0.5px;
2412    color: #00427a;
2413  }
2414
2415  .wp-price-sub {
2416    font-size: 15px;
2417    color: #444;
2418    line-height: 1.5;
2419    margin-bottom: 28px;
2420    flex-grow: 1; /* Esto mantiene los botones alineados al fondo */
2421  }
2422  
2423  .wp-price-sub strong {
2424    color: #0b0b0b;
2425    font-weight: 800;
2426  }
2427
2428  /* Estilo para "Limited Time Offer!" */
2429  .wp-limited-time {
2430    display: block;
2431    color: #d33a2c;
2432    font-weight: 800;
2433    font-size: 14px;
2434    margin-top: 8px;
2435    text-transform: uppercase;
2436    letter-spacing: 0.5px;
2437  }
2438
2439  .wp-cta {
2440    display: block;
2441    text-align: center;
2442    padding: 14px 18px;
2443    border-radius: 12px;
2444    background: #006ebf;
2445    color: #ffffff;
2446    font-weight: 700;
2447    text-decoration: none;
2448    font-size: 16px;
2449    transition: background-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
2450  }
2451
2452  .wp-cta.secondary {
2453    background: #0b0b0b;
2454  }
2455
2456  .wp-cta:hover {
2457    transform: translateY(-1px);
2458    box-shadow: 0 10px 24px rgba(0,0,0,0.12);
2459  }
2460
2461  .wp-trial {
2462    margin-top: 18px;
2463    font-size: 13px;
2464    color: #777;
2465    text-align: center;
2466    line-height: 1.4;
2467  }
2468
2469  /* Mobile Adjustments */
2470  @media (max-width: 900px) {
2471    .wp-price-grid {
2472      grid-template-columns: 1fr;
2473    }
2474  }
2475</style>
2476
2477<section class="wp-pricing">
2478  <div class="wp-pricing-inner">
2479
2480    <h2>Choose Your Membership</h2>
2481    <p class="subhead">
2482      Start with a 14-day free trial. Cancel anytime.
2483    </p>
2484
2485    <div class="wp-price-grid">
2486
2487      <!-- Contenedor 1: Annual Plan -->
2488      <div class="wp-price-card-wrapper">
2489        <div class="wp-price-card featured">
2490          
2491          <div class="wp-badge">Best Value</div>
2492
2493          <div class="wp-plan">Annual Plan</div>
2494
2495          <div class="wp-price">$99 <span>/year</span></div>
2496          
2497
2498          <div class="wp-price-sub">
2499            Only <strong>$8.25/month</strong> (paid annually) 
2500          </div>
2501
2502          <a href="/checkout/new?o=175725" class="wp-cta">Start 14-Day Free Trial</a>
2503          <div class="wp-trial">14 Days Free, Then Billed Annually. Cancel Anytime.</div>
2504        </div>
2505      </div>
2506
2507      <!-- Contenedor 2: Monthly Option -->
2508      <div class="wp-price-card-wrapper">
2509        <div class="wp-price-card">
2510          
2511          <div class="wp-plan">Monthly Plan</div>
2512
2513          <div class="wp-price">$15 <span>/month</span></div>
2514          
2515          <!-- Contenedor vacío para mantener la estructura y alinear el botón -->
2516          <div class="wp-price-sub"></div>
2517
2518          <a href="/checkout/new?o=175726" class="wp-cta secondary">Start 14-Day Free Trial</a>
2519          <div class="wp-trial">14 Days Free, Then Billed Monthly. Cancel Anytime.</div>
2520        </div>
2521      </div>
2522
2523    </div>
2524
2525  </div>
2526</section></section>
2527</div><div id="el-e2f20085208fda46" class=" relative" data-editor="section">
2528    <section><!-- Original Then. Relevant Now. Yours for Life. -->
2529<style>
2530  .wp-final-cta {
2531    /* 100px arriba, 0 a los lados, 50px abajo */
2532    padding: 100px 0 50px 0; 
2533    background-color: var(--wp-bg-white);
2534    text-align: center;
2535  }
2536  
2537  .wp-final-cta-content {
2538    max-width: 800px;
2539    margin: 0 auto;
2540    padding: 0 20px;
2541  }
2542
2543  .wp-final-cta h2 {
2544    font-size: clamp(34px, 5vw, 52px); /* Un poco más grande para mayor impacto */
2545    margin-bottom: 20px;
2546  }
2547
2548  .wp-final-cta p {
2549    font-size: 22px;
2550    color: var(--wp-text);
2551    margin-bottom: 40px;
2552  }
2553
2554  @media (max-width: 768px) {
2555    .wp-final-cta {
2556      /* 70px arriba, 0 a los lados, 35px abajo */
2557      padding: 70px 0 35px 0; 
2558    }
2559    
2560    .wp-final-cta p {
2561      font-size: 19px;
2562      margin-bottom: 30px;
2563    }
2564  }
2565</style>
2566
2567<section class="wp-final-cta">
2568  <div class="wp-final-cta-content">
2569    <h2 class="wp-section-title">Original Then. Relevant Now. Yours for Life.</h2>
2570    <p>Your 14-day free trial is waiting.</p>
2571    <a href="/join" class="wp-btn-primary">Start My 14-Day Free Trial</a>
2572  </div>
2573</section></section>
2574</div><div id="el-8e9e1b336151ae9e" class=" relative" data-editor="section">
2575    <section><!-- Mari Winsor Quote (Full Image) -->
2576<style>
2577  .wp-quote-section {
2578    padding: 0; 
2579    /* Cambia este HEX por el color exacto de los bordes de tu imagen JPG para que se fusione perfectamente */
2580    background-color: #F3EADF; 
2581  }
2582
2583  .wp-quote-container {
2584    line-height: 0; /* Elimina cualquier espacio en blanco debajo de la imagen */
2585  }
2586
2587  .wp-quote-banner {
2588    width: 100%;
2589    height: auto;
2590    display: block;
2591    margin: 0 auto;
2592  }
2593
2594  /* Ocultamos la imagen móvil por defecto */
2595  .wp-quote-mobile {
2596    display: none;
2597  }
2598
2599  /* Mostramos la imagen de escritorio por defecto */
2600  .wp-quote-desktop {
2601    display: block;
2602  }
2603
2604  /* Responsive para Tablets y Móviles */
2605  @media (max-width: 900px) {
2606    .wp-quote-desktop {
2607      display: none; /* Oculta escritorio */
2608    }
2609    
2610    .wp-quote-mobile {
2611      display: block; /* Muestra móvil */
2612    }
2613
2614    /* Fuerza al contenedor a quitar los márgenes laterales en móvil */
2615    .wp-quote-section .wp-container {
2616      padding: 0;
2617      max-width: 100%;
2618    }
2619  }
2620</style>
2621
2622<section class="wp-quote-section">
2623  <!-- Utilizamos la clase global wp-container para alinear con el resto de la web en escritorio -->
2624  <div class="wp-container wp-quote-container">
2625    
2626    <!-- Imagen para Escritorio -->
2627    <img 
2628      src="https://ld3pro.com/WP/LP26/Images/MariWinsor_FooterQuote__desktop-6.jpg" 
2629      alt="Mari Winsor Quote" 
2630      class="wp-quote-banner wp-quote-desktop"
2631    >
2632
2633    <!-- Imagen para Móvil -->
2634    <img 
2635      src="https://ld3pro.com/WP/LP26/Images/MariWinsor_FooterQuote__mobile-6.jpg" 
2636      alt="Mari Winsor Quote" 
2637      class="wp-quote-banner wp-quote-mobile"
2638    >
2639    
2640  </div>
2641</section></section>
2642</div>
2643      <footer class="px-[3%] py-8 lg:py-6 w-full bg-ds-main border-t border-ds-default bg-ds-default text-ds-muted text-ds-base-regular">
2644  <div class="container flex flex-col space-y-4 justify-center">
2645    <div class="flex flex-wrap justify-center items-center space-y-2 space-x-2 text-center md:text-left rtl:md:text-right">
2646        <p class="mt-2 flex justify-center space-x-2 w-full md:w-fit text-center text-sm font-normal leading-5 text-ds-muted">
2647          <span id="store-title">© 2026 Winsor Pilates</span>
2648          <span class="ms-2 text-sm font-normal leading-5 text-ds-muted hidden md:inline-block">∙</span>
2649        </p>
2650          <p class="text-sm font-normal leading-5 text-ds-muted">
2651            <a class="hover:underline underline-offset-2" target="_self" href="/terms">Terms</a>
2652          </p>
2653          <p class="text-sm font-normal leading-5 text-ds-muted last-of-type:hidden">∙</p>
2654          <p class="text-sm font-normal leading-5 text-ds-muted">
2655            <a class="hover:underline underline-offset-2" target="_self" href="/privacy">Privacy</a>
2656          </p>
2657          <p class="text-sm font-normal leading-5 text-ds-muted last-of-type:hidden">∙</p>
2658          <p class="text-sm font-normal leading-5 text-ds-muted">
2659            <a class="hover:underline underline-offset-2" target="_self" href="/gift_cards/new">Buy gift card</a>
2660          </p>
2661          <p class="text-sm font-normal leading-5 text-ds-muted last-of-type:hidden">∙</p>
2662          <p class="text-sm font-normal leading-5 text-ds-muted">
2663            <a class="hover:underline underline-offset-2" target="_self" href="/gift_card_redemptions/new">Claim gift card</a>
2664          </p>
2665          <p class="text-sm font-normal leading-5 text-ds-muted last-of-type:hidden">∙</p>
2666          <p class="text-sm font-normal leading-5 text-ds-muted">
2667            <a class="hover:underline underline-offset-2" target="_blank" href="mailto:[email protected]">Help</a>
2668          </p>
2669          <p class="text-sm font-normal leading-5 text-ds-muted last-of-type:hidden">∙</p>
2670          <div class="mt-4 md:!ms-4 w-full md:w-fit text-center text-primary hover:underline underline-offset-2 leading-5">
2671            <a class="text-sm text-primary font-medium" data-turbo="true" data-turbo-frame="website_modal" href="/about/apps">Get the app -&gt;</a>
2672          </div>
2673      </div>
2674
2675        <div class="flex justify-center space-x-4 rtl:space-x-reverse">
2676            <ds-button only-icon href="https://www.instagram.com/winsorpilates/" target="_blank">
2677              <ds-icon name='instagram' size="16px"></ds-icon>
2678            </ds-button>
2679            <ds-button only-icon href="https://www.facebook.com/winsorpilatesstreaming" target="_blank">
2680              <ds-icon name='facebook' size="16px"></ds-icon>
2681            </ds-button>
2682            <ds-button only-icon href="https://www.youtube.com/@WinsorPilates" target="_blank">
2683              <ds-icon name='youtube' size="16px"></ds-icon>
2684            </ds-button>
2685        </div>
2686  </div>
2687  <div class="flex mt-0 md:mt-4 items-center justify-center">
2688      <div class="uscreen-block flex justify-center my-4 md:m-0 md:justify-end">
2689    <style>
2690        .powered-by-uscreen {
2691          align-items: center;
2692          display: flex;
2693          font-size: 0.875rem;
2694          font-family: 'Inter', sans-serif;
2695          line-height: 1;
2696          --branding-text-color: #B0B0B0;
2697          --branding-text-hovered-color: #888888;
2698        }
2699        .dark .powered-by-uscreen {
2700          --branding-text-color: #8A8A8A;
2701          --branding-text-hovered-color: #adadad;
2702        }
2703
2704        .powered-by-uscreen {
2705          color: var(--branding-text-color);
2706        }
2707        .powered-by-uscreen svg {
2708          margin-right: 5px;
2709        }
2710
2711        .powered-by-uscreen:hover {
2712          color: var(--branding-text-hovered-color);
2713        }
2714    </style>
2715
2716    <a class="footer-background-color powered-by-uscreen"
2717       href="https://www.uscreen.tv?utm_category=product&utm_medium=branding&utm_source=80649&utm_campaign=web&utm_content=powered_by" target="_blank" class="footer-background-color powered-by-uscreen">
2718      <svg width="14" height="15" viewBox="0 0 334 359" fill="none" xmlns="http://www.w3.org/2000/svg">
2719        <path d="M86.5378 11.985C100.469 1.19534 118.573 -2.58324 135.645 1.77206C188 15.1111 249.46 32.2287 301.556 48.3297V48.36C319.812 54.0052 332.422 70.6376 332.878 89.7281C334.152 142.022 333.879 198.246 332.59 250.191C332.195 266.14 325.138 281.178 313.15 291.695C290.509 311.559 270.219 328.344 246.258 346.842C232.311 357.617 214.177 361.38 197.12 357.009C144.947 343.64 84.3828 326.553 32.3317 310.482C14.0608 304.822 1.43543 288.159 0.980171 269.039C-0.23385 216.699 -0.44683 160.277 0.99482 108.317C1.43502 92.3983 8.53726 77.3904 20.54
271907 66.9195C43.2429 47.1007 63.1224 30.1042 86.5378 11.985ZM127.459 25.525C123.756 24.4779 120.052 27.2705 120.052 31.1402V122.252C120.31 154.438 128.551 181.147 144.181 201.543C160.055 222.257 183.501 236.401 213.76 243.184C239.391 248.92 262.867 245.187 279.969 233.123C297.087 221.058 307.695 200.739 307.695 173.575V81.2027C307.695 76.9386 304.842 73.1754 300.745 72.0221L262.458 61.3687C258.755 60.3065 255.051 63.1143 255.051 66.984V151.525C254.687 160.069 255.006 173.984 250.53 184.698C248.299 190.024 244.915 194.486 239.725 197.096C234.535 199.706 227.418 200.526 217.615 198.326C200.163 194.411 190.649 182.331 185.489 168.658C180.314 154.955 179.525 139.718 179.525 129.672V46.2242C179.525 41.96 176.702 38.1959 172.59 37.0426L127.473 25.525H127.459Z" fill="currentColor"/>
2720      </svg>
2721      <span class="powered-by-uscreen-text">Powered by Uscreen</span>
2722    </a>
2723  </div>
2724
2725  </div>
2726</footer>
2727
2728    <!-- Facebook Pixel Code -->
2729<script>
2730  !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod?
2731  n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n;
2732  n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0;
2733  t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window,
2734  document,'script','https://connect.facebook.net/en_US/fbevents.js');
2735  // Insert Your Facebook Pixel ID below.
2736  fbq('init', '586100141177242');
2737  fbq('track', 'PageView');
2738</script>
2738
2739<!-- Insert Your Facebook Pixel ID below. -->
2740<noscript><img height="1" width="1" style="display:none"
2741src="https://www.facebook.com/tr?id=586100141177242&amp;ev=PageView&amp;noscript=1"
2742/></noscript>
2743<!-- End Facebook Pixel Code -->
2744
2745
2746
2747
2748  </body>
2749</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.