;
(self.AMP=self.AMP||[]).push({m:1,v:"2601162341000",n:"amp-carousel",ev:"0.1",l:!0,f:function(t,i){(()=>{function i(t,i,s){return i in t?Object.defineProperty(t,i,{value:s,enumerable:!0,configurable:!0,writable:!0}):t[i]=s,t}function s(t,i){var s=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);i&&(n=n.filter((function(i){return Object.getOwnPropertyDescriptor(t,i).enumerable}))),s.push.apply(s,n)}return s}function n(t){for(var n=1;n<arguments.length;n++){var e=null!=arguments[n]?arguments[n]:{};n%2?s(Object(e),!0).forEach((function(s){i(t,s,e[s])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(e)):s(Object(e)).forEach((function(i){Object.defineProperty(t,i,Object.getOwnPropertyDescriptor(e,i))}))}return t}var{isArray:e}=Array;function o(t){return"string"==typeof t}var{hasOwnProperty:r,toString:l}=Object.prototype;function h(t){const i=Object.create(null);return t&&Object.assign(i,t),i}function a(t){return"number"==typeof t&&isFinite(t)}function u(t,i,s,n,e,o,r,l,h,a,u){return t}function c(t){return(t.ownerDocument||t).defaultView}function p(t){return CSS.escape(t)}function d(t){return function(t,i){const s=[];for(let i=t.firstElementChild;i;i=i.nextElementSibling)!(function(t){let i;var s;return o(t)?i=t:1==(null==(s=t)?void 0:s.nodeType)&&(i=t.tagName),!!i&&i.toLowerCase().startsWith("i-")}(n=i)||n.nodeType===Node.ELEMENT_NODE&&(n.hasAttribute("placeholder")||n.hasAttribute("fallback")||n.hasAttribute("overflow")))&&s.push(i);var n;return s}(t)}var f={bubbles:!0,cancelable:!0};function m(t,i,s){const n=t.hasAttribute(i),e=void 0!==s?s:!n;return e!==n&&(e?t.setAttribute(i,""):t.removeAttribute(i)),e}function v(t){return t.hasAttribute("i-amphtml-ssr")}var _,b="amp-carousel-button-prev",A="amp-carousel-button-next",P="i-amphtml-carousel-has-controls",g="amp-carousel-slide",x="i-amphtml-slide-item",w="i-amphtml-slides-container",E="i-amphtml-slidescroll-no-snap",y="i-amphtml-slide-item-show",M="i-amphtml-scrollable-carousel-container";function T(){for(let t=0;t<arguments.length;t++)if(!arguments[t])throw new Error("Invalid server render")}function I(t,{className:i,enabled:s,title:n}){const e=C(t)?"presentation":"button",o=t.ownerDocument.createElement("div");return o.setAttribute("tabindex","0"),o.classList.add("amp-carousel-button",i),o.setAttribute("role",e),o.setAttribute("title",n),R(o,s),t.appendChild(o),o}function R(t,i){t.classList.toggle("amp-disabled",!i),t.setAttribute("aria-disabled",String(!i)),t.setAttribute("tabindex",String(i?0:-1))}function S(t){const i=d(t).length,s=C(t)?function(t){if(v(t))return function(t){const i=t.querySelector(`.${p(M)}`),s=Array.from(t.querySelectorAll(`.${p(g)}`));return T(i,s),{container:i,cells:s}}(t);const i=t.ownerDocument,s=d(t),n=i.createElement("div");return n.classList.add(M),n.setAttribute("tabindex","-1"),t.appendChild(n),s.forEach((t=>{t.classList.add(g,"amp-scrollable-carousel-slide"),n.appendChild(t)})),{cells:s,container:n}}(t):function(t){var i;if(v(t))return function(t){const i=t.querySelector(`.${p(w)}`),s=Array.from(t.querySelectorAll(`.${p(x)}`)),n=Array.from(t.querySelectorAll(`.${p(g)}`));return T(i,s,n),{slides:n,slidesContainer:i,slideWrappers:s}}(t);const s=t.ownerDocument,n=d(t);t.classList.add("i-amphtml-slidescroll");const e=s.createElement("div");e.setAttribute("tabindex","-1"),e.classList.add(w,E),e.setAttribute("aria-live","polite"),t.appendChild(e);const o=[];return n.forEach((t=>{t.classList.add(g);const i=s.createElement("div");i.classList.add(x),i.appendChild(t),e.appendChild(i),o.push(i)})),null===(i=o[0])||void 0===i||i.classList.add(y),{slidesContainer:e,slides:n,slideWrappers:o}}(t);return n(n({},function(t,i){if(v(t))return function(t){const i=t.querySelector(`.${p(b)}`),s=t.querySelector(`.${p(A)}`);return T(i,s),{prevButton:i,nextButton:s}}(t);(function(t,i){const s=i.documentElement;return["⚡4email","amp4email"].some((t=>s.hasAttribute(t)))}(0,t.ownerDocument)||t.hasAttribute("controls"))&&t.classList.add(P);const s=t.hasAttribute("loop"),n=i>1?2:s?0:1;return{prevButton:I(t,{className:b,title:V(t,{index:String(s?i:0),total:String(i)}),enabled:t.hasAttribute("loop")}),nextButton:I(t,{className:A,title:k(t,{index:String(n),total:String(i)}),enabled:i>1})}}(t,i)),s)}function k(t,i){const s=t.getAttribute("data-next-button-aria-label")||"Next item in carousel",{index:n,total:e}=i;return O(t,{prefix:s,index:n,total:e})}function V(t,i){const s=t.getAttribute("data-prev-button-aria-label")||"Previous item in carousel",{index:n,total:e}=i;return O(t,{prefix:s,index:n,total:e})}function O(t,{index:i,prefix:s,total:n}){return C(t)?s:`${s} ${(t.getAttribute("data-button-count-format")||"(%s of %s)").replace("%s",i).replace("%s",n)}`}function C(t){return"slides"!==t.getAttribute("type")}function j(){return _||(_=Promise.resolve(void 0))}var B=class{constructor(){this.promise=new Promise(((t,i)=>{this.resolve=t,this.reject=i}))}},N="ArrowLeft",z="ArrowRight",L="fixed",$="fixed-height";function F(t,i,s={}){const{needsRootBounds:n,rootMargin:e,threshold:o}=s,r=function(t){return t.parent&&t.parent!=t}(i)&&(n||e)?i.document:void 0;return new i.IntersectionObserver(t,{threshold:o,root:r,rootMargin:e})}var W,H=new WeakMap,U=new WeakMap;function X(t,i,s){const n=c(t);if(s){const e=F((t=>{i(t[t.length-1])}),n,s);return e.observe(t),()=>{e.unobserve(t)}}let e=H.get(n);e||H.set(n,e=F(Y,n));let o=U.get(t);return o||(o=[],U.set(t,o)),o.push(i),e.observe(t),()=>{!function(t,i){const s=U.get(t);if(!s)return;if(!function(t,i){const s=t.indexOf(i);return-1!=s&&(t.splice(s,1),!0)}(s,i))return;if(s.length)return;const n=c(t),e=H.get(n);null==e||e.unobserve(t),U.delete(t)}(t,i)}}function Y(t){const i=new Set;for(let s=t.length-1;s>=0;s--){const n=t[s],{target:e}=n;if(i.has(e))continue;i.add(e);const o=U.get(e);if(o)for(let t=0;t<o.length;t++)(0,o[t])(n)}}function D(t){const i=Object.getOwnPropertyDescriptor(t,"message");if(null!=i&&i.writable)return t;const{message:s,stack:n}=t,e=new Error(s);for(const i in t)e[i]=t[i];return e.stack=n,e}function G(t){let i=null,s="";for(const t of arguments)t instanceof Error&&!i?i=D(t):(s&&(s+=" "),s+=t);return i?s&&(i.message=s+": "+i.message):i=new Error(s),i}function J(t){var i,s;null===(i=(s=self).__AMP_REPORT_ERROR)||void 0===i||i.call(s,t)}function Z(t,...i){try{return t.apply(null,i)}catch(t){!function(t){const i=G.apply(null,arguments);setTimeout((()=>{throw J(i),i}))}(t)}}var q=["Webkit","webkit","Moz","moz","ms","O","o"],K={"getPropertyPriority":()=>"","getPropertyValue":()=>""};function Q(t,i,s){if(it(i))return i;W||(W=h());let n=W[i];if(!n||s){if(n=i,void 0===t[i]){const s=function(t){return t.charAt(0).toUpperCase()+t.slice(1)}(i),e=function(t,i){for(let s=0;s<q.length;s++){const n=q[s]+i;if(void 0!==t[n])return n}return""}(t,s);void 0!==t[e]&&(n=e)}s||(W[i]=n)}return n}function tt(t,i,s,n,e){const o=Q(t.style,i,e);if(!o)return;const r=n?s+n:s;t.style.setProperty(function(t){const i=t.replace(/[A-Z]/g,(t=>"-"+t.toLowerCase()));return q.some((t=>i.startsWith(t+"-")))?`-${i}`:i}(o),r)}function it(t){return t.startsWith("--")}function st(t,i){return s=>t+(i-t)*s}var nt=/(?:^[#?]?|&)([^=&]+)(?:=([^&]*))?/g;function et(t,i=""){try{return decodeURIComponent(t)}catch(t){return i}}self.__AMP_LOG=self.__AMP_LOG||{user:null,dev:null,userForEmbed:null};var ot=self.__AMP_LOG;function rt(t,i){throw new Error("failed to call initLogConstructor")}function lt(t){return ot.user||(ot.user=ht()),function(t,i){return i&&i.ownerDocument.defaultView!=t}(ot.user.win,t)?ot.userForEmbed||(ot.userForEmbed=ht()):ot.user}function ht(t){return rt()}function at(){return ot.dev||(ot.dev=rt())}function ut(t,i,s,n,e,o,r,l,h,a,u){return t}function ct(t,i){return vt(t=function(t){return t.__AMP_TOP||(t.__AMP_TOP=t)}(t),i)}function pt(t,i){return vt(mt(ft(t)),i)}function dt(t,i){return _t(mt(t),i)}function ft(t){return t.nodeType?(i=c(t),ct(i,"ampdoc")).getAmpDoc(t):t;var i}function mt(t){const i=ft(t);return i.isSingleDoc()?i.win:i}function vt(t,i){ut(At(t,i));const s=bt(t)[i];return s.obj||(ut(s.ctor),ut(s.context),s.obj=new s.ctor(s.context),ut(s.obj),s.context=null,s.resolve&&s.resolve(s.obj)),s.obj}function _t(t,i){const s=bt(t)[i];return s?s.promise?s.promise:(vt(t,i),s.promise=Promise.resolve(s.obj)):null}function bt(t){let i=t.__AMP_SERVICES;return i||(i=t.__AMP_SERVICES={}),i}function At(t,i){const s=t.__AMP_SERVICES&&t.__AMP_SERVICES[i];return!(!s||!s.ctor)}var Pt=t=>function(t,i){const s=mt(ft(t));return At(s,i)?vt(s,i):null}(t,"action"),gt=t=>function(t,i,s,n){const e=dt(t,i);if(e)return e;const o=ft(t);return o.whenExtensionsKnown().then((()=>{const t=o.getExtensionVersion(s);return t?ct(o.win,"extensions").waitForExtension(s,t):null})).then((s=>s?function(t,i){return function(t,i){const s=_t(t,i);if(s)return s;const n=bt(t);return n[i]=function(){const t=new B,{promise:i,reject:s,resolve:n}=t;return i.catch((()=>{})),{obj:null,promise:i,resolve:n,reject:s,context:null,ctor:null}}(),n[i].promise}(mt(t),i)}(t,i):null))}(t,"amp-analytics-instrumentation","amp-analytics"),xt=t=>pt(t,"owners"),wt=t=>ct(t,"platform"),Et=t=>vt(t,"timer"),yt=t=>ct(t,"vsync");function Mt(t,i,s,n){return e=>Tt.solveYValueFromXValue(e,0,0,t,i,s,n,1,1)}var Tt=class t{static solveYValueFromXValue(i,s,n,e,o,r,l,h,a){return t.Wr(t.Kr(i,s,e,r,h),n,o,l,a)}static Kr(i,s,n,e,o){const r=1e-6;let l=(i-s)/(o-s);if(l<=0)return 0;if(l>=1)return 1;let h=0,a=1,u=0;for(let c=0;c<8;c++){u=t.Yr(l,s,n,e,o);const c=(t.Yr(l+r,s,n,e,o)-u)/r;if(Math.abs(u-i)<r)return l;if(Math.abs(c)<r)break;u<i?h=l:a=l,l-=(u-i)/c}for(let c=0;Math.abs(u-i)>r&&c<8;c++)u<i?(h=l,l=(l+a)/2):(a=l,l=(l+h)/2),u=t.Yr(l,s,n,e,o);return l}static Yr(i,s,n,e,o){if(0==i)return s;if(1==i)return o;let r=t.Jr(s,n,i),l=t.Jr(n,e,i);const h=t.Jr(e,o,i);return r=t.Jr(r,l,i),l=t.Jr(l,h,i),t.Jr(r,l,i)}static Wr(i,s,n,e,o){if(0==i)return s;if(1==i)return o;let r=t.Jr(s,n,i),l=t.Jr(n,e,i);const h=t.Jr(e,o,i);return r=t.Jr(r,l,i),l=t.Jr(l,h,i),t.Jr(r,l,i)}static Jr(t,i,s){return t+s*(i-t)}},It={LINEAR:t=>t,EASE:t=>Tt.solveYValueFromXValue(t,0,0,.25,.1,.25,1,1,1),EASE_IN:t=>Tt.solveYValueFromXValue(t,0,0,.42,0,1,1,1,1),EASE_OUT:t=>Tt.solveYValueFromXValue(t,0,0,0,0,.58,1,1,1),EASE_IN_OUT:t=>Tt.solveYValueFromXValue(t,0,0,.42,0,.58,1,1,1)},Rt={"linear":It.LINEAR,"ease":It.EASE,"ease-in":It.EASE_IN,"ease-out":It.EASE_OUT,"ease-in-out":It.EASE_IN_OUT};function St(t){if(!t)return null;if(o(t)){if(-1!=t.indexOf("cubic-bezier")){const i=t.match(/cubic-bezier\((.+)\)/);if(i){const t=i[1].split(",").map(parseFloat);if(4==t.length){for(let i=0;i<4;i++)if(isNaN(t[i]))return null;return Mt(t[0],t[1],t[2],t[3])}}return null}return Rt[t]}return t}var kt,Vt="Animation",Ot=function(){},Ct=class t{static animate(i,s,n,e){return new t(i).setCurve(e).add(0,s,1).start(n)}constructor(t,i){this.Qr=t,this.Xr=i||yt(self),this.Zr=null,this.th=[]}setCurve(t){return t&&(this.Zr=St(t)),this}add(t,i,s,n){return this.th.push({delay:t,func:i,duration:s,curve:St(n)}),this}start(t){return new jt(this.Xr,this.Qr,this.th,this.Zr,t)}},jt=class{constructor(t,i,s,n,e){this.Xr=t,this.Qr=i,this.th=[];for(let t=0;t<s.length;t++){const i=s[t];this.th.push({delay:i.delay,func:i.func,duration:i.duration,curve:i.curve||n,started:!1,completed:!1})}this.ih=e,this.Or=Date.now(),this.pn=!0,this.yi={};const o=new B;this.sh=o.promise,this.Ue=o.resolve,this.eh=o.reject,this.nh=this.Xr.createAnimTask(this.Qr,{mutate:this.rh.bind(this)}),this.Xr.canAnimate(this.Qr)?this.nh(this.yi):this.hh(!1,0)}then(t,i){return t||i?this.sh.then(t,i):this.sh}thenAlways(t){const i=t||Ot;return this.then(i,i)}halt(t){this.hh(!1,t||0)}hh(t,i){if(this.pn){if(this.pn=!1,0!=i){this.th.length>1&&this.th.sort(((t,i)=>t.delay+t.duration-(i.delay+i.duration)));try{if(i>0)for(let t=0;t<this.th.length;t++)this.th[t].func(1,!0);else for(let t=this.th.length-1;t>=0;t--)this.th[t].func(0,!1)}catch(i){at().error(Vt,"completion failed: "+i,i),t=!1}}t?this.Ue():this.eh()}}rh(t){if(!this.pn)return;const i=Date.now(),s=Math.min((i-this.Or)/this.ih,1);for(let t=0;t<this.th.length;t++){const i=this.th[t];!i.started&&s>=i.delay&&(i.started=!0)}for(let t=0;t<this.th.length;t++){const i=this.th[t];i.started&&!i.completed&&this.oh(i,s)}1==s?this.hh(!0,0):this.Xr.canAnimate(this.Qr)?this.nh(this.yi):this.hh(!1,0)}oh(t,i){let s,n;if(t.duration>0){if(s=Math.min((i-t.delay)/t.duration,1),n=s,t.curve&&1!=n)try{n=t.curve(s)}catch(t){return at().error(Vt,"step curve failed: "+t,t),void this.hh(!1,0)}}else s=1,n=1;1==s&&(t.completed=!0);try{t.func(n,t.completed)}catch(t){return at().error(Vt,"step mutate failed: "+t,t),void this.hh(!1,0)}}};function Bt(t,i,s,n){return function(t,i,s,n){let e=t,o=s,r=t=>{try{return o(t)}catch(t){var i,s;throw null===(i=(s=self).__AMP_REPORT_ERROR)||void 0===i||i.call(s,t),t}};const l=function(){if(void 0!==kt)return kt;kt=!1;try{const t={get capture(){return kt=!0,!1}};self.addEventListener("test-options",null,t),self.removeEventListener("test-options",null,t)}catch(t){}return kt}(),h=!(null==n||!n.capture);return e.addEventListener(i,r,l?n:h),()=>{null==e||e.removeEventListener(i,r,l?n:h),o=null,e=null,r=null}}(t,i,s,n)}var Nt=class{constructor({element:t,go:i,nextButton:s,prevButton:n}){this.yf=t,this.tit=i,this.i=c(t),this.Gf=n,this.Jf=s,this.r5=!1,this.iit()}iit(){var t;this.setupButtonInteraction(this.Gf,(()=>this.handlePrev())),this.setupButtonInteraction(this.Jf,(()=>this.handleNext())),this.yf.hasAttribute("controls")?this.r5=!0:(t=this.i,ct(t,"input")).onMouseDetected((t=>{t&&(this.r5=!0,m(this.yf,"i-amphtml-carousel-hide-buttons",!this.r5),this.yf.classList.add(P))}),!0)}setupButtonInteraction(t,i){t.addEventListener("click",i),t.addEventListener("keydown",(t=>{t.defaultPrevented||"Enter"!=t.key&&" "!=t.key||(t.preventDefault(),i())}))}setControlsState({next:t,prev:i}){R(this.Gf,i),R(this.Jf,t)}hintControls(){this.r5||yt(this.i).mutate((()=>{const t="i-amphtml-carousel-button-start-hint";this.yf.classList.add(t),Et(this.i).delay((()=>{var i;(i=this.yf,pt(i,"mutator")).measureMutateElement(this.yf,null,(()=>{this.yf.classList.remove(t),m(this.yf,"i-amphtml-carousel-hide-buttons",!this.r5)}))}),4e3)}))}updateButtonTitles(t,i){this.Gf.title=t,this.Jf.title=i}handlePrev(){!this.Gf.classList.contains("amp-disabled")&&this.tit(-1,!0,!1)}handleNext(){!this.Jf.classList.contains("amp-disabled")&&this.tit(1,!0,!1)}},zt=class extends t.BaseElement{constructor(t){super(t),this.fB=0,this.sit=0,this.nit=null,this.v_=null,this.mB=null,this.Bj=null,this.yd=null}isLayoutSupported(t){return function(t){return t==L||t==$}(t)}isRelayoutNeeded(){return!0}eit(){this.oit(),this.v_.addEventListener("scroll",this.Rf.bind(this)),this.v_.addEventListener("keydown",this.dX.bind(this)),this.nit.forEach((t=>{xt(this.element).setOwner(t,this.element)})),this.registerAction("goToSlide",(t=>{const{args:i}=t;if(i){const t=parseInt(i.index,10);this.goToSlide(t)}}),1),Pt(this.element).addToAllowlist("amp-carousel","goToSlide",["email"])}buildCallback(){const{cells:t,container:i,nextButton:s,prevButton:n}=S(this.element);this.v_=i,this.nit=t,this.yd=new Nt({element:this.element,prevButton:n,nextButton:s,go:this.go.bind(this)}),this.eit()}layoutCallback(){return this.Bj=X(this.element,(({isIntersecting:t})=>this.viewportCallback(t))),this.rit(this.fB),this.lit(this.fB,1),this.yd.setControlsState({prev:this.hit(),next:this.ait()}),j()}unlayoutCallback(){var t;return null===(t=this.Bj)||void 0===t||t.call(this),this.Bj=null,!0}viewportCallback(t){this.uit(this.fB,this.fB),t&&this.yd.hintControls()}go(t,i){const s=this.cit(this.fB,t),n=this.fB;if(s!=n)if(i){const t=st(n,s),i=200,e="ease-in-out";Ct.animate(this.element,(i=>{this.v_.scrollLeft=t(i)}),i,e).thenAlways((()=>{this.pit(s)}))}else this.pit(s),this.v_.scrollLeft=s}goToSlide(t){const i=this.nit.length;if(!isFinite(t)||t<0||t>=i)return this.user().error("amp-scrollable-carousel","Invalid [slide] value: %s",t),j();const s=this.fB;let n=s;this.measureMutateElement((()=>{n=this.dit(t)}),(()=>{if(n==s)return;const t=st(s,n);Ct.animate(this.element,(i=>{this.v_.scrollLeft=t(i)}),200,"ease-in-out").thenAlways((()=>{this.pit(n)}))}))}dit(t){const i=this.element.offsetWidth;return this.nit[t].offsetLeft-(i-this.nit[t].offsetWidth)/2}Rf(){const t=this.v_.scrollLeft;this.fB=t,null===this.mB&&this.GB(t)}dX(t){const{key:i}=t;i!=N&&i!=z||t.stopPropagation()}GB(t){this.mB=Et(this.win).delay((()=>{Math.abs(t-this.fB)<30?(this.mB=null,this.pit(this.fB)):this.GB(this.fB)}),100)}pit(t){this.uit(t,this.sit),this.rit(t),this.lit(t,Math.sign(t-this.sit)),this.sit=t,this.fB=t,this.yd.setControlsState({prev:this.hit(),next:this.ait()})}cit(t,i){const s=this.element.offsetWidth,n=this.v_.scrollWidth,e=t+i*s;return e<0?0:n>=s&&e>n-s?n-s:e}fit(t,i){const s=this.element.offsetWidth;for(let n=0;n<this.nit.length;n++){const e=this.nit[n];e.offsetLeft+e.offsetWidth>=t&&e.offsetLeft<=t+s&&i(e)}}rit(t){this.fit(t,(t=>{xt(this.element).scheduleLayout(this.element,t)}))}lit(t,i){const s=this.cit(t,i);s!=t&&this.fit(s,(t=>{xt(this.element).schedulePreload(this.element,t)}))}uit(t,i){const s=[];this.fit(t,(t=>{s.push(t)})),i!=t&&this.fit(i,(t=>{s.includes(t)||xt(this.element).schedulePause(this.element,t)}))}hit(){return 0!=this.fB}ait(){const t=this.element.offsetWidth,i=this.v_.scrollWidth,s=Math.max(i-t,0);return this.fB!=s}interactionNext(){this.yd.handleNext()}interactionPrev(){this.yd.handlePrev()}goCallback(t,i){this.go(t,i)}oit(){Bt(this.element,"touchmove",(t=>t.stopPropagation()),{passive:!0})}},Lt=/vertical/,$t=new WeakMap,Ft=new WeakMap,Wt=new WeakMap;function Ht(t){let i=$t.get(t);return i||(i=new t.ResizeObserver(Ut),$t.set(t,i)),i}function Ut(t){const i=new Set;for(let s=t.length-1;s>=0;s--){const n=t[s],{target:e}=n;if(i.has(e))continue;i.add(e);const o=Ft.get(e);if(o){Wt.set(e,n);for(let t=0;t<o.length;t++){const{callback:i,type:s}=o[t];Xt(s,i,n)}}}}function Xt(t,i,s){if(0==t){const{contentRect:t}=s,{height:n,width:e}=t;Z(i,{width:e,height:n})}else if(1==t){const{borderBoxSize:t}=s;let n;if(t)n=t.length>0?t[0]:{inlineSize:0,blockSize:0};else{const{target:t}=s,i=c(t),e=Lt.test(function(t,i){return t.getComputedStyle(i)||K}(i,t).writingMode),{offsetHeight:o,offsetWidth:r}=t;let l,h;e?(h=r,l=o):(l=r,h=o),n={inlineSize:l,blockSize:h}}Z(i,n)}}var Yt="__AMP__EXPERIMENT_TOGGLES",Dt="AMP-CAROUSEL",Gt=class extends t.BaseElement{constructor(t){super(t),this.Xr=null,this.mit=!1,this.Q0=[],this.vit=0,this._it=null,this.bit=[],this.Ait=!1,this.Pit=null,this.git=!1,this.xit=null,this.wit=!1,this.Eit=!1,this.uq=!1,this.yit=5e3,this.Mit=null,this.Tit=0,this.Iit=!1,this.Rit=!1,this.Sit=0,this.kit=null,this.Vit=0,this.Oit=0,this.Cit=0,this.jit=[];const i=wt(this.win);this.gB=i.isIos(),this.av=i.isSafari(),this.$c=null,this.Bit=!!wt(this.win).getIosVersionString().startsWith("10.3")||!this.gB&&!function(t,i){const s=function(t){var i,s,o,r,l;if(t[Yt])return t[Yt];t[Yt]=h();const a=t[Yt];u(a);const c=n(n({},null!==(i=t.AMP_CONFIG)&&void 0!==i?i:{}),null!==(s=t.AMP_EXP)&&void 0!==s?s:(p=(null===(o=t.__AMP_EXP)||void 0===o?void 0:o.textContent)||"{}",JSON.parse(p)));var p;for(const t in c){const i=c[t];"number"==typeof i&&i>=0&&i<=1&&(a[t]=Math.random()<i)}const d=null===(r=t.AMP_CONFIG)||void 0===r?void 0:r["allow-doc-opt-in"];if(e(d)&&d.length){const i=t.document.head.querySelector('meta[name="amp-experiments-opt-in"]');if(i){var f;const t=(null===(f=i.getAttribute("content"))||void 0===f?void 0:f.split(","))||[];for(const i of t)d.includes(i)&&(a[i]=!0)}}Object.assign(a,function(t){var i;let s="";try{var n;"localStorage"in t&&(s=null!==(n=t.localStorage.getItem("amp-experiment-toggles"))&&void 0!==n?n:"")}catch(t){}const e=(null===(i=s)||void 0===i?void 0:i.split(/\s*,\s*/g))||[],o=h();for(const t of e)t&&("-"==t[0]?o[t.substr(1)]=!1:o[t]=!0);return o}(t));const m=null===(l=t.AMP_CONFIG)||void 0===l?void 0:l["allow-url-opt-in"];if(e(m)&&m.length){const i=function(t){const i=h();if(!t)return i;let s;for(;s=nt.exec(t);){const t=et(s[1],s[1]),n=s[2]?et(s[2].replace(/\+/g," "),s[2]):"";i[t]=n}return i}(t.location.originalHash||t.location.hash);for(const t of m){const s=i[`e-${t}`];"1"==s&&(a[t]=!0),"0"==s&&(a[t]=!1)}}return a}(t);return!!s["amp-carousel-chrome-scroll-snap"]}(this.win),this.Nit=!1,this.nI=this.nI.bind(this),this.Bj=null,this.yd=null}isLayoutSupported(t){return function(t){return t==L||t==$||"responsive"==t||"fill"==t||"flex-item"==t||"fluid"==t||"intrinsic"==t}(t)}isRelayoutNeeded(){return!0}eit(){const t=this.element.getAttribute("autoplay");var i;t&&(this.Mit=parseInt(t,10),i=a(this.Mit),lt().assert(i,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined)),this.Rit&&0!=this.Mit&&this.zit(),this.registerAction("toggleAutoplay",(t=>{const{args:i}=t;i&&void 0!==i.toggleOn?this.s5(i.toggleOn):this.s5(!this.uq)}),1)}Lit(){if(this.Xr=this.getVsync(),this.$c=Pt(this.element),this.$c.addToAllowlist(Dt,"goToSlide",["email"]),this.mit=null!=function(t,i,s){const n=Q(t.style,"scrollSnapType",void 0);if(n)return it(n)?t.style.getPropertyValue(n):t.style[n]}(this.element),this.Bit&&(this.mit=!1),this._it.classList.toggle(E,this.Bit),this.mit){const t=this.win.document.createElement("div");t.classList.add("i-amphtml-carousel-start-marker"),this._it.appendChild(t);const i=this.win.document.createElement("div");i.classList.add("i-amphtml-carousel-end-marker"),this._it.appendChild(i)}this.Q0.forEach(((t,i)=>{const s=t.getAttribute("data-slide-id")||i.toString();this.jit.push(s),xt(this.element).setOwner(t,this.element)})),this.oit(),this._it.addEventListener("scroll",this.Rf.bind(this)),this._it.addEventListener("keydown",this.dX.bind(this)),Bt(this._it,"touchmove",this.$it.bind(this),{passive:!0}),Bt(this._it,"touchend",this.Fit.bind(this),{passive:!0}),this.registerAction("goToSlide",(t=>{const{args:i}=t;i&&this.goToSlide(i.index,3)}),1)}attachedCallback(){(function(t,i,s){const n=t.ownerDocument.defaultView;if(!n)return;let e=Ft.get(t);if(e||(e=[],Ft.set(t,e),Ht(n).observe(t)),!e.some((t=>t.callback===s&&0===t.type))){e.push({type:0,callback:s});const i=Wt.get(t);i&&setTimeout((()=>Xt(0,s,i)))}})(this.element,0,this.nI)}detachedCallback(){(function(t,i,s){const n=Ft.get(t);if(n&&(function(t,i){const n=[];let e=0;for(let i=0;i<t.length;i++){const r=t[i];(o=r).callback===s&&0===o.type?n.push(r):(e<i&&(t[e]=r),e++)}var o;e<t.length&&(t.length=e)}(n),0==n.length)){Ft.delete(t),Wt.delete(t);const i=t.ownerDocument.defaultView;i&&Ht(i).unobserve(t)}})(this.element,0,this.nI)}isLoopingEligible(){return this.vit>1}mutatedAttributesCallback(t){const i=t.slide;void 0!==i&&this.goToSlide(i,3)}$it(){this.Wit(),this.git=!0}viewportCallback(t){var i;t?(this.b$(),null===(i=this.yd)||void 0===i||i.hintControls()):this.Wit()}interactionNext(){this.yd.handleNext()}interactionPrev(){this.yd.handlePrev()}goCallback(t,i,s){this.go(t,i,s)}go(t,i,s){const n=s?1:3;this.moveSlide(t,i,n),s?this.b$():this.Wit()}Hit(t){this.Pit&&Et(this.win).cancel(this.Pit),this.Pit=Et(this.win).delay((()=>{if(this.Pit=null,this.Ait||this.git)return;const t=this._it.scrollLeft;this.mit?this.Uit(t,1):this.Xit(t,void 0,3)}),t)}Fit(){const t=this.Bit?45:100;this.git=!1,this.Hit(t)}nI(t){this.Oit=t.width,this.Nit=!0}buildCallback(){const{nextButton:t,prevButton:i,slideWrappers:s,slides:n,slidesContainer:e}=S(this.element);this.Q0=n,this._it=e,this.bit=s,this.vit=this.Q0.length,this.wit=this.element.hasAttribute("loop"),this.uq=this.element.hasAttribute("autoplay"),this.Iit=this.wit&&this.isLoopingEligible(),this.Rit=this.uq&&this.isLoopingEligible(),this.yd=new Nt({element:this.element,go:this.go.bind(this),nextButton:t,prevButton:i}),this.yd.updateButtonTitles(this.getPrevButtonTitle(),this.getNextButtonTitle()),this.eit(),this.Lit()}layoutCallback(){if(this.Bj=X(this.element,(({isIntersecting:t})=>this.viewportCallback(t))),this.element.closest("[i-amphtml-scale-animation]"))return j();if(this.Nit||(this.Oit=this._it.clientWidth),null===this.kit)this.Yit(this.Vit);else{const t=lt().assertNumber(this.kit,"E#19457 this.slideIndex_"),i=this.Dit(t);xt(this.element).scheduleLayout(this.element,this.Q0[t]),this._it.scrollLeft=i,this.Cit=i}return j()}unlayoutCallback(){var t;return null===(t=this.Bj)||void 0===t||t.call(this),this.Bj=null,this.kit=null,!0}hit(){return this.Iit||this.kit>0}ait(){return this.Iit||this.kit<this.Q0.length-1}moveSlide(t,i,s){if(null!==this.kit){const n=this.ait(),e=this.hit();if(1==t&&n||-1==t&&e){let n=this.kit+t;if(-1==n?n=this.vit-1:n>=this.vit&&(n=0),i){const i=1!=t||e?this.Oit:0;this.Xit(i,t,s)}else this.Git(n,s)}}}Rf(t){const i=this._it.scrollLeft;this.gB||this.av||this.Jit(i);const s=this.mit?200:this.gB?45:100;this.Hit(s),this.Cit=i}dX(t){const{key:i}=t;i!=N&&i!=z||t.stopPropagation()}Jit(t){const i=this._it.scrollWidth;-1==this.Sit&&t>=this.Cit||1==this.Sit&&t<=this.Cit?this.Xit(t).then((()=>{this.Sit=0})):t<0?this.Sit=-1:t+this.Oit>i?this.Sit=1:this.Sit=0}Xit(t,i,s){this.Ait=!0;let n=this.Zit(t)-this.kit;const e=this.hit();let o=e?this.Oit:0;return 0!=n||1!=i&&-1!=i||(n=i),1==n||-1!=n&&n==-1*(this.vit-1)?o=e?2*this.Oit:this.Oit:-1!=n&&n!=this.vit-1||(o=0),this.qit(t,o).then((()=>{this.Uit(o,s)}))}Zit(t){if(!t&&!this.Oit)return 0;const i=Math.round(t/this.Oit);let s=0;const n=this.hit(),e=this.ait();n&&e?s=i-1:e?s=i:n&&(s=i-1);let o=this.kit+s;return o=this.Iit?o<0?this.vit-1:o>=this.vit?0:o:o<0?0:o>=this.vit?this.vit-1:o,o}getPrevButtonTitle(){const t=this.u5(this.kit),i=(null==t?0:t)+1;return V(this.element,{index:String(i),total:String(this.vit)})}getNextButtonTitle(){const t=this.d5(this.kit),i=(null==t?this.vit-1:t)+1;return k(this.element,{index:String(i),total:String(this.vit)})}Uit(t,i){if(!a(t)||null===this.kit)return;this.Ait=!0;const s=this.Zit(t);this.Xr.mutate((()=>{this.Git(s,i),this.Xr.mutate((()=>{this.Ait=!1}))}))}goToSlide(t,i){const s=parseInt(t,10);!isFinite(s)||s<0||s>=this.vit?this.user().error(Dt,"Invalid [slide] value: ",t):null!==this.kit?this.Git(s,i):this.Vit=s}u5(t){return t-1>=0?t-1:this.Iit?this.vit-1:null}d5(t){return t+1<this.vit?t+1:this.Iit?0:null}Yit(t){var i,s;const{vit:n}=this;if(t<0||t>=n||this.kit==t)return!1;const e=this.u5(t),o=this.d5(t),r=[];return null!=e&&r.push(e),r.push(t),null!=o&&o!==e&&r.push(o),void 0===this.Q0[t]?(at().error(Dt,"Attempting to access a non-existant slide %s / %s",t,n),!1):(r.forEach(((i,s)=>{this.Iit&&tt(this.bit[i],"order",s+1),this.bit[i].classList.add(y);const n=xt(this.element);i==t?(n.scheduleLayout(this.element,this.Q0[i]),n.scheduleResume(this.element,this.Q0[i]),this.Q0[i].setAttribute("aria-hidden","false")):(n.schedulePreload(this.element,this.Q0[i]),this.Q0[i].setAttribute("aria-hidden","true"))})),this._it.scrollLeft=this.Dit(t),this.b5(t),this.kit=t,this.Mit&&this.kit===this.vit-1&&(this.Tit++,this.Tit==this.Mit&&this.Kit()),this.Qit(r),null===(i=this.yd)||void 0===i||i.setControlsState({prev:this.hit(),next:this.ait()}),null===(s=this.yd)||void 0===s||s.updateButtonTitles(this.getPrevButtonTitle(),this.getNextButtonTitle()),!0)}Git(t,i=1){if(this.Yit(t)){const s="slideChange",n=function(t,i,s,n){const e={detail:s};return Object.assign(e,void 0),new t.CustomEvent(i,e)}(this.win,`slidescroll.${s}`,{"index":t});this.$c.trigger(this.element,s,n,i),function(t,i,s,n){const e=s||{};u(t.ownerDocument);const{bubbles:o,cancelable:r}=f,l=new MessageEvent(i,{data:e,bubbles:o,cancelable:r});t.dispatchEvent(l)}(this.element,s,{index:t,actionTrust:i})}}Dit(t){let i=this.Oit;return(!this.Iit&&0==t||this.Q0.length<=1)&&(i=0),i}Qit(t){const{vit:i}=this;for(let s=0;s<i;s++)this.bit[s].classList.contains(y)&&(t.includes(s)||(this.Iit&&tt(this.bit[s],"order",""),this.bit[s].classList.remove(y),this.Q0[s].removeAttribute("aria-hidden")),this.kit!=s&&xt(this.element).schedulePause(this.element,this.Q0[s]))}qit(t,i){if(t==i)return j();const s=st(t,i),n=Mt(.8,0,.6,1),e=this._it;return Ct.animate(e,(t=>{this._it.scrollLeft=s(t)}),80,n).thenAlways()}oit(){Bt(this.element,"touchmove",(t=>t.stopPropagation()),{passive:!0})}b5(t){let i=t-this.kit;if(0==i)return;1!==Math.abs(i)&&(i=i<0?1:-1,null===this.kit&&(i=1));const s={"fromSlide":null===this.kit?"null":this.jit[this.kit],"toSlide":this.jit[t]};this.y9("amp-carousel-change",s),1==i?this.y9("amp-carousel-next",s):this.y9("amp-carousel-prev",s)}y9(t,i){!function(t,i,s={},n=!0){gt(t).then((e=>{e&&e.triggerEventForTarget(t,i,s,n)}))}(this.element,t,i)}zit(){const t=Number(this.element.getAttribute("delay"));t>0&&(this.yit=Math.max(1e3,t)),this.wit||(this.element.setAttribute("loop",""),this.Eit=!0,this.wit=!0,this.Iit=!0)}b$(){this.Rit&&0!=this.Mit&&(this.Wit(),this.xit=Et(this.win).delay(this.go.bind(this,1,!0,!0),this.yit))}s5(t){if(t==this.Rit)return;const i=this.Rit;this.uq=t,this.Rit=this.uq&&this.isLoopingEligible(),!i&&this.Rit&&this.zit(),this.Rit?this.b$():this.Wit()}Wit(){null!==this.xit&&(Et(this.win).cancel(this.xit),this.xit=null)}Kit(){this.Wit(),this.Eit&&(this.element.removeAttribute("loop"),this.Eit=!1,this.wit=!1,this.Iit=!1),this.uq=!1,this.Rit=this.uq&&this.isLoopingEligible()}},Jt=class extends t.BaseElement{upgradeCallback(){return C(this.element)?new zt(this.element):new Gt(this.element)}};t.registerElement("amp-carousel",Jt,'.amp-carousel-slide>.i-amphtml-replaced-content{-o-object-fit:contain;object-fit:contain}.amp-carousel-button{position:absolute;box-sizing:border-box;top:50%;height:34px;width:34px;border-radius:2px;opacity:0;pointer-events:all;background-color:rgba(0,0,0,.5);background-position:50% 50%;background-repeat:no-repeat;transform:translateY(-50%);visibility:hidden;z-index:10}.amp-carousel-button:focus{border:1px solid #000;outline:1px solid #fff}.amp-mode-mouse .amp-carousel-button,amp-carousel.i-amphtml-carousel-has-controls .amp-carousel-button,amp-carousel[controls] .amp-carousel-button{opacity:1;visibility:visible}.amp-carousel-button-prev{left:16px;background-image:url(\'data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="%23fff"><path d="M15 8.25H5.87l4.19-4.19L9 3 3 9l6 6 1.06-1.06-4.19-4.19H15z"/></svg>\');background-size:18px 18px}.amp-carousel-button-next{right:16px;background-image:url(\'data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="%23fff"><path d="M9 3 7.94 4.06l4.19 4.19H3v1.5h9.13l-4.19 4.19L9 15l6-6z"/></svg>\');background-size:18px 18px}.i-amphtml-carousel-button-start-hint .amp-carousel-button:not(.amp-disabled){animation:i-amphtml-carousel-hint 1s ease-in 3s 1 normal both}.amp-mode-mouse .i-amphtml-carousel-button-start-hint .amp-carousel-button:not(.amp-disabled){animation:none}@keyframes i-amphtml-carousel-hint{0%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden}}amp-carousel .amp-carousel-button.amp-disabled{animation:none;clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}amp-carousel[i-amphtml-carousel-hide-buttons] .amp-carousel-button-next,amp-carousel[i-amphtml-carousel-hide-buttons] .amp-carousel-button-prev{opacity:0;pointer-events:none;visibility:visible!important}.i-amphtml-slides-container{display:-ms-flexbox!important;display:flex!important;-ms-flex-wrap:nowrap;flex-wrap:nowrap;height:100%!important;left:0;overflow-x:auto!important;overflow-y:hidden!important;position:absolute!important;top:0;width:100%!important;scroll-snap-type:x mandatory!important;scrollbar-width:none;padding-bottom:20px!important;box-sizing:content-box!important;-webkit-overflow-scrolling:touch!important}.i-amphtml-slides-container::-webkit-scrollbar{display:none!important}.i-amphtml-slides-container.i-amphtml-no-scroll{overflow-x:hidden!important}.i-amphtml-slide-item{-ms-flex-align:center!important;align-items:center!important;display:none!important;-ms-flex:0 0 100%!important;flex:0 0 100%!important;height:100%!important;-ms-flex-pack:center!important;justify-content:center!important;position:relative!important;scroll-snap-align:start!important;width:100%!important}.i-amphtml-slide-item>*{height:100%;width:100%;overflow:hidden!important}.i-amphtml-slide-item-show{display:-ms-flexbox!important;display:flex!important}.i-amphtml-carousel-end-marker,.i-amphtml-carousel-start-marker{background-color:transparent!important;display:block!important;-ms-flex:0 0 1px!important;flex:0 0 1px!important;height:100%!important;position:relative!important;scroll-snap-align:start!important;width:1px!important}.i-amphtml-carousel-start-marker{-ms-flex-order:-1!important;order:-1!important;margin-left:-1px!important}.i-amphtml-carousel-end-marker{-ms-flex-order:100000000!important;order:100000000!important;margin-right:-1px!important}.i-amphtml-slidescroll-no-snap.i-amphtml-slides-container{scroll-snap-type:none!important}.i-amphtml-slidescroll-no-snap .i-amphtml-slide-item{scroll-snap-align:none!important}.i-amphtml-slidescroll-no-snap.i-amphtml-slides-container.i-amphtml-no-scroll{-webkit-overflow-scrolling:auto!important}.amp-scrollable-carousel-slide{display:inline-block!important;margin-left:8px}.amp-scrollable-carousel-slide:first-child{margin-left:0px}.i-amphtml-scrollable-carousel-container{white-space:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important}\n/*# sourceURL=/extensions/amp-carousel/0.1/amp-carousel.css*/')})();
/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */}});
//# sourceMappingURL=amp-carousel-0.1.mjs.map