{"version":3,"file":"ProgrammesCarousel.XS3bhC_S.mjs","names":["React.useContext","React.useMemo","React.Fragment","React.forwardRef","useRef","React.useId","SVG","l","f","p","c","w","m","React.useState","useEmblaCarousel","React.useRef","React.useCallback","_Fragment"],"sources":["https:/framerusercontent.com/modules/TBSudWIxYebCAZqvUf0W/lamhALsdRJKwuxVp7cAX/Qv9Mrf75x.js","https:/esm.sh/embla-carousel-reactive-utils@8.5.2/es2022/embla-carousel-reactive-utils.mjs","https:/esm.sh/embla-carousel@8.5.2/es2022/embla-carousel.mjs","https:/esm.sh/embla-carousel-react@8.5.2/X-ZXJlYWN0LHJlYWN0LWRvbQ/es2022/embla-carousel-react.mjs","https:/esm.sh/embla-carousel-react@8.5.2?external=react,react-dom","https:/framerusercontent.com/modules/72LtS8suWK7hQKz7eFyg/umgssJVle4tW8lvyDFcs/ProgrammesCarousel.js"],"sourcesContent":["// Generated by Framer (53eda0e)\nimport{jsx as _jsx}from\"react/jsx-runtime\";import{addFonts,addPropertyControls,ControlType,cx,SVG,useComponentViewport,useLocaleInfo,useVariantState,withCSS}from\"framer\";import{LayoutGroup,motion,MotionConfigContext}from\"framer-motion\";import*as React from\"react\";import{useRef}from\"react\";const enabledGestures={UKudBUpdt:{hover:true},ZmSXtxf7q:{hover:true}};const cycleOrder=[\"ZmSXtxf7q\",\"UKudBUpdt\"];const serializationHash=\"framer-FlXk6\";const variantClassNames={UKudBUpdt:\"framer-v-63p0z3\",ZmSXtxf7q:\"framer-v-1gq0ukh\"};function addPropertyOverrides(overrides,...variants){const nextOverrides={};variants?.forEach(variant=>variant&&Object.assign(nextOverrides,overrides[variant]));return nextOverrides;}const transition1={bounce:.2,delay:0,duration:.4,type:\"spring\"};const Transition=({value,children})=>{const config=React.useContext(MotionConfigContext);const transition=value??config.transition;const contextValue=React.useMemo(()=>({...config,transition}),[JSON.stringify(transition)]);return /*#__PURE__*/_jsx(MotionConfigContext.Provider,{value:contextValue,children:children});};const humanReadableVariantMap={Left:\"UKudBUpdt\",Right:\"ZmSXtxf7q\"};const Variants=motion.create(React.Fragment);const getProps=({height,id,width,...props})=>{return{...props,variant:humanReadableVariantMap[props.variant]??props.variant??\"ZmSXtxf7q\"};};const createLayoutDependency=(props,variants)=>{if(props.layoutDependency)return variants.join(\"-\")+props.layoutDependency;return variants.join(\"-\");};const Component=/*#__PURE__*/React.forwardRef(function(props,ref){const fallbackRef=useRef(null);const refBinding=ref??fallbackRef;const defaultLayoutId=React.useId();const{activeLocale,setLocale}=useLocaleInfo();const componentViewport=useComponentViewport();const{style,className,layoutId,variant,...restProps}=getProps(props);const{baseVariant,classNames,clearLoadingGesture,gestureHandlers,gestureVariant,isLoading,setGestureState,setVariant,variants}=useVariantState({cycleOrder,defaultVariant:\"ZmSXtxf7q\",enabledGestures,ref:refBinding,variant,variantClassNames});const layoutDependency=createLayoutDependency(props,variants);const sharedStyleClassNames=[];const scopingClassNames=cx(serializationHash,...sharedStyleClassNames);return /*#__PURE__*/_jsx(LayoutGroup,{id:layoutId??defaultLayoutId,children:/*#__PURE__*/_jsx(Variants,{animate:variants,initial:false,children:/*#__PURE__*/_jsx(Transition,{value:transition1,children:/*#__PURE__*/_jsx(motion.div,{...restProps,...gestureHandlers,className:cx(scopingClassNames,\"framer-1gq0ukh\",className,classNames),\"data-border\":true,\"data-framer-name\":\"Right\",layoutDependency:layoutDependency,layoutId:\"ZmSXtxf7q\",ref:refBinding,style:{\"--border-bottom-width\":\"1px\",\"--border-color\":\"var(--token-dc52403d-c961-4666-9ef1-6074452a42e8, rgb(25, 25, 25))\",\"--border-left-width\":\"1px\",\"--border-right-width\":\"1px\",\"--border-style\":\"solid\",\"--border-top-width\":\"1px\",backgroundColor:\"rgba(217, 255, 0, 0)\",borderBottomLeftRadius:50,borderBottomRightRadius:50,borderTopLeftRadius:50,borderTopRightRadius:50,...style},variants:{\"UKudBUpdt-hover\":{backgroundColor:\"rgb(217, 255, 0)\"},\"ZmSXtxf7q-hover\":{backgroundColor:\"rgb(217, 255, 0)\"}},...addPropertyOverrides({\"UKudBUpdt-hover\":{\"data-framer-name\":undefined},\"ZmSXtxf7q-hover\":{\"data-framer-name\":undefined},UKudBUpdt:{\"data-framer-name\":\"Left\"}},baseVariant,gestureVariant),children:/*#__PURE__*/_jsx(SVG,{className:\"framer-1c5kxcx\",layoutDependency:layoutDependency,layoutId:\"wqkSCBHNz\",requiresOverflowVisible:false,style:{rotate:180},svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 16 16\" overflow=\"visible\"><g><path d=\"M 3.825 9 L 9.425 14.6 L 8 16 L 0 8 L 8 0 L 9.425 1.4 L 3.825 7 L 16 7 L 16 9 Z\" fill=\"rgb(25,25,25)\"></path></g></svg>',variants:{UKudBUpdt:{rotate:360}},withExternalLayout:true,children:/*#__PURE__*/_jsx(SVG,{className:\"framer-svv8wc\",layoutDependency:layoutDependency,layoutId:\"RBhb8H5bD\",requiresOverflowVisible:false,svg:'<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" viewBox=\"0 0 16 16\" overflow=\"visible\"><path d=\"M 3.825 9 L 9.425 14.6 L 8 16 L 0 8 L 8 0 L 9.425 1.4 L 3.825 7 L 16 7 L 16 9 Z\" fill=\"rgb(25,25,25)\"></path></svg>',withExternalLayout:true})})})})})});});const css=[\"@supports (aspect-ratio: 1) { body { --framer-aspect-ratio-supported: auto; } }\",\".framer-FlXk6.framer-ekrplt, .framer-FlXk6 .framer-ekrplt { display: block; }\",\".framer-FlXk6.framer-1gq0ukh { align-content: center; align-items: center; cursor: pointer; display: flex; flex-direction: row; flex-wrap: nowrap; gap: 10px; height: 32px; justify-content: center; overflow: var(--overflow-clip-fallback, clip); padding: 0px; position: relative; width: 56px; will-change: var(--framer-will-change-override, transform); }\",\".framer-FlXk6 .framer-1c5kxcx { height: 16px; position: relative; width: 16px; }\",\".framer-FlXk6 .framer-svv8wc { height: 16px; left: 0px; position: absolute; top: 0px; width: 16px; }\",'.framer-FlXk6[data-border=\"true\"]::after, .framer-FlXk6 [data-border=\"true\"]::after { content: \"\"; border-width: var(--border-top-width, 0) var(--border-right-width, 0) var(--border-bottom-width, 0) var(--border-left-width, 0); border-color: var(--border-color, none); border-style: var(--border-style, none); width: 100%; height: 100%; position: absolute; box-sizing: border-box; left: 0; top: 0; border-radius: inherit; corner-shape: inherit; pointer-events: none; }'];/**\n * This is a generated Framer component.\n * @framerIntrinsicHeight 32\n * @framerIntrinsicWidth 56\n * @framerCanvasComponentVariantDetails {\"propertyName\":\"variant\",\"data\":{\"default\":{\"layout\":[\"fixed\",\"fixed\"]},\"UKudBUpdt\":{\"layout\":[\"fixed\",\"fixed\"]},\"bsXTRVT3x\":{\"layout\":[\"fixed\",\"fixed\"]},\"UDToHlwSO\":{\"layout\":[\"fixed\",\"fixed\"]}}}\n * @framerImmutableVariables true\n * @framerDisplayContentsDiv false\n * @framerAutoSizeImages true\n * @framerComponentViewportWidth true\n * @framerColorSyntax true\n */const FramerQv9Mrf75x=withCSS(Component,css,\"framer-FlXk6\");export default FramerQv9Mrf75x;FramerQv9Mrf75x.displayName=\"Carousel Arrow\";FramerQv9Mrf75x.defaultProps={height:32,width:56};addPropertyControls(FramerQv9Mrf75x,{variant:{options:[\"ZmSXtxf7q\",\"UKudBUpdt\"],optionTitles:[\"Right\",\"Left\"],title:\"Variant\",type:ControlType.Enum}});addFonts(FramerQv9Mrf75x,[{explicitInter:true,fonts:[]}],{supportsExplicitInterCodegen:true});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"FramerQv9Mrf75x\",\"slots\":[],\"annotations\":{\"framerColorSyntax\":\"true\",\"framerDisplayContentsDiv\":\"false\",\"framerComponentViewportWidth\":\"true\",\"framerAutoSizeImages\":\"true\",\"framerContractVersion\":\"1\",\"framerCanvasComponentVariantDetails\":\"{\\\"propertyName\\\":\\\"variant\\\",\\\"data\\\":{\\\"default\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"UKudBUpdt\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"bsXTRVT3x\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]},\\\"UDToHlwSO\\\":{\\\"layout\\\":[\\\"fixed\\\",\\\"fixed\\\"]}}}\",\"framerIntrinsicWidth\":\"56\",\"framerImmutableVariables\":\"true\",\"framerIntrinsicHeight\":\"32\"}},\"Props\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Qv9Mrf75x.map","/* esm.sh - embla-carousel-reactive-utils@8.5.2 */\nfunction y(n){return Object.prototype.toString.call(n)===\"[object Object]\"}function a(n){return y(n)||Array.isArray(n)}function p(){return!!(typeof window<\"u\"&&window.document&&window.document.createElement)}function l(n,t){let e=Object.keys(n),c=Object.keys(t);if(e.length!==c.length)return!1;let s=JSON.stringify(Object.keys(n.breakpoints||{})),u=JSON.stringify(Object.keys(t.breakpoints||{}));return s!==u?!1:e.every(o=>{let r=n[o],i=t[o];return typeof r==\"function\"?`${r}`==`${i}`:!a(r)||!a(i)?r===i:l(r,i)})}function f(n){return n.concat().sort((t,e)=>t.name>e.name?1:-1).map(t=>t.options)}function O(n,t){if(n.length!==t.length)return!1;let e=f(n),c=f(t);return e.every((s,u)=>{let o=c[u];return l(s,o)})}export{l as areOptionsEqual,O as arePluginsEqual,p as canUseDOM,f as sortAndMapPluginToOptions};\n//# sourceMappingURL=embla-carousel-reactive-utils.mjs.map","/* esm.sh - embla-carousel@8.5.2 */\nfunction Tt(t){return typeof t==\"number\"}function Lt(t){return typeof t==\"string\"}function gt(t){return typeof t==\"boolean\"}function Nt(t){return Object.prototype.toString.call(t)===\"[object Object]\"}function P(t){return Math.abs(t)}function It(t){return Math.sign(t)}function ft(t,n){return P(t-n)}function _t(t,n){if(t===0||n===0||P(t)<=P(n))return 0;let r=ft(P(t),P(n));return P(r/t)}function Jt(t){return Math.round(t*100)/100}function at(t){return lt(t).map(Number)}function k(t){return t[pt(t)]}function pt(t){return Math.max(0,t.length-1)}function vt(t,n){return n===pt(t)}function Vt(t,n=0){return Array.from(Array(t),(r,s)=>n+s)}function lt(t){return Object.keys(t)}function zt(t,n){return[t,n].reduce((r,s)=>(lt(s).forEach(c=>{let o=r[c],e=s[c],f=Nt(o)&&Nt(e);r[c]=f?zt(o,e):e}),r),{})}function Et(t,n){return typeof n.MouseEvent<\"u\"&&t instanceof n.MouseEvent}function Zt(t,n){let r={start:s,center:c,end:o};function s(){return 0}function c(i){return o(i)/2}function o(i){return n-i}function e(i,u){return Lt(t)?r[t](i):t(n,i,u)}return{measure:e}}function dt(){let t=[];function n(c,o,e,f={passive:!0}){let i;if(\"addEventListener\"in c)c.addEventListener(o,e,f),i=()=>c.removeEventListener(o,e,f);else{let u=c;u.addListener(e),i=()=>u.removeListener(e)}return t.push(i),s}function r(){t=t.filter(c=>c())}let s={add:n,clear:r};return s}function Wt(t,n,r,s){let c=dt(),o=1e3/60,e=null,f=0,i=0;function u(){c.add(t,\"visibilitychange\",()=>{t.hidden&&l()})}function h(){b(),c.clear()}function d(g){if(!i)return;e||(e=g,r(),r());let a=g-e;for(e=g,f+=a;f>=o;)r(),f-=o;let S=f/o;s(S),i&&(i=n.requestAnimationFrame(d))}function p(){i||(i=n.requestAnimationFrame(d))}function b(){n.cancelAnimationFrame(i),e=null,f=0,i=0}function l(){e=null,f=0}return{init:u,destroy:h,start:p,stop:b,update:r,render:s}}function tn(t,n){let r=n===\"rtl\",s=t===\"y\",c=s?\"y\":\"x\",o=s?\"x\":\"y\",e=!s&&r?-1:1,f=h(),i=d();function u(l){let{height:m,width:g}=l;return s?m:g}function h(){return s?\"top\":r?\"right\":\"left\"}function d(){return s?\"bottom\":r?\"left\":\"right\"}function p(l){return l*e}return{scroll:c,cross:o,startEdge:f,endEdge:i,measureSize:u,direction:p}}function tt(t=0,n=0){let r=P(t-n);function s(u){return u<t}function c(u){return u>n}function o(u){return s(u)||c(u)}function e(u){return o(u)?s(u)?t:n:u}function f(u){return r?u-r*Math.ceil((u-n)/r):u}return{length:r,max:n,min:t,constrain:e,reachedAny:o,reachedMax:c,reachedMin:s,removeOffset:f}}function Bt(t,n,r){let{constrain:s}=tt(0,t),c=t+1,o=e(n);function e(p){return r?P((c+p)%c):s(p)}function f(){return o}function i(p){return o=e(p),d}function u(p){return h().set(f()+p)}function h(){return Bt(t,f(),r)}let d={get:f,set:i,add:u,clone:h};return d}function nn(t,n,r,s,c,o,e,f,i,u,h,d,p,b,l,m,g,a,S){let{cross:x,direction:T}=t,A=[\"INPUT\",\"SELECT\",\"TEXTAREA\"],I={passive:!1},L=dt(),E=dt(),v=tt(50,225).constrain(b.measure(20)),C={mouse:300,touch:400},D={mouse:500,touch:600},V=l?43:25,G=!1,H=0,j=0,J=!1,Y=!1,U=!1,$=!1;function rt(y){if(!S)return;function M(N){(gt(S)||S(y,N))&&it(N)}let O=n;L.add(O,\"dragstart\",N=>N.preventDefault(),I).add(O,\"touchmove\",()=>{},I).add(O,\"touchend\",()=>{}).add(O,\"touchstart\",M).add(O,\"mousedown\",M).add(O,\"touchcancel\",w).add(O,\"contextmenu\",w).add(O,\"click\",K,!0)}function R(){L.clear(),E.clear()}function nt(){let y=$?r:n;E.add(y,\"touchmove\",z,I).add(y,\"touchend\",w).add(y,\"mousemove\",z,I).add(y,\"mouseup\",w)}function et(y){let M=y.nodeName||\"\";return A.includes(M)}function Q(){return(l?D:C)[$?\"mouse\":\"touch\"]}function st(y,M){let O=d.add(It(y)*-1),N=h.byDistance(y,!l).distance;return l||P(y)<v?N:g&&M?N*.5:h.byIndex(O.get(),0).distance}function it(y){let M=Et(y,s);$=M,U=l&&M&&!y.buttons&&G,G=ft(c.get(),e.get())>=2,!(M&&y.button!==0)&&(et(y.target)||(J=!0,o.pointerDown(y),u.useFriction(0).useDuration(0),c.set(e),nt(),H=o.readPoint(y),j=o.readPoint(y,x),p.emit(\"pointerDown\")))}function z(y){if(!Et(y,s)&&y.touches.length>=2)return w(y);let O=o.readPoint(y),N=o.readPoint(y,x),q=ft(O,H),X=ft(N,j);if(!Y&&!$&&(!y.cancelable||(Y=q>X,!Y)))return w(y);let Z=o.pointerMove(y);q>m&&(U=!0),u.useFriction(.3).useDuration(.75),f.start(),c.add(T(Z)),y.preventDefault()}function w(y){let O=h.byDistance(0,!1).index!==d.get(),N=o.pointerUp(y)*Q(),q=st(T(N),O),X=_t(N,q),Z=V-10*X,_=a+X/50;Y=!1,J=!1,E.clear(),u.useDuration(Z).useFriction(_),i.distance(q,!l),$=!1,p.emit(\"pointerUp\")}function K(y){U&&(y.stopPropagation(),y.preventDefault(),U=!1)}function B(){return J}return{init:rt,destroy:R,pointerDown:B}}function en(t,n){let s,c;function o(d){return d.timeStamp}function e(d,p){let l=`client${(p||t.scroll)===\"x\"?\"X\":\"Y\"}`;return(Et(d,n)?d:d.touches[0])[l]}function f(d){return s=d,c=d,e(d)}function i(d){let p=e(d)-e(c),b=o(d)-o(s)>170;return c=d,b&&(s=d),p}function u(d){if(!s||!c)return 0;let p=e(c)-e(s),b=o(d)-o(s),l=o(d)-o(c)>170,m=p/b;return b&&!l&&P(m)>.1?m:0}return{pointerDown:f,pointerMove:i,pointerUp:u,readPoint:e}}function on(){function t(r){let{offsetTop:s,offsetLeft:c,offsetWidth:o,offsetHeight:e}=r;return{top:s,right:c+o,bottom:s+e,left:c,width:o,height:e}}return{measure:t}}function rn(t){function n(s){return t*(s/100)}return{measure:n}}function sn(t,n,r,s,c,o,e){let f=[t].concat(s),i,u,h=[],d=!1;function p(g){return c.measureSize(e.measure(g))}function b(g){if(!o)return;u=p(t),h=s.map(p);function a(S){for(let x of S){if(d)return;let T=x.target===t,A=s.indexOf(x.target),I=T?u:h[A],L=p(T?t:s[A]);if(P(L-I)>=.5){g.reInit(),n.emit(\"resize\");break}}}i=new ResizeObserver(S=>{(gt(o)||o(g,S))&&a(S)}),r.requestAnimationFrame(()=>{f.forEach(S=>i.observe(S))})}function l(){d=!0,i&&i.disconnect()}return{init:b,destroy:l}}function cn(t,n,r,s,c,o){let e=0,f=0,i=c,u=o,h=t.get(),d=0;function p(){let I=s.get()-t.get(),L=!i,E=0;return L?(e=0,r.set(s),t.set(s),E=I):(r.set(t),e+=I/i,e*=u,h+=e,t.add(e),E=h-d),f=It(E),d=h,A}function b(){let I=s.get()-n.get();return P(I)<.001}function l(){return i}function m(){return f}function g(){return e}function a(){return x(c)}function S(){return T(o)}function x(I){return i=I,A}function T(I){return u=I,A}let A={direction:m,duration:l,velocity:g,seek:p,settled:b,useBaseFriction:S,useBaseDuration:a,useFriction:T,useDuration:x};return A}function un(t,n,r,s,c){let o=c.measure(10),e=c.measure(50),f=tt(.1,.99),i=!1;function u(){return!(i||!t.reachedAny(r.get())||!t.reachedAny(n.get()))}function h(b){if(!u())return;let l=t.reachedMin(n.get())?\"min\":\"max\",m=P(t[l]-n.get()),g=r.get()-n.get(),a=f.constrain(m/e);r.subtract(g*a),!b&&P(g)<o&&(r.set(t.constrain(r.get())),s.useDuration(25).useBaseFriction())}function d(b){i=!b}return{shouldConstrain:u,constrain:h,toggleActive:d}}function fn(t,n,r,s,c){let o=tt(-n+t,0),e=d(),f=h(),i=p();function u(l,m){return ft(l,m)<=1}function h(){let l=e[0],m=k(e),g=e.lastIndexOf(l),a=e.indexOf(m)+1;return tt(g,a)}function d(){return r.map((l,m)=>{let{min:g,max:a}=o,S=o.constrain(l),x=!m,T=vt(r,m);return x?a:T||u(g,S)?g:u(a,S)?a:S}).map(l=>parseFloat(l.toFixed(3)))}function p(){if(n<=t+c)return[o.max];if(s===\"keepSnaps\")return e;let{min:l,max:m}=f;return e.slice(l,m)}return{snapsContained:i,scrollContainLimit:f}}function an(t,n,r){let s=n[0],c=r?s-t:k(n);return{limit:tt(c,s)}}function ln(t,n,r,s){let o=n.min+.1,e=n.max+.1,{reachedMin:f,reachedMax:i}=tt(o,e);function u(p){return p===1?i(r.get()):p===-1?f(r.get()):!1}function h(p){if(!u(p))return;let b=t*(p*-1);s.forEach(l=>l.add(b))}return{loop:h}}function dn(t){let{max:n,length:r}=t;function s(o){let e=o-n;return r?e/-r:0}return{get:s}}function pn(t,n,r,s,c){let{startEdge:o,endEdge:e}=t,{groupSlides:f}=c,i=d().map(n.measure),u=p(),h=b();function d(){return f(s).map(m=>k(m)[e]-m[0][o]).map(P)}function p(){return s.map(m=>r[o]-m[o]).map(m=>-P(m))}function b(){return f(u).map(m=>m[0]).map((m,g)=>m+i[g])}return{snaps:u,snapsAligned:h}}function mn(t,n,r,s,c,o){let{groupSlides:e}=c,{min:f,max:i}=s,u=h();function h(){let p=e(o),b=!t||n===\"keepSnaps\";return r.length===1?[o]:b?p:p.slice(f,i).map((l,m,g)=>{let a=!m,S=vt(g,m);if(a){let x=k(g[0])+1;return Vt(x)}if(S){let x=pt(o)-k(g)[0]+1;return Vt(x,k(g)[0])}return l})}return{slideRegistry:u}}function gn(t,n,r,s,c){let{reachedAny:o,removeOffset:e,constrain:f}=s;function i(l){return l.concat().sort((m,g)=>P(m)-P(g))[0]}function u(l){let m=t?e(l):f(l),g=n.map((S,x)=>({diff:h(S-m,0),index:x})).sort((S,x)=>P(S.diff)-P(x.diff)),{index:a}=g[0];return{index:a,distance:m}}function h(l,m){let g=[l,l+r,l-r];if(!t)return l;if(!m)return i(g);let a=g.filter(S=>It(S)===m);return a.length?i(a):k(g)-r}function d(l,m){let g=n[l]-c.get(),a=h(g,m);return{index:l,distance:a}}function p(l,m){let g=c.get()+l,{index:a,distance:S}=u(g),x=!t&&o(g);if(!m||x)return{index:a,distance:l};let T=n[a]-S,A=l+h(T,0);return{index:a,distance:A}}return{byDistance:p,byIndex:d,shortcut:h}}function hn(t,n,r,s,c,o,e){function f(d){let p=d.distance,b=d.index!==n.get();o.add(p),p&&(s.duration()?t.start():(t.update(),t.render(1),t.update())),b&&(r.set(n.get()),n.set(d.index),e.emit(\"select\"))}function i(d,p){let b=c.byDistance(d,p);f(b)}function u(d,p){let b=n.clone().set(d),l=c.byIndex(b.get(),p);f(l)}return{distance:i,index:u}}function Sn(t,n,r,s,c,o,e,f){let i={passive:!0,capture:!0},u=0;function h(b){if(!f)return;function l(m){if(new Date().getTime()-u>10)return;e.emit(\"slideFocusStart\"),t.scrollLeft=0;let S=r.findIndex(x=>x.includes(m));Tt(S)&&(c.useDuration(0),s.index(S,0),e.emit(\"slideFocus\"))}o.add(document,\"keydown\",d,!1),n.forEach((m,g)=>{o.add(m,\"focus\",a=>{(gt(f)||f(b,a))&&l(g)},i)})}function d(b){b.code===\"Tab\"&&(u=new Date().getTime())}return{init:h}}function ut(t){let n=t;function r(){return n}function s(i){n=e(i)}function c(i){n+=e(i)}function o(i){n-=e(i)}function e(i){return Tt(i)?i:i.get()}return{get:r,set:s,add:c,subtract:o}}function kt(t,n){let r=t.scroll===\"x\"?e:f,s=n.style,c=null,o=!1;function e(p){return`translate3d(${p}px,0px,0px)`}function f(p){return`translate3d(0px,${p}px,0px)`}function i(p){if(o)return;let b=Jt(t.direction(p));b!==c&&(s.transform=r(b),c=b)}function u(p){o=!p}function h(){o||(s.transform=\"\",n.getAttribute(\"style\")||n.removeAttribute(\"style\"))}return{clear:h,to:i,toggleActive:u}}function yn(t,n,r,s,c,o,e,f,i){let h=at(c),d=at(c).reverse(),p=a().concat(S());function b(L,E){return L.reduce((v,C)=>v-c[C],E)}function l(L,E){return L.reduce((v,C)=>b(v,E)>0?v.concat([C]):v,[])}function m(L){return o.map((E,v)=>({start:E-s[v]+.5+L,end:E+n-.5+L}))}function g(L,E,v){let C=m(E);return L.map(D=>{let V=v?0:-r,G=v?r:0,H=v?\"end\":\"start\",j=C[D][H];return{index:D,loopPoint:j,slideLocation:ut(-1),translate:kt(t,i[D]),target:()=>f.get()>j?V:G}})}function a(){let L=e[0],E=l(d,L);return g(E,r,!1)}function S(){let L=n-e[0]-1,E=l(h,L);return g(E,-r,!0)}function x(){return p.every(({index:L})=>{let E=h.filter(v=>v!==L);return b(E,n)<=.1})}function T(){p.forEach(L=>{let{target:E,translate:v,slideLocation:C}=L,D=E();D!==C.get()&&(v.to(D),C.set(D))})}function A(){p.forEach(L=>L.translate.clear())}return{canLoop:x,clear:A,loop:T,loopPoints:p}}function bn(t,n,r){let s,c=!1;function o(i){if(!r)return;function u(h){for(let d of h)if(d.type===\"childList\"){i.reInit(),n.emit(\"slidesChanged\");break}}s=new MutationObserver(h=>{c||(gt(r)||r(i,h))&&u(h)}),s.observe(t,{childList:!0})}function e(){s&&s.disconnect(),c=!0}return{init:o,destroy:e}}function xn(t,n,r,s){let c={},o=null,e=null,f,i=!1;function u(){f=new IntersectionObserver(l=>{i||(l.forEach(m=>{let g=n.indexOf(m.target);c[g]=m}),o=null,e=null,r.emit(\"slidesInView\"))},{root:t.parentElement,threshold:s}),n.forEach(l=>f.observe(l))}function h(){f&&f.disconnect(),i=!0}function d(l){return lt(c).reduce((m,g)=>{let a=parseInt(g),{isIntersecting:S}=c[a];return(l&&S||!l&&!S)&&m.push(a),m},[])}function p(l=!0){if(l&&o)return o;if(!l&&e)return e;let m=d(l);return l&&(o=m),l||(e=m),m}return{init:u,destroy:h,get:p}}function Ln(t,n,r,s,c,o){let{measureSize:e,startEdge:f,endEdge:i}=t,u=r[0]&&c,h=l(),d=m(),p=r.map(e),b=g();function l(){if(!u)return 0;let S=r[0];return P(n[f]-S[f])}function m(){if(!u)return 0;let S=o.getComputedStyle(k(s));return parseFloat(S.getPropertyValue(`margin-${i}`))}function g(){return r.map((S,x,T)=>{let A=!x,I=vt(T,x);return A?p[x]+h:I?p[x]+d:T[x+1][f]-S[f]}).map(P)}return{slideSizes:p,slideSizesWithGaps:b,startGap:h,endGap:d}}function En(t,n,r,s,c,o,e,f,i){let{startEdge:u,endEdge:h,direction:d}=t,p=Tt(r);function b(a,S){return at(a).filter(x=>x%S===0).map(x=>a.slice(x,x+S))}function l(a){return a.length?at(a).reduce((S,x,T)=>{let A=k(S)||0,I=A===0,L=x===pt(a),E=c[u]-o[A][u],v=c[u]-o[x][h],C=!s&&I?d(e):0,D=!s&&L?d(f):0,V=P(v-D-(E+C));return T&&V>n+i&&S.push(x),L&&S.push(a.length),S},[]).map((S,x,T)=>{let A=Math.max(T[x-1]||0);return a.slice(A,S)}):[]}function m(a){return p?b(a,r):l(a)}return{groupSlides:m}}function Tn(t,n,r,s,c,o,e){let{align:f,axis:i,direction:u,startIndex:h,loop:d,duration:p,dragFree:b,dragThreshold:l,inViewThreshold:m,slidesToScroll:g,skipSnaps:a,containScroll:S,watchResize:x,watchSlides:T,watchDrag:A,watchFocus:I}=o,L=2,E=on(),v=E.measure(n),C=r.map(E.measure),D=tn(i,u),V=D.measureSize(v),G=rn(V),H=Zt(f,V),j=!d&&!!S,J=d||!!S,{slideSizes:Y,slideSizesWithGaps:U,startGap:$,endGap:rt}=Ln(D,v,C,r,J,c),R=En(D,V,g,d,v,C,$,rt,L),{snaps:nt,snapsAligned:et}=pn(D,H,v,C,R),Q=-k(nt)+k(U),{snapsContained:st,scrollContainLimit:it}=fn(V,Q,et,S,L),z=j?st:et,{limit:w}=an(Q,z,d),K=Bt(pt(z),h,d),B=K.clone(),F=at(r),y=({dragHandler:ot,scrollBody:bt,scrollBounds:xt,options:{loop:mt}})=>{mt||xt.constrain(ot.pointerDown()),bt.seek()},M=({scrollBody:ot,translate:bt,location:xt,offsetLocation:mt,previousLocation:Rt,scrollLooper:qt,slideLooper:Ut,dragHandler:$t,animation:Qt,eventHandler:Ft,scrollBounds:Kt,options:{loop:Pt}},Ct)=>{let Ot=ot.settled(),Xt=!Kt.shouldConstrain(),wt=Pt?Ot:Ot&&Xt;wt&&!$t.pointerDown()&&(Qt.stop(),Ft.emit(\"settle\")),wt||Ft.emit(\"scroll\");let Yt=xt.get()*Ct+Rt.get()*(1-Ct);mt.set(Yt),Pt&&(qt.loop(ot.direction()),Ut.loop()),bt.to(mt.get())},O=Wt(s,c,()=>y(yt),ot=>M(yt,ot)),N=.68,q=z[K.get()],X=ut(q),Z=ut(q),_=ut(q),W=ut(q),ct=cn(X,_,Z,W,p,N),ht=gn(d,z,Q,w,W),St=hn(O,K,B,ct,ht,W,e),Dt=dn(w),Mt=dt(),Ht=xn(n,r,e,m),{slideRegistry:At}=mn(j,S,z,it,R,F),jt=Sn(t,r,At,St,ct,Mt,e,I),yt={ownerDocument:s,ownerWindow:c,eventHandler:e,containerRect:v,slideRects:C,animation:O,axis:D,dragHandler:nn(D,t,s,c,W,en(D,c),X,O,St,ct,ht,K,e,G,b,l,a,N,A),eventStore:Mt,percentOfView:G,index:K,indexPrevious:B,limit:w,location:X,offsetLocation:_,previousLocation:Z,options:o,resizeHandler:sn(n,e,c,r,D,x,E),scrollBody:ct,scrollBounds:un(w,_,W,ct,G),scrollLooper:ln(Q,w,_,[X,_,Z,W]),scrollProgress:Dt,scrollSnapList:z.map(Dt.get),scrollSnaps:z,scrollTarget:ht,scrollTo:St,slideLooper:yn(D,V,Q,Y,U,nt,z,_,r),slideFocus:jt,slidesHandler:bn(n,e,T),slidesInView:Ht,slideIndexes:F,slideRegistry:At,slidesToScroll:R,target:W,translate:kt(D,n)};return yt}function In(){let t={},n;function r(u){n=u}function s(u){return t[u]||[]}function c(u){return s(u).forEach(h=>h(n,u)),i}function o(u,h){return t[u]=s(u).concat([h]),i}function e(u,h){return t[u]=s(u).filter(d=>d!==h),i}function f(){t={}}let i={init:r,emit:c,off:e,on:o,clear:f};return i}var vn={align:\"center\",axis:\"x\",container:null,slides:null,containScroll:\"trimSnaps\",direction:\"ltr\",slidesToScroll:1,inViewThreshold:0,breakpoints:{},dragFree:!1,dragThreshold:10,loop:!1,skipSnaps:!1,duration:25,startIndex:0,active:!0,watchDrag:!0,watchResize:!0,watchSlides:!0,watchFocus:!0};function Dn(t){function n(o,e){return zt(o,e||{})}function r(o){let e=o.breakpoints||{},f=lt(e).filter(i=>t.matchMedia(i).matches).map(i=>e[i]).reduce((i,u)=>n(i,u),{});return n(o,f)}function s(o){return o.map(e=>lt(e.breakpoints||{})).reduce((e,f)=>e.concat(f),[]).map(t.matchMedia)}return{mergeOptions:n,optionsAtMedia:r,optionsMediaQueries:s}}function Mn(t){let n=[];function r(o,e){return n=e.filter(({options:f})=>t.optionsAtMedia(f).active!==!1),n.forEach(f=>f.init(o,t)),e.reduce((f,i)=>Object.assign(f,{[i.name]:i}),{})}function s(){n=n.filter(o=>o.destroy())}return{init:r,destroy:s}}function Gt(t,n,r){let s=t.ownerDocument,c=s.defaultView,o=Dn(c),e=Mn(o),f=dt(),i=In(),{mergeOptions:u,optionsAtMedia:h,optionsMediaQueries:d}=o,{on:p,off:b,emit:l}=i,m=D,g=!1,a,S=u(vn,Gt.globalOptions),x=u(S),T=[],A,I,L;function E(){let{container:F,slides:y}=x;I=(Lt(F)?t.querySelector(F):F)||t.children[0];let O=Lt(y)?I.querySelectorAll(y):y;L=[].slice.call(O||I.children)}function v(F){let y=Tn(t,I,L,s,c,F,i);if(F.loop&&!y.slideLooper.canLoop()){let M=Object.assign({},F,{loop:!1});return v(M)}return y}function C(F,y){g||(S=u(S,F),x=h(S),T=y||T,E(),a=v(x),d([S,...T.map(({options:M})=>M)]).forEach(M=>f.add(M,\"change\",D)),x.active&&(a.translate.to(a.location.get()),a.animation.init(),a.slidesInView.init(),a.slideFocus.init(B),a.eventHandler.init(B),a.resizeHandler.init(B),a.slidesHandler.init(B),a.options.loop&&a.slideLooper.loop(),I.offsetParent&&L.length&&a.dragHandler.init(B),A=e.init(B,T)))}function D(F,y){let M=R();V(),C(u({startIndex:M},F),y),i.emit(\"reInit\")}function V(){a.dragHandler.destroy(),a.eventStore.clear(),a.translate.clear(),a.slideLooper.clear(),a.resizeHandler.destroy(),a.slidesHandler.destroy(),a.slidesInView.destroy(),a.animation.destroy(),e.destroy(),f.clear()}function G(){g||(g=!0,f.clear(),V(),i.emit(\"destroy\"),i.clear())}function H(F,y,M){!x.active||g||(a.scrollBody.useBaseFriction().useDuration(y===!0?0:x.duration),a.scrollTo.index(F,M||0))}function j(F){let y=a.index.add(1).get();H(y,F,-1)}function J(F){let y=a.index.add(-1).get();H(y,F,1)}function Y(){return a.index.add(1).get()!==R()}function U(){return a.index.add(-1).get()!==R()}function $(){return a.scrollSnapList}function rt(){return a.scrollProgress.get(a.location.get())}function R(){return a.index.get()}function nt(){return a.indexPrevious.get()}function et(){return a.slidesInView.get()}function Q(){return a.slidesInView.get(!1)}function st(){return A}function it(){return a}function z(){return t}function w(){return I}function K(){return L}let B={canScrollNext:Y,canScrollPrev:U,containerNode:w,internalEngine:it,destroy:G,off:b,on:p,emit:l,plugins:st,previousScrollSnap:nt,reInit:m,rootNode:z,scrollNext:j,scrollPrev:J,scrollProgress:rt,scrollSnapList:$,scrollTo:H,selectedScrollSnap:R,slideNodes:K,slidesInView:et,slidesNotInView:Q};return C(n,r),setTimeout(()=>i.emit(\"init\"),0),B}Gt.globalOptions=void 0;export{Gt as default};\n//# sourceMappingURL=embla-carousel.mjs.map","/* esm.sh - embla-carousel-react@8.5.2 */\nimport{useRef as l,useState as f,useCallback as p,useEffect as c}from\"react\";import{areOptionsEqual as E,arePluginsEqual as O,canUseDOM as w}from\"/embla-carousel-reactive-utils@8.5.2/es2022/embla-carousel-reactive-utils.mjs\";import m from\"/embla-carousel@8.5.2/es2022/embla-carousel.mjs\";function b(e={},r=[]){let t=l(e),n=l(r),[u,s]=f(),[a,d]=f(),o=p(()=>{u&&u.reInit(t.current,n.current)},[u]);return c(()=>{E(t.current,e)||(t.current=e,o())},[e,o]),c(()=>{O(n.current,r)||(n.current=r,o())},[r,o]),c(()=>{if(w()&&a){m.globalOptions=b.globalOptions;let i=m(a,t.current,n.current);return s(i),()=>i.destroy()}else s(void 0)},[a,s]),[d,u]}b.globalOptions=void 0;export{b as default};\n//# sourceMappingURL=embla-carousel-react.mjs.map","/* esm.sh - embla-carousel-react@8.5.2 */\nimport \"/embla-carousel-reactive-utils@8.5.2/es2022/embla-carousel-reactive-utils.mjs\";\nimport \"/embla-carousel@8.5.2/es2022/embla-carousel.mjs\";\nexport * from \"/embla-carousel-react@8.5.2/X-ZXJlYWN0LHJlYWN0LWRvbQ/es2022/embla-carousel-react.mjs\";\nexport { default } from \"/embla-carousel-react@8.5.2/X-ZXJlYWN0LHJlYWN0LWRvbQ/es2022/embla-carousel-react.mjs\";\n","/**\n * ProgrammesCarousel — Embla-driven carousel of flip cards.\n *\n * Card content IS editable from the property panel: the `Programmes` array (one item per card: title, image, frontDescriptionLabel, frontDescription, impact[], activities[]) is exposed and pre-filled from the PROGRAMMES list near the bottom of this file. If the array is ever empty, the component falls back to that same PROGRAMMES list, so there's always content. Edit cards in the panel for per-instance copy, or edit PROGRAMMES for the shared default.\n *\n * Colors are HARDCODED constants in the COLORS section below — intentionally NOT exposed as controls (the palette is locked to the brand). Visuals are rendered as plain JSX inside this component (no Framer design component round-trip), and the active/inactive treatment is driven by a single CSS variable `--pc-activeness` (0..1) that the scroll tween writes per slide — so every fade (front gradient, description, flip icon) shares Embla's exact frame-by-frame easing.\n *\n * Card artwork is an IMAGE UPLOAD PER PROGRAMME (`image` on each array item) — there is no global background/leaf image. The front face is a vertical flex column anchored at both ends: counter pill + title centred at the top, a left-aligned footer row (bold `frontDescriptionLabel` over `frontDescription`, flip icon inline to its right) pinned to the bottom with `marginTop: auto`, and the illustration floating in the middle band, which soaks up any spare height. An image-less card still measures the same as its neighbours — the middle band is just empty. On the back the image is reused oversized and faded as a silhouette.\n *\n * Sizing (slot width, gap, padding, font sizes, max-width) switches between desktop and mobile values based on the carousel's own measured width — driven by a ResizeObserver, so it responds to the actual rendered container size (correct in Framer's preview frames, where viewport-based @media queries see the outer browser, not the visible frame). Tune values in the RESPONSIVE section below.\n *\n * Heights are NOT fixed — each slide auto-sizes to its currently-presented face (front or back) via measured per-face heights and the track grows to fit. On flip, the rotator's height animates from front-height to back-height in parallel with the rotateY transform (same duration and easing) so the card visibly grows or shrinks as it flips.\n *\n * Carousel width fills its parent frame — set the parent's width on canvas.\n *\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n */import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";// Pinned to 8.5.2. `?external=react,react-dom` prevents esm.sh from bundling\n// its own React — without this, embla would load a second React instance and\n// hooks would throw \"Invalid hook call\" inside Framer.\n// @ts-ignore -- URL import resolved by Framer runtime\nimport useEmblaCarousel from\"https://esm.sh/embla-carousel-react@8.5.2?external=react,react-dom\";/* ── Constants ────────────────────────────────────────────────────── */const NAV_Z=4;const DEFAULT_SLOT_WIDTH=432;const DEFAULT_SLOT_HEIGHT=600// empty-placeholder fallback only\n;// Hardcoded behaviour — not exposed as property controls.\nconst INACTIVE_SCALE=240/432// inactive (left/right) cards render at 240px against the 432px active slot width\n;const LOOP=true;// Embla can only loop when the track holds enough total slide width to refill both edges as it scrolls. At desktop sizing that's 432 + 80 = 512px per slide against a 1280px container, so three programmes (1536px) leave only 256px of slack and the loop collapses — no cards either side of the active one. Below this many slides we repeat the programme list end-to-end until the track clears it. Four is the first count that loops cleanly at desktop sizing, so 3 cards render as 6 slides and 4-or-more are left exactly as authored. (The real condition is a width relationship, not a count — this constant is the stable proxy for it. Mobile sizing has plenty of slack at any count, so the repeat is harmless there.)\nconst MIN_LOOP_SLIDES=4;const AUTO_FLIP_ON_NAVIGATE=true;const KEYBOARD=true;const TRANSITION_DURATION=25// Embla physics units, lower = snappier\n;const FLIP_DURATION_MS=900;const FLIP_CROSS_MS=180// ms at which the FLIP_EASING rotation crosses 90deg (edge-on); FLIP_EASING is front-loaded so this is ~0.2*duration, not half. Used to hard-swap face opacity at the invisible edge-on moment so only one face ever paints (fixes Safari not culling the back-facing overflow).\n;const FLIP_EASING=\"cubic-bezier(0.22, 0.61, 0.36, 1)\";const PERSPECTIVE_PX=1e3;// Authored corner radius on the card faces. transform: scale on the slide tween shrinks all rendered geometry including border-radius — a 24px corner on a card scaled to 0.6 renders as ~14.4px — so the CSS rule below divides the radius back out via --pc-radius-scale (written per-frame in applyTween).\nconst CARD_BORDER_RADIUS_PX=40;// HOW MUCH of that shrink to undo, 0..1. This is the dial for how round inactive cards look.\n//   1 = fully counter-scale: the on-screen radius is pinned at CARD_BORDER_RADIUS_PX on every card. Correct in absolute pixels, but an inactive card is 44% narrower, so the same corner eats nearly twice the proportion of its edge and reads as noticeably rounder.\n//   0 = no counter-scale: the radius shrinks with the card, so every card keeps the SAME PROPORTION and none looks rounder — but the corner then visibly animates through the scale tween.\n// Values in between split the difference, which is what we want: inactive corners tighten up without holding dead constant. At 0.5 an inactive desktop card renders a ~28.6px corner (11.9% of its width) against the active card's 40px (9.3%) — close enough to read as one family. Lower this to tighten inactive corners further.\nconst INACTIVE_RADIUS_COMPENSATION=.5;// Active-card hover lift: card grows by this many pixels when hovered. Inactive cards don't react. The scale factor is derived from the live slotWidth so the visual growth is exactly this many pixels at both breakpoints. Easing matches Framer's \"Ease In Out\" preset (Bezier 0.44, 0, 0.56, 1, 0.4s).\nconst HOVER_GROWTH_PX=10;const HOVER_DURATION_MS=400;const HOVER_EASING=\"cubic-bezier(0.44, 0, 0.56, 1)\";/* ── Colors (hardcoded — intentionally NOT exposed as controls) ───── */// The brand palette is locked, so these live in code rather than the panel. Change a value here and every instance updates on publish.\nconst frontGradient1=\"#D9FF01\";const frontGradient2=\"#CFFFCF\";const frontGradient3=\"#EAC4FF\";const backBg=\"#111113\";const pillBgFront=\"#111113\";const pillBgBack=\"#FFFFFF\";const pillText=\"#FFFFFF\"// front pill text\n;const pillTextBack=\"#111113\"// back pill text\n;const titleColorFront=\"#0B0B0B\";const titleColorBack=\"#FFFFFF\";const descriptionColor=\"#111111\";const sectionHeaderColor=\"#FFFFFF\";const sectionDividerColor=\"rgba(255,255,255,0.25)\";const impactTextColor=\"#E4E4E7\";const impactArrowColor=\"#FFFFFF\";const activityTextColor=\"#D4D4D8\";const activityDividerColor=\"rgba(212,212,216,0.4)\";const flipBgColor=\"#D4FF3A\";const flipIconColor=\"#191919\"// matches the design asset's glyph fill (and the card hairline)\n;const cardBorderColor=\"#191919\";/* ── Responsive (tune values here) ────────────────────────────────── */const MOBILE_BREAKPOINT_PX=960;const TABLET_MAX_BREAKPOINT_PX=1024;const TABLET_CARD_MAX_WIDTH=\"40vw\";const EDGE_FADE_PX=56;const DESKTOP_CARD_WIDTH=432;const MOBILE_CARD_WIDTH=300;const DESKTOP_CARD_GAP=80;const MOBILE_CARD_GAP=16;const DESKTOP_MAX_WIDTH=1280;const MOBILE_MAX_WIDTH=0// 0 = no cap, edge-to-edge\n;const NAV_INSET=16// desktop: distance from the carousel edge to the absolutely-positioned nav button\n;// Mobile only: keeps the last wrapped line of \"Example activities\" clear of the flip icon, which sits absolutely positioned in the back face's bottom-right corner. Applied to the tag list alone — the section heading and its rule stay full width, so the divider still runs edge to edge.\nconst MOBILE_ACTIVITIES_RIGHT_PAD=32;const MOBILE_NAV_GAP=16// mobile: horizontal gap between prev and next arrows in the row positioned inside the carousel's bottom-padding strip\n;// Per-element type sizes. Body sizes default to the Framer text styles `/Body R` (22px) and `/Body S` (18-ish via line-height), `/Carousel Card Heading` (56px). Section headers (\"Impact\" / \"Example activities\") match the design's 22px / 110% / 0 tracking. Mobile sizes are eyeballed proportional reductions.\nconst TITLE_FRONT_SIZE={desktop:56,mobile:32};const TITLE_BACK_SIZE={desktop:56,mobile:32};const DESCRIPTION_SIZE={desktop:22,mobile:18};const SECTION_HEADER_SIZE={desktop:22,mobile:16};const IMPACT_ITEM_SIZE={desktop:18,mobile:14};const ACTIVITY_TAG_SIZE={desktop:14,mobile:12};const CARD_PADDING={desktop:\"34px\",mobile:\"24px\"};// Heading variation axes. \"LIVING SANS Variable 1\" is a VARIABLE font exposing four axes, and its registered @font-face pins only font-weight 400 — so CSS font-weight can't move it and the file would otherwise render at its default instance. These are the exact axis values Framer's own Living Sans headings on this site set (verified against the published page), so the card titles match the page headlines. A no-op on any font lacking these axes.\nconst HEADING_FONT_VARIATION_AXES='\"wght\" 100, \"wdth\" 800, \"MOTN\" 100, \"TRCK\" 0';// Body copy uses the OC Oly variable font, whose loaded named instance sits at Thin (wght 100). CSS font-weight alone doesn't move custom variable families in Framer, so we drive the weight axis explicitly via fontVariationSettings. 400 = regular. Applied on each face container so it cascades to all body text (pill, description, impact, activities). NOTE: requires the loaded font face to expose the `wght` axis — if the body still looks thin after publishing, Framer loaded a static Thin subset and a heavier instance must be added in the project.\nconst BODY_FONT_WGHT=400;// Weight that matches the \"Living Sans Text Bold\" @font-face (registered at 700). Every \"Living Sans Text *\" cut is a SEPARATE STATIC family with exactly one weight — Regular is 400-only — so asking the Regular family for 700 gets you a browser-synthesised fake bold, not the real Bold drawing. The description label therefore switches FAMILY (see labelFontV1) and uses this purely so the weight matches the face it selects.\nconst BODY_FONT_WGHT_BOLD=700;// Front face layout. A vertical flex column anchored at both ends: counter pill + title at the TOP, then the image zone holding the per-programme illustration (centred, `contain`-fitted so nothing is cropped), then a footer row pinned to the BOTTOM carrying the left-aligned label + description with the flip icon inline beside them. The zone height below is the middle band an image-less card still reserves, so every card measures the same. The illustration is an upload PER PROGRAMME (see `Programme.image`) rather than a pair of global leaf images, so there is no shared background image any more. Zone + footer heights are unchanged from the original layout, so the card's overall height is the same — only the order of the stack changed.\nconst FRONT_IMAGE_ZONE_HEIGHT={desktop:380,mobile:300};const FRONT_IMAGE_WIDTH_PCT=72// width of the image box as a % of card width; the image is contain-fitted inside it, so any uploaded aspect ratio works\n;const FRONT_FOOTER_GAP=12// horizontal gap between the footer's description column and the flip icon beside it\n;// Flip icon geometry. Both faces now use the same tall vertical capsule (38x66). A 58px radius exceeds half the 38px width, so the browser clamps it to a 19px pill on the left/right edges — that's intentional, it keeps the ends fully round at any height. `glyph` is the rendered size of the rotate mark inside the button (the source mark is 24.5556 units). The two constants are kept separate rather than merged so either face can be retuned on its own without disturbing the other.\nconst FLIP_ICON_HOVER_MS=400// how long the glyph takes to spin 180deg when the card is hovered\n;// Mobile runs a smaller pill. `glyph` is scaled with the button (27 x 34/38 ~ 24) so the mark keeps the same optical inset — roughly 5px of pill either side of it at both breakpoints. `radius` is unchanged because 58px already exceeds half the width at either size, so the browser clamps it to a full capsule regardless.\nconst FRONT_FLIP_ICON={desktop:{width:38,height:66,radius:\"58px\",glyph:27},mobile:{width:34,height:56,radius:\"58px\",glyph:24}};const BACK_FLIP_ICON={desktop:{width:38,height:66,radius:\"58px\",glyph:27},mobile:{width:34,height:56,radius:\"58px\",glyph:24}};// Back-face silhouette. The programme's own image is reused here, oversized and bled off the card edges — same placement and opacity as the previous leaf treatment, so the back face is visually unchanged. `leftPct` positions the image's centre (translateX(-50%) applies); `bottomPct` is % of card height, negative when it extends below the card.\nconst BACK_IMAGE={widthPct:179,aspectRatio:1.25,leftPct:60,bottomPct:-24};const BACK_IMAGE_OPACITY=.1;const FRONT=\"Front\";const BACK=\"Back\";/* ── Helpers ──────────────────────────────────────────────────────── */const clamp=(n,min,max)=>Math.min(Math.max(n,min),max);// All CSS-variable fades live here. --pc-activeness (0..1) is written by applyTween on the slide's [data-pc-tween] node; it cascades to every descendant via CSS variable inheritance. --pc-scale counter-scales the face hairline so it stays a true 1px; --pc-radius-scale does the same job for the corner radius but only PARTLY (see INACTIVE_RADIUS_COMPENSATION), which is why they're two variables and not one. --pc-hover-scale drives the active-card hover lift.\nconst CARD_CSS=`\n[data-pc-tween] [data-pc-card-face] {\n    border-radius: calc(${CARD_BORDER_RADIUS_PX}px / var(--pc-radius-scale, 1));\n    border: calc(1px / var(--pc-scale, 1)) solid ${cardBorderColor};\n}\n[data-pc-tween]:hover [data-pc-hover-target] {\n    transform: scale(var(--pc-hover-scale, 1));\n}\n[data-pc-tween]:hover [data-pc-flip] {\n    transform: rotate(180deg);\n}\n`;/* ── Inline SVGs ──────────────────────────────────────────────────── */// Flip-affordance button (coloured pill/circle + the design's rotate glyph). `bg` fills the button, `stroke` fills the glyph, and `width`/`height`/`radius`/`glyph` come from FRONT_FLIP_ICON or BACK_FLIP_ICON so each face can be sized and shaped on its own. `data-pc-flip` sits on the SVG, NOT the wrapper, so hovering the card spins only the glyph and the pill stays still — on a circle the difference was invisible, but the capsule (38x66 desktop, 34x56 mobile) visibly tumbles if you rotate the wrapper. (The hovered face's glyph spins; the hidden face's spins too but isn't visible, which is harmless.) `flipMarker` is the FRONT-only flag that also fades the icon in with --pc-activeness via [data-pc-fade-in] (the back icon is always visible when the card is flipped, so it never fades).\n// The button's fill is a CSS background on the wrapper rather than an SVG circle, so a non-circular `radius` works without touching the artwork. The svg carries ONLY the design-supplied 24.5556-unit rotate glyph, verbatim, scaled to `glyph` and centred by flexbox. The original asset's alpha mask was a full-bounds rect, i.e. a no-op — dropped.\nfunction FlipIcon({bg,stroke,width,height,radius,glyph,style,flipMarker}){return /*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,\"data-pc-fade-in\":flipMarker?\"\":undefined,// Same hairline as the card faces. A CSS border on the wrapper (not an SVG stroke) so it stays a true 1px at any icon size; border-box keeps the authored outer size.\nstyle:{width,height,background:bg,border:`1px solid ${cardBorderColor}`,borderRadius:radius,boxSizing:\"border-box\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",...style},children:/*#__PURE__*/_jsx(\"svg\",{\"data-pc-flip\":\"\",viewBox:\"0 0 24.5556 24.5556\",width:glyph,height:glyph,style:{display:\"block\",transition:`transform ${FLIP_ICON_HOVER_MS}ms ease`,transformOrigin:\"center center\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M5.21824 16.4208C4.84308 15.7728 4.56172 15.1078 4.37414 14.4257C4.18656 13.7436 4.09277 13.0445 4.09277 12.3282C4.09277 10.0432 4.88571 8.09924 6.47159 6.4963C8.05747 4.89337 9.99293 4.09191 12.278 4.09191H12.457L10.82 2.45487L12.2524 1.02246L16.345 5.11505L12.2524 9.20765L10.82 7.77524L12.457 6.1382H12.278C10.5727 6.1382 9.12325 6.7393 7.92958 7.9415C6.73591 9.1437 6.13907 10.6059 6.13907 12.3282C6.13907 12.7716 6.19023 13.2065 6.29254 13.6328C6.39486 14.0591 6.54833 14.4769 6.75296 14.8861L5.21824 16.4208ZM12.3035 23.5317L8.21095 19.4391L12.3035 15.3465L13.7359 16.7789L12.0989 18.416H12.278C13.9832 18.416 15.4327 17.8149 16.6263 16.6127C17.82 15.4105 18.4168 13.9482 18.4168 12.2259C18.4168 11.7826 18.3657 11.3477 18.2634 10.9214C18.1611 10.4951 18.0076 10.0773 17.803 9.66806L19.3377 8.13334C19.7128 8.78133 19.9942 9.44638 20.1818 10.1285C20.3694 10.8106 20.4631 11.5097 20.4631 12.2259C20.4631 14.511 19.6702 16.4549 18.0843 18.0579C16.4984 19.6608 14.563 20.4623 12.278 20.4623H12.0989L13.7359 22.0993L12.3035 23.5317Z\",fill:stroke})})});}/* ── Empty Placeholder ────────────────────────────────────────────── */function EmptyPlaceholder(){return /*#__PURE__*/_jsx(\"div\",{style:{width:DEFAULT_SLOT_WIDTH,height:DEFAULT_SLOT_HEIGHT,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",background:\"#f5f5f4\",border:\"2px dashed rgba(0, 0, 0, 0.15)\",borderRadius:40,color:\"#666\",fontFamily:\"system-ui, -apple-system, sans-serif\",fontSize:14,textAlign:\"center\",padding:24,boxSizing:\"border-box\"},children:'Add at least one programme to the \"Programmes\" array.'});}/* ── Main component ───────────────────────────────────────────────── */function ProgrammesCarousel(props){const{programmes,headingFontV4,bodyFontV2,labelFontV1,prevArrow,nextArrow,paddingY}=props;// Use the panel-authored array when it has at least one card; otherwise fall back to the hardcoded PROGRAMMES list so there's always content to show.\nconst safeProgrammes=Array.isArray(programmes)&&programmes.length>0?programmes:PROGRAMMES;const cardCount=safeProgrammes.length;const hasCards=cardCount>0;const canLoop=LOOP&&cardCount>1;// How many times the programme list is laid down in the track. 1 = as authored. Only ever >1 when looping is on AND there are too few programmes to loop (see MIN_LOOP_SLIDES); a single programme never loops, so it never repeats. Every count from MIN_LOOP_SLIDES up resolves to 1 and behaves exactly as before.\nconst loopRepeats=canLoop?Math.max(1,Math.ceil(MIN_LOOP_SLIDES/cardCount)):1;// The number of SLIDES in the track, which is what every index in this component is measured in — `vi` (virtual index) runs 0..slideCount-1, while `cardIndex` runs 0..cardCount-1 and is the only thing that selects content. Keep the two straight: anything the viewer reads (the counter) uses cardIndex; anything Embla or the DOM addresses (faces, refs, heights, snap index) uses vi.\nconst slideCount=cardCount*loopRepeats;const INITIAL_INDEX=0;// `isMobile` flips when the carousel's own measured width crosses MOBILE_BREAKPOINT_PX (set by the ResizeObserver below). All sizing values derive from it, so they update together when the breakpoint crosses.\nconst[isMobile,setIsMobile]=React.useState(false);const[carouselWidth,setCarouselWidth]=React.useState(0);const slotWidth=isMobile?MOBILE_CARD_WIDTH:DESKTOP_CARD_WIDTH;const cardGap=isMobile?MOBILE_CARD_GAP:DESKTOP_CARD_GAP;const maxWidth=isMobile?MOBILE_MAX_WIDTH:DESKTOP_MAX_WIDTH;const titleFrontSize=isMobile?TITLE_FRONT_SIZE.mobile:TITLE_FRONT_SIZE.desktop;const titleBackSize=isMobile?TITLE_BACK_SIZE.mobile:TITLE_BACK_SIZE.desktop;const descriptionSize=isMobile?DESCRIPTION_SIZE.mobile:DESCRIPTION_SIZE.desktop;const sectionHeaderSize=isMobile?SECTION_HEADER_SIZE.mobile:SECTION_HEADER_SIZE.desktop;const impactItemSize=isMobile?IMPACT_ITEM_SIZE.mobile:IMPACT_ITEM_SIZE.desktop;const activityTagSize=isMobile?ACTIVITY_TAG_SIZE.mobile:ACTIVITY_TAG_SIZE.desktop;const cardPadding=isMobile?CARD_PADDING.mobile:CARD_PADDING.desktop;const frontFlipIcon=isMobile?FRONT_FLIP_ICON.mobile:FRONT_FLIP_ICON.desktop;const backFlipIcon=isMobile?BACK_FLIP_ICON.mobile:BACK_FLIP_ICON.desktop;const[emblaRef,emblaApi]=useEmblaCarousel({loop:canLoop,align:\"center\",startIndex:INITIAL_INDEX,skipSnaps:false,dragFree:false,duration:TRANSITION_DURATION});const[selectedIndex,setSelectedIndex]=React.useState(INITIAL_INDEX);const[faces,setFaces]=React.useState(()=>Array(Math.max(1,slideCount)).fill(FRONT));const rootRef=React.useRef(null);const tweenNodes=React.useRef([]);// Per-card measured face heights, used to set explicit `height` on the rotator so the slot fits the currently-visible face exactly (no white space when back is taller than front). The rotator's height transitions over FLIP_DURATION_MS in parallel with the rotateY transform so the card grows or shrinks as it flips.\nconst frontFaceRefs=React.useRef([]);const backFaceRefs=React.useRef([]);const[frontHeights,setFrontHeights]=React.useState([]);const[backHeights,setBackHeights]=React.useState([]);const collectTweenNodes=React.useCallback(api=>{tweenNodes.current=api.slideNodes().map(s=>s.querySelector(\"[data-pc-tween]\")).filter(n=>n!==null);},[]);// Reset BEFORE the scroll starts so the active card flips back to Front while it slides away — instead of sliding away on its back and snapping to Front after the select event fires.\nconst resetAllFaces=React.useCallback(()=>{if(!AUTO_FLIP_ON_NAVIGATE)return;setFaces(prev=>prev.every(f=>f===FRONT)?prev:Array(prev.length).fill(FRONT));},[]);// `slotWidth` is a state-derived value; we mirror it in a ref so the tween callback (which is memoised once per mount via useCallback) always reads the latest value without needing to be recreated when the breakpoint flips.\nconst slotWidthRef=React.useRef(slotWidth);slotWidthRef.current=slotWidth;const applyTween=React.useCallback((api,eventName)=>{const engine=api.internalEngine();const scrollProgress=api.scrollProgress();const slidesInView=api.slidesInView();const isScrollEvent=eventName===\"scroll\";const snapCount=api.scrollSnapList().length;const sw=slotWidthRef.current;api.scrollSnapList().forEach((scrollSnap,snapIndex)=>{let diffToTarget=scrollSnap-scrollProgress;const slidesInSnap=engine.slideRegistry[snapIndex];slidesInSnap.forEach(slideIndex=>{if(isScrollEvent&&!slidesInView.includes(slideIndex))return;if(engine.options.loop){engine.slideLooper.loopPoints.forEach(loopItem=>{const target=loopItem.target();if(slideIndex===loopItem.index&&target!==0){const sign=Math.sign(target);if(sign===-1)diffToTarget=scrollSnap-(1+scrollProgress);if(sign===1)diffToTarget=scrollSnap+(1-scrollProgress);}});}const signedDistance=diffToTarget*snapCount;const distance=clamp(Math.abs(signedDistance),0,1);const scale=1-(1-INACTIVE_SCALE)*distance;const shift=-Math.sign(signedDistance)*((1-scale)*sw)/2;// 0 when card is at an adjacent snap, 1 when it's the active snap. Drives every active-state fade via the [data-pc-fade-in/out] CSS rules.\nconst activeness=1-distance;const node=tweenNodes.current[slideIndex];if(node){node.style.transform=`translateX(${shift.toFixed(2)}px) scale(${scale.toFixed(3)})`;// Read by CARD_CSS to keep the face hairline a true 1px despite this transform: scale.\nnode.style.setProperty(\"--pc-scale\",scale.toFixed(3));// Same idea for the corner radius, but only partly undone — at compensation 1 this equals `scale` (radius pinned in absolute px), at 0 it's 1 (radius shrinks with the card). Computed here rather than nested inside the CSS calc so the stylesheet stays a plain division.\nnode.style.setProperty(\"--pc-radius-scale\",(1-INACTIVE_RADIUS_COMPENSATION*(1-scale)).toFixed(3));node.style.setProperty(\"--pc-activeness\",activeness.toFixed(3));}});});},[]);React.useEffect(()=>{if(!emblaApi||!hasCards)return;collectTweenNodes(emblaApi);applyTween(emblaApi);// Drag-initiated changes can't be predicted — fall back to Embla's select event. For button/click/key navigation we set selectedIndex synchronously in the handlers so the scale tween starts at the user's input moment instead of mid-scroll.\nconst onSelect=()=>{setSelectedIndex(emblaApi.selectedScrollSnap());if(AUTO_FLIP_ON_NAVIGATE){setFaces(prev=>prev.every(f=>f===FRONT)?prev:Array(prev.length).fill(FRONT));}};const onScrollOrInit=(api,eventName)=>applyTween(api,eventName);emblaApi.on(\"select\",onSelect);emblaApi.on(\"reInit\",onSelect);emblaApi.on(\"reInit\",collectTweenNodes);emblaApi.on(\"reInit\",onScrollOrInit);emblaApi.on(\"scroll\",onScrollOrInit);emblaApi.on(\"slideFocus\",onScrollOrInit);onSelect();return()=>{emblaApi.off(\"select\",onSelect);emblaApi.off(\"reInit\",onSelect);emblaApi.off(\"reInit\",collectTweenNodes);emblaApi.off(\"reInit\",onScrollOrInit);emblaApi.off(\"scroll\",onScrollOrInit);emblaApi.off(\"slideFocus\",onScrollOrInit);};},[emblaApi,collectTweenNodes,applyTween,hasCards]);// Watch the carousel's own width and flip `isMobile` only when the breakpoint is actually crossed. Embla's reInit() rebuilds the engine and re-fires every reInit subscriber — doing it on every resize tick (window drag, layout shift) pegs the main thread. Using the carousel's measured width (not the viewport) means Framer's preview frames trigger correctly even when the outer browser window is wider.\nReact.useEffect(()=>{if(!emblaApi)return;const root=rootRef.current;if(!root||typeof ResizeObserver===\"undefined\")return;const ro=new ResizeObserver(entries=>{const width=entries[0]?.contentRect.width??0;if(width===0)return;React.startTransition(()=>setCarouselWidth(width));const nextIsMobile=width<MOBILE_BREAKPOINT_PX;setIsMobile(prev=>{if(prev===nextIsMobile)return prev;emblaApi.reInit();return nextIsMobile;});});ro.observe(root);return()=>ro.disconnect();},[emblaApi]);// Measure each face's intrinsic height per card and apply it as an explicit `height` on the rotator. useLayoutEffect runs sync after layout/before paint so the first paint already shows the correct height. ResizeObserver continues to track ongoing changes (font load, image load, slot-width reflow when the breakpoint flips, programmes content edits).\nReact.useLayoutEffect(()=>{if(slideCount===0||typeof ResizeObserver===\"undefined\")return;frontFaceRefs.current.length=slideCount;backFaceRefs.current.length=slideCount;// Measure offsetHeight, NOT getBoundingClientRect().height. offsetHeight is the layout BORDER-box height — it includes the face's own padding and is unaffected by the CSS `transform: scale` applied to inactive cards. getBoundingClientRect returns the visually-projected box, which would report a scaled-down height (0.6×) for any card that's currently inactive. Since these heights drive the rotator's explicit height, they must be the true unscaled border-box.\nconst measureAll=refs=>{const out=new Array(slideCount).fill(0);for(let i=0;i<slideCount;i++){const el=refs[i];if(el)out[i]=el.offsetHeight;}return out;};const arrEq=(a,b)=>a.length===b.length&&a.every((v,i)=>v===b[i]);setFrontHeights(prev=>{const next=measureAll(frontFaceRefs.current);return arrEq(prev,next)?prev:next;});setBackHeights(prev=>{const next=measureAll(backFaceRefs.current);return arrEq(prev,next)?prev:next;});const observers=[];const observe=(refs,setter)=>{for(let i=0;i<slideCount;i++){const el=refs[i];if(!el)continue;const idx=i;const ro=new ResizeObserver(entries=>{// borderBoxSize.blockSize is the BORDER-box height (padding + border included) and is transform-independent — unlike contentRect.height, which excludes padding. The back face carries `padding: cardPadding`, so contentRect would under-report by 2×padding (e.g. 427 → 379), setting the rotator too short and letting the back face overflow downward (shifting the active card's visual centre below its siblings). Fall back to offsetHeight where borderBoxSize is unavailable.\nconst h=entries[0]?.borderBoxSize?.[0]?.blockSize??el.offsetHeight;if(h<=0)return;setter(prev=>{if(prev[idx]===h)return prev;const next=prev.slice();while(next.length<slideCount)next.push(0);next[idx]=h;return next;});});ro.observe(el);observers.push(ro);}};observe(frontFaceRefs.current,setFrontHeights);observe(backFaceRefs.current,setBackHeights);return()=>observers.forEach(o=>o.disconnect());},[slideCount,slotWidth,safeProgrammes]);React.useEffect(()=>{if(!emblaApi||!KEYBOARD)return;if(typeof window===\"undefined\")return;const onKey=e=>{if(!rootRef.current)return;const rect=rootRef.current.getBoundingClientRect();const inView=rect.top<window.innerHeight&&rect.bottom>0;if(!inView)return;if(e.key===\"ArrowLeft\"){e.preventDefault();resetAllFaces();emblaApi.scrollPrev();}else if(e.key===\"ArrowRight\"){e.preventDefault();resetAllFaces();emblaApi.scrollNext();}};window.addEventListener(\"keydown\",onKey);return()=>window.removeEventListener(\"keydown\",onKey);},[emblaApi,resetAllFaces]);const handleCardClick=React.useCallback(virtualIndex=>{if(virtualIndex===selectedIndex){setFaces(prev=>{const next=[...prev];next[virtualIndex]=next[virtualIndex]===FRONT?BACK:FRONT;return next;});}else{resetAllFaces();setSelectedIndex(virtualIndex);emblaApi?.scrollTo(virtualIndex);}},[emblaApi,selectedIndex,resetAllFaces]);const scrollPrev=React.useCallback(()=>{if(!emblaApi)return;resetAllFaces();setSelectedIndex(prev=>(prev-1+slideCount)%slideCount);emblaApi.scrollPrev();},[emblaApi,resetAllFaces,slideCount]);const scrollNext=React.useCallback(()=>{if(!emblaApi)return;resetAllFaces();setSelectedIndex(prev=>(prev+1)%slideCount);emblaApi.scrollNext();},[emblaApi,resetAllFaces,slideCount]);if(!hasCards){return /*#__PURE__*/_jsx(\"div\",{ref:rootRef,style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:\"100%\",height:\"100%\"},children:/*#__PURE__*/_jsx(EmptyPlaceholder,{})});}// The track. `cardIndex` wraps with the modulo, so repeats 2..n replay the same programmes in the same order — the viewer sees one continuous set, and when loopRepeats is 1 this is the identity mapping it has always been.\nconst slides=Array.from({length:slideCount},(_,vi)=>({vi,cardIndex:vi%cardCount,// True for every slide past the first pass. Content-identical to the slide it repeats, so it's hidden from assistive tech — otherwise the whole programme list gets announced twice over.\n    isRepeat:vi>=cardCount}));const shouldLimitCardWidth=carouselWidth>=MOBILE_BREAKPOINT_PX&&carouselWidth<=TABLET_MAX_BREAKPOINT_PX;const viewportStyle={overflow:\"hidden\",padding:`${paddingY}px 0`,width:\"100%\",WebkitMaskImage:`linear-gradient(to right, transparent 0px, black ${EDGE_FADE_PX}px, black calc(100% - ${EDGE_FADE_PX}px), transparent 100%)`,maskImage:`linear-gradient(to right, transparent 0px, black ${EDGE_FADE_PX}px, black calc(100% - ${EDGE_FADE_PX}px), transparent 100%)`,WebkitMaskRepeat:\"no-repeat\",maskRepeat:\"no-repeat\"};// Desktop layout: arrows sit absolutely positioned at the carousel's left/right edges. `maxWidth` lives on the root (not the viewport) so the buttons anchor to the visible carousel edges — if we capped the viewport instead, the root would still be full-bleed and buttons would float far from the cards on wide screens. Mobile layout: arrows occupy a centered row absolutely positioned over the carousel's bottom paddingY strip — so they don't push the page down. Both styles use `all: unset` so the user-supplied Framer arrow design component renders at its authored size.\nconst desktopNavButtonStyle=side=>({all:\"unset\",position:\"absolute\",[side]:NAV_INSET,top:\"50%\",transform:\"translateY(-50%)\",zIndex:NAV_Z,cursor:\"pointer\",display:\"inline-flex\",boxSizing:\"border-box\"});const mobileNavButtonStyle={all:\"unset\",cursor:\"pointer\",display:\"inline-flex\",boxSizing:\"border-box\"};const mobileNavRowStyle={position:\"absolute\",left:0,right:0,bottom:0,display:\"flex\",justifyContent:\"center\",alignItems:\"center\",gap:MOBILE_NAV_GAP,zIndex:NAV_Z};const frontGradient=`linear-gradient(161.28deg, ${frontGradient1} -11.35%, ${frontGradient2} 25.8%, ${frontGradient3} 57.58%)`;const imageZoneHeight=isMobile?FRONT_IMAGE_ZONE_HEIGHT.mobile:FRONT_IMAGE_ZONE_HEIGHT.desktop;return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,style:{position:\"relative\",width:\"100%\",maxWidth:maxWidth>0?maxWidth:undefined,margin:\"0 auto\"},children:[/*#__PURE__*/_jsx(\"style\",{children:CARD_CSS}),/*#__PURE__*/_jsx(\"div\",{ref:emblaRef,style:viewportStyle,children:/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",touchAction:\"pan-y pinch-zoom\"},children:slides.map(({vi,cardIndex,isRepeat})=>{const programme=safeProgrammes[cardIndex];const isActive=vi===selectedIndex;const isFlipped=isActive&&faces[vi]===BACK;// Target height for the rotator: whichever face is currently presented. The rotator transitions height with the same duration and easing as the rotation, so the card grows or shrinks visibly as it flips. While heights are unmeasured (very first render before useLayoutEffect runs), targetFaceH falls through to undefined and the grid auto-sizes to max(front, back).\nconst targetFaceH=isFlipped?Math.max(backHeights[vi]??0,frontHeights[vi]??0):frontHeights[vi];// Hover scale: only the active card grows. Computed from slotWidth so the visible growth is exactly HOVER_GROWTH_PX at any breakpoint. Inactive cards get scale 1 so :hover is a no-op for them.\nconst hoverScale=isActive?(slotWidth+HOVER_GROWTH_PX)/slotWidth:1;// Deliberately cardIndex/cardCount, NOT vi/slideCount: with three programmes laid down twice the viewer still reads 1/3, 2/3, 3/3, 1/3… The repeat is a mechanism for Embla, not something the counter should ever expose.\nconst pillLabel=`${cardIndex+1} / ${cardCount}`;return /*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":isRepeat||undefined,style:{flex:\"0 0 auto\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",width:slotWidth,maxWidth:shouldLimitCardWidth?TABLET_CARD_MAX_WIDTH:undefined,marginRight:cardGap},children:/*#__PURE__*/_jsx(\"div\",{\"data-pc-tween\":\"\",onClick:()=>handleCardClick(vi),style:{width:\"100%\",willChange:\"transform\",transformOrigin:\"center center\",cursor:\"pointer\",// Initial fallback before applyTween runs after first paint. Once Embla mounts, applyTween overwrites these every scroll/select tick — but having a sensible initial value avoids a one-frame flash where every card looks inactive.\n[\"--pc-hover-scale\"]:hoverScale.toFixed(4),[\"--pc-activeness\"]:isActive?1:0,[\"--pc-scale\"]:isActive?1:INACTIVE_SCALE,[\"--pc-radius-scale\"]:isActive?1:1-INACTIVE_RADIUS_COMPENSATION*(1-INACTIVE_SCALE)},children:/*#__PURE__*/_jsx(\"div\",{\"data-pc-hover-target\":\"\",style:{width:\"100%\",transformOrigin:\"center center\",transition:`transform ${HOVER_DURATION_MS}ms ${HOVER_EASING}`},children:/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",perspective:`${PERSPECTIVE_PX}px`},children:/*#__PURE__*/_jsxs(\"div\",{style:{width:\"100%\",display:\"grid\",transformStyle:\"preserve-3d\",transform:`rotateY(${isFlipped?-180:0}deg)`,transition:`transform ${FLIP_DURATION_MS}ms ${FLIP_EASING}, height ${FLIP_DURATION_MS}ms ${FLIP_EASING}`,height:targetFaceH!=null&&targetFaceH>0?targetFaceH:undefined},children:[/*#__PURE__*/_jsxs(\"div\",{ref:el=>{frontFaceRefs.current[vi]=el;},\"data-pc-card-face\":\"\",\"aria-hidden\":isFlipped||undefined,style:{gridArea:\"1 / 1\",alignSelf:\"start\",backfaceVisibility:\"hidden\",WebkitBackfaceVisibility:\"hidden\",opacity:isFlipped?0:1,transition:`opacity 0s linear ${FLIP_CROSS_MS}ms`,pointerEvents:isFlipped?\"none\":\"auto\",position:\"relative\",overflow:\"hidden\",background:\"#FFFFFF\",display:\"flex\",flexDirection:\"column\",alignItems:\"stretch\",textAlign:\"center\",...fontStyleProps(bodyFontV2),fontWeight:BODY_FONT_WGHT,fontVariationSettings:`'wght' ${BODY_FONT_WGHT}`,boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:frontGradient,zIndex:0}}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",zIndex:2,flexShrink:0,padding:`${cardPadding} ${cardPadding} 0`,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",padding:\"5px 14px\",minWidth:56,height:26,borderRadius:999,background:pillBgFront,color:pillText,fontSize:14,fontWeight:400,letterSpacing:\"0.01em\",marginBottom:18,...fontStyleProps(bodyFontV2),boxSizing:\"border-box\"},children:pillLabel}),/*#__PURE__*/_jsx(\"h3\",{style:{fontSize:titleFrontSize,lineHeight:1.1,fontFamily:'\"LIVING SANS Variable 1\"',letterSpacing:\"-0.01em\",fontWeight:400,color:titleColorFront,margin:0,fontVariationSettings:HEADING_FONT_VARIATION_AXES,...fontStyleProps(headingFontV4)},children:programme.title})]}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",zIndex:1,height:imageZoneHeight,flexGrow:1,flexShrink:0,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",padding:`0`,boxSizing:\"border-box\"},children:programme.image&&/*#__PURE__*/_jsx(\"img\",{src:programme.image,alt:\"\",style:{width:`${FRONT_IMAGE_WIDTH_PCT}%`,height:\"100%\",objectFit:\"contain\",pointerEvents:\"none\",display:\"block\"}})}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",zIndex:2,marginTop:\"auto\",flexShrink:0,padding:`0 ${cardPadding} ${cardPadding}`,display:\"flex\",alignItems:\"flex-end\",gap:FRONT_FOOTER_GAP,textAlign:\"left\",boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{flex:\"1 1 auto\",minWidth:0},children:[programme.frontDescriptionLabel&&/*#__PURE__*/_jsx(\"p\",{style:{fontSize:descriptionSize,fontFamily:\"Living Sans Text Bold\",lineHeight:1.1,letterSpacing:\"-0.02em\",color:descriptionColor,margin:0,// The label is the one run of text on the card that isn't the body weight, and \"Living Sans Text *\" cuts are separate static families — so it switches FAMILY rather than asking the body family for a weight it doesn't have. fontWeight matches the Bold face's registered 700; fontVariationSettings is reset because the face container sets a `wght` axis that means nothing on a static font.\n...fontStyleProps(labelFontV1),fontWeight:BODY_FONT_WGHT_BOLD,fontVariationSettings:\"normal\"},children:programme.frontDescriptionLabel}),/*#__PURE__*/_jsx(\"p\",{style:{fontSize:descriptionSize,fontFamily:\"Living Sans Text Regular\",lineHeight:1.1,letterSpacing:\"-0.02em\",color:descriptionColor,margin:0,...fontStyleProps(bodyFontV2)},children:programme.frontDescription})]}),/*#__PURE__*/_jsx(FlipIcon,{bg:flipBgColor,stroke:flipIconColor,width:frontFlipIcon.width,height:frontFlipIcon.height,radius:frontFlipIcon.radius,glyph:frontFlipIcon.glyph,flipMarker:true,style:{flexShrink:0,pointerEvents:\"none\"}})]})]}),/*#__PURE__*/_jsxs(\"div\",{ref:el=>{backFaceRefs.current[vi]=el;},\"data-pc-card-face\":\"\",\"aria-hidden\":!isFlipped||undefined,style:{gridArea:\"1 / 1\",alignSelf:\"start\",minHeight:frontHeights[vi]||undefined,backfaceVisibility:\"hidden\",WebkitBackfaceVisibility:\"hidden\",transform:\"rotateY(180deg) translateZ(1px)\",opacity:isFlipped?1:0,transition:`opacity 0s linear ${FLIP_CROSS_MS}ms`,pointerEvents:isFlipped?\"auto\":\"none\",position:\"relative\",overflow:\"hidden\",background:backBg,color:titleColorBack,padding:cardPadding,display:\"flex\",flexDirection:\"column\",alignItems:\"stretch\",textAlign:\"left\",...fontStyleProps(bodyFontV2),fontWeight:BODY_FONT_WGHT,fontVariationSettings:`'wght' ${BODY_FONT_WGHT}`,boxSizing:\"border-box\"},children:[programme.image&&/*#__PURE__*/_jsx(\"img\",{src:programme.image,alt:\"\",style:{position:\"absolute\",left:`${BACK_IMAGE.leftPct}%`,bottom:`${BACK_IMAGE.bottomPct}%`,transform:\"translateX(-50%)\",width:`${BACK_IMAGE.widthPct}%`,aspectRatio:BACK_IMAGE.aspectRatio,objectFit:\"contain\",opacity:BACK_IMAGE_OPACITY,pointerEvents:\"none\",zIndex:0}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",zIndex:2,display:\"inline-flex\",alignItems:\"center\",justifyContent:\"center\",padding:\"7px 14px 6px\",minWidth:56,height:26,borderRadius:999,background:pillBgBack,color:pillTextBack,fontSize:14,fontWeight:400,letterSpacing:\"0.01em\",marginBottom:18,alignSelf:\"center\",...fontStyleProps(bodyFontV2),boxSizing:\"border-box\"},children:pillLabel}),/*#__PURE__*/_jsx(\"h3\",{style:{position:\"relative\",zIndex:2,fontFamily:'\"LIVING SANS Variable 1\"',fontSize:titleBackSize,lineHeight:1.1,letterSpacing:\"-0.01em\",fontWeight:400,color:titleColorBack,margin:0,marginBottom:28,alignSelf:\"center\",textAlign:\"center\",fontVariationSettings:HEADING_FONT_VARIATION_AXES,...fontStyleProps(headingFontV4)},children:programme.title}),programme.impact&&programme.impact.length>0&&/*#__PURE__*/_jsxs(\"section\",{style:{position:\"relative\",zIndex:2,marginBottom:22},children:[/*#__PURE__*/_jsx(\"header\",{style:{fontSize:sectionHeaderSize,fontFamily:\"Living Sans Text Regular\",fontWeight:400,lineHeight:1.1,marginBottom:10,paddingBottom:10,borderBottom:`1px solid ${sectionDividerColor}`,letterSpacing:0,color:sectionHeaderColor,...fontStyleProps(bodyFontV2)},children:\"Impact\"}),/*#__PURE__*/_jsx(\"ul\",{style:{listStyle:\"none\",margin:0,padding:0,display:\"flex\",flexDirection:\"column\",gap:12,fontFamily:\"Living Sans Text Regular\",fontSize:impactItemSize,lineHeight:1.15,color:impactTextColor,...fontStyleProps(bodyFontV2)},children:programme.impact.map((point,i)=>/*#__PURE__*/_jsxs(\"li\",{style:{display:\"grid\",gridTemplateColumns:\"auto 1fr\",gap:10,alignItems:\"start\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{color:impactArrowColor,fontWeight:500,fontSize:32,lineHeight:.75},children:\"→\"}),/*#__PURE__*/_jsx(\"span\",{children:point})]},i))})]}),programme.activities&&programme.activities.length>0&&/*#__PURE__*/_jsxs(\"section\",{style:{position:\"relative\",zIndex:2,marginBottom:8},children:[/*#__PURE__*/_jsx(\"header\",{style:{fontSize:sectionHeaderSize,fontFamily:\"Living Sans Text Regular\",fontWeight:400,lineHeight:1.1,marginBottom:10,paddingBottom:10,borderBottom:`1px solid ${sectionDividerColor}`,letterSpacing:0,color:sectionHeaderColor,...fontStyleProps(bodyFontV2)},children:\"Example activities\"}),/*#__PURE__*/_jsx(\"p\",{style:{margin:0,// Right inset on mobile only, so wrapped tags stop short of the flip icon. See MOBILE_ACTIVITIES_RIGHT_PAD.\npaddingRight:isMobile?MOBILE_ACTIVITIES_RIGHT_PAD:0,fontFamily:\"Living Sans Text Regular\",fontSize:activityTagSize,lineHeight:1.1,color:activityTextColor,display:\"flex\",flexWrap:\"wrap\",gap:\"0 10px\",...fontStyleProps(bodyFontV2)},children:programme.activities.map((a,i)=>/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:10,whiteSpace:\"nowrap\"},children:[a,i<programme.activities.length-1&&/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,style:{color:activityDividerColor},children:\"|\"})]},i))})]}),/*#__PURE__*/_jsx(FlipIcon,{bg:flipBgColor,stroke:flipIconColor,width:backFlipIcon.width,height:backFlipIcon.height,radius:backFlipIcon.radius,glyph:backFlipIcon.glyph,style:{position:\"absolute\",right:24,bottom:24,zIndex:3,pointerEvents:\"none\"}})]})]})})})})},vi);})})}),isMobile?(prevArrow||nextArrow)&&/*#__PURE__*/_jsxs(\"div\",{style:mobileNavRowStyle,children:[prevArrow&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":\"Previous\",onClick:scrollPrev,style:mobileNavButtonStyle,children:prevArrow}),nextArrow&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":\"Next\",onClick:scrollNext,style:mobileNavButtonStyle,children:nextArrow})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[prevArrow&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":\"Previous\",onClick:scrollPrev,style:desktopNavButtonStyle(\"left\"),children:prevArrow}),nextArrow&&/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":\"Next\",onClick:scrollNext,style:desktopNavButtonStyle(\"right\"),children:nextArrow})]})]});}/* ── Card content (shared default — also the panel fallback) ──────── */const PROGRAMMES=[{title:\"TRANSFORM\",frontDescription:\"Define the strategic brand foundations needed to propel your organisation forward when it lacks clarity.\",impact:[\"Restore clarity and direction when the organisation is stuck, drifting, or pulling in different directions.\",\"Align everyone around one shared idea, reducing friction, debate, and dependency on founders.\",\"Build a strong foundation for future growth, brand expression and decision-making.\"],activities:[\"Brand research & diagnostic\",\"Naming\",\"Brand strategy\",\"Brand architecture\",\"Brand blueprint\",\"Company values\"]},{title:\"CREATE\",frontDescription:\"Build a distinctive brand from the ground up — story, identity, and verbal world ready for first contact with the market.\",impact:[\"Move from a vague idea into a coherent brand the team can rally around and customers can recognise from the first impression.\",\"Avoid the costly rework that comes from launching with a half-formed identity and patching it together quarter by quarter.\",\"Set up the verbal, visual, and strategic patterns the brand will compound on for years rather than starting fresh each season.\",\"Give early hires a story they can repeat in the same words, so the brand walks into rooms before you do.\"],activities:[\"Brand positioning\",\"Brand narrative\",\"Visual identity\",\"Verbal identity\",\"Naming\",\"Launch toolkit\",\"Photography direction\",\"Motion principles\"]},{title:\"ENERGISE\",frontDescription:\"Reignite a brand that has lost momentum — sharper expression, renewed point of view, and the energy to compete again.\",impact:[\"Cut through in a category where the brand has started to blend into the wallpaper and is being talked about less than the competition.\",\"Give the team a fresh story and tools to sell and recruit with confidence, with less reliance on founder charisma.\",\"Win back attention from the market without the cost, risk, and disruption of a full rebrand.\",\"Re-engage existing customers who have started to drift, by reminding them what made the brand interesting in the first place.\"],activities:[\"Expression refresh\",\"Messaging system\",\"Campaign concepts\",\"Tone of voice\",\"Editorial overhaul\",\"Internal rallying\",\"Social refresh\",\"Sales narrative\"]},{title:\"SCALE\",frontDescription:\"Stretch the brand to support new markets, products, and audiences without losing what made it work in the first place.\",impact:[\"Move confidently into new categories or regions with a system that holds together rather than fragmenting under pressure from local teams.\",\"Reduce ad-hoc design decisions by giving teams a clear architecture and toolkit, so they ship faster without breaking the brand.\",\"Protect brand equity while opening up room to grow, expanding what the brand can sensibly stretch to cover.\",\"Make decisions about sub-brands and endorsements once, then apply the principles consistently across every new launch.\"],activities:[\"Brand architecture\",\"Sub-brand strategy\",\"Design system\",\"Governance model\",\"Localisation playbook\",\"Partner toolkit\",\"Naming framework\",\"Endorsement model\"]},{title:\"LAUNCH\",frontDescription:\"Go to market with a brand that lands — clear story, sharp first impression, and assets ready for day one.\",impact:[\"Show up at launch with confidence instead of stitching things together the night before and apologising for the rough edges.\",\"Convert early audiences into believers with a message that has actually been pressure-tested with the right people in the room.\",\"Give press, partners, and hires a clear picture of what you are and why it matters, with the lockups and language to repeat it.\",\"Build a launch system you can re-run for the next product, market, or moment without starting from a blank page.\"],activities:[\"Launch strategy\",\"Brand reveal\",\"Website\",\"Press toolkit\",\"Investor narrative\",\"Launch campaign\",\"Sales enablement\",\"Event identity\"]},{title:\"EVOLVE\",frontDescription:\"Modernise an established brand without throwing away the equity that customers already trust.\",impact:[\"Bring a heritage brand into a new era while keeping the cues that make it recognisable to the people who already love it.\",\"De-risk a rebrand by carefully separating what should stay (the equity worth protecting) from what genuinely needs to change.\",\"Equip the business with a brand that feels current to today's customers and recruits, without alienating the loyal base.\",\"Set up a phased transition so internal teams, channels, and partners migrate at a pace they can actually deliver on.\"],activities:[\"Equity audit\",\"Brand evolution strategy\",\"Identity refresh\",\"Type & colour system\",\"Photography direction\",\"Migration plan\",\"Heritage research\",\"Rollout governance\"]},{title:\"AMPLIFY\",frontDescription:\"Turn the brand into a growth engine — sharper campaigns, content systems, and channels that compound over time.\",impact:[\"Make marketing investment work harder by giving every channel a consistent brand spine to hang creative on.\",\"Move from one-off campaigns to a system that produces a steady drumbeat of work without re-inventing every quarter.\",\"Build a brand that gets stronger with every quarter rather than diluting under pressure from short-term performance asks.\",\"Connect brand and performance teams so they share signals and creative, instead of pulling the brand in different directions.\"],activities:[\"Campaign platform\",\"Content strategy\",\"Social system\",\"Performance creative\",\"Product marketing\",\"Always-on playbook\",\"Influencer framework\",\"Reporting model\"]}];// Default font strings — Framer's `CUSTOMV2;<family name>` format, matching the design Card's text styles. Heading uses \"LIVING SANS Variable 1\"; body uses \"Living Sans Text Regular\". These reach the component as the RAW token (Framer only resolves values stored on the instance), which is why fontStyleProps normalizes them — see normalizeFontFamily below. New instances pick these up automatically; existing instances keep whatever is already stored against the prop name.\nconst DEFAULT_HEADING_FONT=\"CUSTOMV2;LIVING SANS Variable 1\";const DEFAULT_BODY_FONT=\"CUSTOMV2;Living Sans Text Regular\";// The description label's bold. A separate static family, NOT a weight on the body family — see BODY_FONT_WGHT_BOLD. It also needs its own Font control so Framer actually loads the file.\nconst DEFAULT_LABEL_FONT=\"CUSTOMV2;Living Sans Text Bold\";// Turn whatever the Font control hands us into a VALID CSS font-family value. Two hazards, both of which silently fall back to sans-serif rather than erroring:\n//\n// 1. The `CUSTOMV2;` prefix. Framer strips it on the way in when the value is STORED on the instance (picked in the panel), but passes the raw `CUSTOMV2;<family>` token straight through when the value comes from `defaultProps` or a control `defaultValue`. In a CSS value that semicolon ENDS the declaration, so the browser reads `font-family: CUSTOMV2` and discards the family entirely. Renaming a font prop (e.g. headingFontV3 → V4) drops the stored value and so re-exposes this every time.\n//\n// 2. Missing quotes. An unquoted CSS family is a sequence of identifiers, and an identifier may not start with a digit — so `font-family: LIVING SANS Variable 1` is invalid and dropped, while `font-family: \"LIVING SANS Variable 1\"` is fine.\n//\n// We also rebuild Framer's own three-part stack, `\"X\", \"X Placeholder\", sans-serif`, which is what every Framer text element on this site emits. The `X Placeholder` face is a local-Arial @font-face carrying ascent/descent/size-adjust overrides matched to the real font, so text laid out before the webfont arrives occupies the same space and doesn't reflow when it swaps in. Naming a Placeholder that doesn't exist is harmless — the browser just falls through to sans-serif.\nfunction normalizeFontFamily(value){const semi=value.indexOf(\";\");let family=(semi===-1?value:value.slice(semi+1)).trim();if(!family)return\"\";// Already a full stack (from an extended Font object) — trust it as authored.\nif(family.includes(\",\"))return family;family=family.replace(/^[\"']|[\"']$/g,\"\").trim();if(!family)return\"\";return`\"${family}\", \"${family} Placeholder\", sans-serif`;}// Normalize a ControlType.Font value into spreadable CSS. The Font controls are basic (family-only), so this normally receives a font-family STRING — normalized above and returned as `{ fontFamily }`. It also defends against an OBJECT (Framer's \"extended\" Font shape, e.g. left over on an instance authored before the control was switched to basic) by spreading everything EXCEPT fontSize/lineHeight/letterSpacing, so the card's hardcoded type metrics always win. (Assigning such an object straight to `fontFamily` would stringify to \"[object Object]\" and fall back to sans-serif — the original bug.)\nfunction fontStyleProps(font){if(!font)return{};if(typeof font===\"string\"){const fontFamily=normalizeFontFamily(font);return fontFamily?{fontFamily}:{};}const{fontSize,lineHeight,letterSpacing,...rest}=font;if(typeof rest.fontFamily===\"string\"){rest.fontFamily=normalizeFontFamily(rest.fontFamily);}return rest;}ProgrammesCarousel.defaultProps={programmes:PROGRAMMES,paddingY:40,headingFontV4:DEFAULT_HEADING_FONT,bodyFontV2:DEFAULT_BODY_FONT,labelFontV1:DEFAULT_LABEL_FONT};/* ── Property Controls ────────────────────────────────────────────── */addPropertyControls(ProgrammesCarousel,{programmes:{type:ControlType.Array,title:\"Programmes\",control:{type:ControlType.Object,controls:{title:{type:ControlType.String,title:\"Title\",defaultValue:\"TRANSFORM\"},// Per-programme illustration. Replaces the old global \"Leaf (active)\" / \"Leaf (inactive)\" controls: each card now carries its own artwork, centred on the front face and reused as the back face's faded silhouette.\nimage:{type:ControlType.Image,title:\"Image\"},frontDescriptionLabel:{type:ControlType.String,title:\"Label\",defaultValue:\"Rebrands\"},frontDescription:{type:ControlType.String,title:\"Description\",displayTextArea:true,defaultValue:\"Short pitch for the programme shown on the front face of the card.\"},impact:{type:ControlType.Array,title:\"Impact\",control:{type:ControlType.String,displayTextArea:true},defaultValue:[\"First impact point.\",\"Second impact point.\",\"Third impact point.\"]},activities:{type:ControlType.Array,title:\"Activities\",control:{type:ControlType.String},defaultValue:[\"Activity one\",\"Activity two\",\"Activity three\"]}}},defaultValue:PROGRAMMES},// Hidden, family-only Font controls (hidden: () => true). The card's typography is locked to the brand fonts in code, so showing font pickers — let alone extended Size/Line/Letter fields — would only imply an adjustability that doesn't exist. We DON'T remove the controls, though: a Font control is what makes Framer actually load a custom font (Living Sans Beta 8 / OC Oly Demo). Keeping them (with the right defaults) and consuming their values via fontStyleProps guarantees the families load and render, without cluttering the panel.\nheadingFontV4:{type:ControlType.Font,title:\"Heading font\",// Cast: the basic Font control types defaultValue as an object, but Framer resolves a `CUSTOMV2;<family>` token string at runtime.\ndefaultValue:DEFAULT_HEADING_FONT,hidden:()=>true},bodyFontV2:{type:ControlType.Font,title:\"Body font\",// Cast: see headingFontV4 above.\ndefaultValue:DEFAULT_BODY_FONT,hidden:()=>true},labelFontV1:{type:ControlType.Font,title:\"Label font\",// Cast: see headingFontV4 above.\ndefaultValue:DEFAULT_LABEL_FONT,hidden:()=>true},prevArrow:{type:ControlType.ComponentInstance,title:\"Prev Arrow\"},nextArrow:{type:ControlType.ComponentInstance,title:\"Next Arrow\"},paddingY:{type:ControlType.Number,title:\"Padding Y\",defaultValue:40,min:0,max:200,unit:\"px\"}});export default ProgrammesCarousel;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"ProgrammesCarousel\",\"slots\":[\"prevArrow\",\"nextArrow\"],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./ProgrammesCarousel.map"],"mappings":"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"}