{"version":3,"file":"MsFaq.Devw3PHh.mjs","names":["useState","useRef","c","_Fragment","useEffect","useLayoutEffect"],"sources":["https:/framerusercontent.com/modules/ttbQZhRxgcDQFHgj8BAo/CJt86V37LPiUaj1V432d/MsFaq.js"],"sourcesContent":["// ===== MAINSTAGE shared scaffold (CENTER STAGE: warm black hall, cream paper, orange accent, PILL buttons = the approved hero v3) (inlined by mk.py; each Framer code file must be self-contained) =====\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{useEffect,useLayoutEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType,RenderTarget,useIsStaticRenderer}from\"framer\";const FONTS=\"https://fonts.googleapis.com/css2?family=Archivo:wdth,wght@62..125,400..900&family=Schibsted+Grotesk:wght@400..800&family=IBM+Plex+Mono:wght@400;500;600&display=swap\";// Token-safe alpha: Styles-bound colours arrive as var(--token-…) so hex-alpha breaks; color-mix keeps a palette flip working. Never 0% (hue drops) — floor at 0.4%.\nconst A=(c,a)=>`color-mix(in srgb, ${c} ${Math.max(.4,Math.round(a*1e3)/10)}%, transparent)`;const MIX=(a,b,t)=>`color-mix(in srgb, ${a} ${Math.round((1-t)*100)}%, ${b})`;const srcOf=(v,fallback)=>v&&typeof v===\"object\"&&v.src?String(v.src).split(\"?\")[0]:typeof v===\"string\"&&v.trim()?v.trim().split(\"?\")[0]:fallback;const T=(s,fb)=>s&&s.trim()?s.trim():fb;// ink or white text on a CMS brand colour (luminance test; the brand colour is data, not a palette token)\nconst onBrand=hex=>{const m=String(hex||\"\").replace(\"#\",\"\").match(/^([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i);if(!m)return\"var(--ms-cloud)\";const[r,g,b]=[m[1],m[2],m[3]].map(x=>{const v=parseInt(x,16)/255;return v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4);});const L=.2126*r+.7152*g+.0722*b;return L>.18?\"var(--ms-ink)\":\"var(--ms-cloud)\";};const cleanTel=s=>s.replace(/[^\\d+]/g,\"\");// Premium layout band (measured 09-13): container 1340 @1440 / 1520 @1920, body 16, button label 12–13.\nconst MAXW=\"clamp(1280px, 92vw, 1520px)\";// Responsive delivery: Framer's resizer serves any upload at ?scale-down-to=N (longest side). The query is stripped first so one file never downloads twice.\n// Responsive delivery. Framer uploads: the resizer serves ?scale-down-to=N. Unsplash stand-ins: ?w=N. The src is already the smallest width that covers the slot (a 52px avatar never pulls a 1600px photo), so a big image is never decoded for a small box — decode is what stalls scrolling.\nconst RS_W=[160,320,480,800,1200,1600];const rsTarget=sizes=>{const t=String(sizes||\"\").trim().split(\",\").pop()||\"\";const px=t.match(/(\\d+(?:\\.\\d+)?)px/);const vw=t.match(/(\\d+(?:\\.\\d+)?)vw/);const want=px?parseFloat(px[1])*2:vw?parseFloat(vw[1])/100*1600*1.25:1600;return RS_W.find(w=>w>=want)||1600;};const RS=(u,sizes)=>{const s=String(u||\"\");const b=s.split(\"?\")[0];if(/framerusercontent\\.com\\/images\\//.test(s)){const w=rsTarget(sizes);const d=w<=512?512:w<=1024?1024:2048;return{src:`${b}?scale-down-to=${d}`,srcSet:`${b}?scale-down-to=512 512w, ${b}?scale-down-to=1024 1024w, ${b}?scale-down-to=2048 2048w`,sizes};}if(/images\\.unsplash\\.com\\//.test(s)){const w=rsTarget(sizes);const q=n=>`${b}?w=${n}&q=70&fm=jpg&auto=format`;return{src:q(w),srcSet:RS_W.filter(n=>n<=Math.max(w*2,480)).map(n=>`${q(n)} ${n}w`).join(\", \"),sizes};}return{src:s};};// A Framer Font control stores a selector (GF;Family-700), not a CSS family — derive one, reject anything with ';'\nconst famOf=f=>{if(!f)return\"\";if(typeof f===\"string\")return f.includes(\";\")?\"\":f;if(f.fontFamily&&!String(f.fontFamily).includes(\";\"))return String(f.fontFamily);const sel=String(f.fontSelector||\"\");if(!sel)return\"\";const n=sel.split(\";\").pop()||\"\";return n.replace(/-(regular|italic|bold|\\d{3}(italic)?)$/i,\"\").replace(/-/g,\" \");};const wOf=(f,fb)=>{if(!f)return fb;if(f.fontWeight)return Number(f.fontWeight)||fb;const m=String(f.fontSelector||\"\").match(/-(\\d{3})/);return m?Number(m[1]):fb;};// famCss: Framer's Font `fontFamily` is ALREADY a stack — never wrap it in quotes (one fake family → fallback renders). A bare name gets quoted.\nconst famCss=f=>{const fa=famOf(f).replace(/\"/g,\"'\").trim();if(!fa)return\"\";return fa.includes(\",\")||fa.startsWith(\"'\")?fa:`'${fa}'`;};const stack=(custom,f,fb,tail)=>{const fam=custom?famCss(f):\"\";return`${fam?`${fam}, `:\"\"}${fb}, ${tail}`;};function useFonts(){useEffect(()=>{if(typeof document===\"undefined\"||document.getElementById(\"ms-fonts\"))return;const l=document.createElement(\"link\");l.id=\"ms-fonts\";l.rel=\"stylesheet\";l.href=FONTS;document.head.appendChild(l);},[]);}// live = client after hydration and not on the canvas. SSR and the first client render share the same markup.\n// TRUE on the Framer canvas AND in its export / thumbnail / screenshot renderers (anything that is not the running preview): no scroll and no hydration there, so every reveal / pinned stage must draw its FINAL state or the editor shows empty blocks.\nfunction useStill(){const isStatic=useIsStaticRenderer();let t=null;try{t=RenderTarget.current();}catch(e){}return isStatic||t!==null&&t!==RenderTarget.preview;}function useLive(){const isStatic=useIsStaticRenderer();const[live,setLive]=useState(false);useEffect(()=>{if(!isStatic&&RenderTarget.current()!==RenderTarget.canvas&&typeof window!==\"undefined\")setLive(true);},[isStatic]);return live;}// Width/height of the root + viewport height. SSR starts from the breakpoint hint (Framer renders the Tablet/Phone copies with the same code and no width).\nfunction useSize(root,hint){const ov=String(hint||\"\").toLowerCase();const[w,setW]=useState(ov===\"phone\"?390:ov===\"tablet\"?810:1440),[vh,setVh]=useState(ov===\"phone\"?844:ov===\"tablet\"?1080:900);useLayoutEffect(()=>{const el=root.current;if(!el)return;const ro=new ResizeObserver(([e])=>{const x=Math.round((e.borderBoxSize&&e.borderBoxSize[0]?e.borderBoxSize[0].inlineSize:0)||el.offsetWidth);if(x>0)setW(x);});ro.observe(el);const vv=()=>setVh(window.innerHeight);vv();const read=()=>{const x=Math.round(el.offsetWidth);if(x>0)setW(x);};const t1=window.setTimeout(read,150),t2=window.setTimeout(read,700),t3=window.setTimeout(read,1600);window.addEventListener(\"resize\",vv);window.addEventListener(\"load\",read);return()=>{ro.disconnect();window.clearTimeout(t1);window.clearTimeout(t2);window.clearTimeout(t3);window.removeEventListener(\"resize\",vv);window.removeEventListener(\"load\",read);};},[]);return{w,vh};}const useReduced=()=>{const[rm,setRm]=useState(false);useLayoutEffect(()=>{setRm(window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches);},[]);return rm;};// One shared rAF for every section. Each frame runs ALL reads first (layout reads: getBoundingClientRect, offsetHeight), then ALL writes (CSS vars, transforms).\n// Interleaving read → write → read made the browser recalc the whole page's style once per section per frame (layout thrashing: 20+ recalcs a frame).\nfunction onTick(fn,read,pre){if(typeof window===\"undefined\")return()=>{};const w=window;if(!w.__msTick){w.__msTick={pre:new Set,subs:new Set,reads:new Set,raf:0};const loop=t=>{const T=w.__msTick;T.pre.forEach(r=>r(t));T.reads.forEach(r=>r(t));T.subs.forEach(s=>s(t));T.raf=requestAnimationFrame(loop);};w.__msTick.raf=requestAnimationFrame(loop);}w.__msTick.subs.add(fn);if(read)w.__msTick.reads.add(read);if(pre)w.__msTick.pre.add(pre);return()=>{w.__msTick.subs.delete(fn);if(read)w.__msTick.reads.delete(read);if(pre)w.__msTick.pre.delete(pre);};}const clamp01=v=>Math.min(1,Math.max(0,v));const easeIO=t=>{const x=clamp01(t);return x<.5?4*x*x*x:1-Math.pow(-2*x+2,3)/2;};const DEF={bone:\"#F4EEE3\",ink:\"#0B0A09\",brass:\"#FF5A1F\",pine:\"#17130F\",fog:\"#D9D0C0\",stone:\"#7A7164\",cloud:\"#FFFFFF\",night:\"#0B0A09\"};const colorsOf=p=>({bone:p.bone||DEF.bone,ink:p.ink||DEF.ink,brass:p.brass||DEF.brass,pine:p.pine||DEF.pine,fog:p.fog||DEF.fog,stone:p.stone||DEF.stone,cloud:p.cloud||DEF.cloud,night:p.night||DEF.night});// a Style-bound colour arrives as var(--token-…, #hex): let the browser resolve it to r,g,b for canvas drawing\nconst cssRgb=(el,col,fb)=>{if(!el||typeof window===\"undefined\")return fb;const p=document.createElement(\"i\");p.style.display=\"none\";p.style.color=col;el.appendChild(p);const v=getComputedStyle(p).color;p.remove();const m=v.match(/(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?),\\s*(\\d+(?:\\.\\d+)?)/);return m?`${Math.round(+m[1])},${Math.round(+m[2])},${Math.round(+m[3])}`:fb;};// Stage 7: the sold-sign red is mixed 4% toward black so white labels on it (status tags, plates, chips) clear 4.5:1 (#D8452E alone = 4.37)\nconst cssVars=c=>({\"--ms-bone\":c.bone,\"--ms-ink\":c.ink,\"--ms-brass\":c.brass,\"--ms-pine\":c.pine,\"--ms-fog\":c.fog,\"--ms-stone\":c.stone,\"--ms-cloud\":c.cloud,\"--ms-night\":c.night});const COLOR_CONTROLS={bone:{type:ControlType.Color,title:\"Paper\",defaultValue:DEF.bone},ink:{type:ControlType.Color,title:\"Ink\",defaultValue:DEF.ink},brass:{type:ControlType.Color,title:\"Accent\",defaultValue:DEF.brass},pine:{type:ControlType.Color,title:\"Deep\",defaultValue:DEF.pine},fog:{type:ControlType.Color,title:\"Line\",defaultValue:DEF.fog},stone:{type:ControlType.Color,title:\"Muted\",defaultValue:DEF.stone},cloud:{type:ControlType.Color,title:\"White\",defaultValue:DEF.cloud},night:{type:ControlType.Color,title:\"Dark\",defaultValue:DEF.night}};// ---- Fonts: Custom Fonts toggle → Font controls; off = Archivo / Schibsted Grotesk / IBM Plex Mono ----\nconst FONT_CONTROLS={customFonts:{type:ControlType.Boolean,title:\"Custom Fonts\",description:\"Off = the site fonts (set once on the Header in the Site Layout). On = different fonts for this section only\",defaultValue:false},displayFont:{type:ControlType.Font,title:\"Display Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},bodyFont:{type:ControlType.Font,title:\"Body Font\",defaultFontType:\"sans-serif\",hidden:p=>!p.customFonts},monoFont:{type:ControlType.Font,title:\"Mono Font\",defaultFontType:\"monospace\",hidden:p=>!p.customFonts}};const NUMF=\"var(--ms-font-m, 'IBM Plex Mono'), ui-monospace, monospace\";// Site-wide fonts: the Header (Site Layout, every page) writes --ms-font-d/b/m (+ weights) on :root when its Custom Fonts is on. A section uses them unless its own Custom Fonts is on.\nconst siteFontCss=p=>{if(!p||!p.customFonts)return\"\";const v=[];const put=(k,f,w)=>{const fam=famCss(f);if(fam){v.push(`--ms-font-${k}:${fam}`);v.push(`--ms-font-${k}w:${wOf(f,w)}`);}};put(\"d\",p.displayFont,800);put(\"b\",p.bodyFont,400);put(\"m\",p.monoFont,400);put(\"a\",p.accentFont,400);return v.length?`:root{${v.join(\";\")}}`:\"\";};function fontsOf(p){const on=!!p.customFonts;const D={fontFamily:stack(on,p.displayFont,\"var(--ms-font-d, 'Archivo')\",\"'Arial Black', Arial, Helvetica, sans-serif\"),fontWeight:on?wOf(p.displayFont,800):\"var(--ms-font-dw, 800)\",fontStretch:on?undefined:\"var(--ms-font-ds, 125%)\",fontStyle:on&&p.displayFont&&p.displayFont.fontStyle?p.displayFont.fontStyle:\"normal\"};const B={fontFamily:stack(on,p.bodyFont,\"var(--ms-font-b, 'Schibsted Grotesk')\",\"Inter, system-ui, -apple-system, Arial, sans-serif\"),fontWeight:on?wOf(p.bodyFont,400):\"var(--ms-font-bw, 400)\"};const M={fontFamily:stack(on,p.monoFont,\"var(--ms-font-m, 'IBM Plex Mono')\",\"ui-monospace, SFMono-Regular, Menlo, monospace\"),fontWeight:on?wOf(p.monoFont,400):\"var(--ms-font-mw, 400)\"};return{D,B,M};}const BP_CONTROL={bpHint:{type:ControlType.Enum,title:\"Breakpoint Hint\",description:\"Set per breakpoint copy so the server render starts at the right width\",options:[\"auto\",\"desktop\",\"tablet\",\"phone\"],optionTitles:[\"Auto\",\"Desktop\",\"Tablet\",\"Phone\"],defaultValue:\"auto\",hidden:()=>true}};// ---- Button system: PILLS (the approved hero v3). solid = orange face, ink label, a fill sweeps in from the left, the arrow travels out and a second one arrives; ghost = hairline ring; quiet = small tinted pill; ink = ink face with cream label (for the ORANGE band). Magnetic on desktop (useMagnet). ----\nconst Glyph=({k})=>k===\"apple\"?/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{fill:\"currentColor\",d:\"M16.4 12.6c0-2.4 2-3.6 2.1-3.7-1.1-1.7-2.9-1.9-3.5-1.9-1.5-.2-2.9.9-3.7.9-.8 0-1.9-.9-3.2-.8-1.6 0-3.1 1-4 2.4-1.7 3-.4 7.4 1.2 9.8.8 1.2 1.8 2.5 3 2.4 1.2 0 1.7-.8 3.1-.8s1.9.8 3.2.7c1.3 0 2.1-1.2 2.9-2.4.9-1.4 1.3-2.7 1.3-2.8-.1 0-2.5-1-2.4-3.8zM14.1 5.5c.7-.8 1.1-1.9 1-3-1 0-2.1.7-2.8 1.5-.6.7-1.2 1.8-1 2.9 1 .1 2.1-.6 2.8-1.4z\"})}):k===\"play\"?/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{fill:\"currentColor\",d:\"M4.2 2.6c-.3.3-.4.7-.4 1.2v16.4c0 .5.1.9.4 1.2l.1.1 9.2-9.2v-.2L4.3 2.5l-.1.1zM16.6 15.4l-3.1-3.1v-.2l3.1-3.1.1.1 3.6 2.1c1 .6 1 1.6 0 2.2l-3.6 2-.1 0zM16.7 15.3L13.5 12 4.2 21.4c.3.4.9.4 1.5.1l11-6.2M16.7 8.7L5.7 2.5c-.6-.4-1.2-.3-1.5.1l9.3 9.4 3.2-3.3z\"})}):k===\"mail\"?/*#__PURE__*/_jsxs(\"svg\",{viewBox:\"0 0 24 24\",\"aria-hidden\":true,fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"5\",width:\"18\",height:\"14\",rx:\"3\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M4 7l8 6 8-6\"})]}):k===\"down\"?/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",\"aria-hidden\":true,fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 4v11M7 10.5l5 5 5-5M5 20h14\"})}):/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",\"aria-hidden\":true,fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});// In-page CTA jumps (\"#download\", \"/#download\"): scroll to the section when it is on this page, otherwise go to it on the home page.\nfunction jumpTo(e,href){try{const m=String(href||\"\").match(/^\\/?#([\\w-]+)$/);if(!m)return;const el=document.getElementById(m[1]);if(el){e.preventDefault();const W=window;const L=W.__ltLenis||W.__vcLenis||W.lenis;if(L&&L.scrollTo)L.scrollTo(el,{offset:-20});else el.scrollIntoView({behavior:\"smooth\",block:\"start\"});try{history.replaceState(null,\"\",\"#\"+m[1]);}catch(x){}}else if(href.startsWith(\"#\")){e.preventDefault();window.location.href=\"/\"+href;}}catch(x){}}// display text that is NOT the wordmark (section headlines, card h3, big numbers): Archivo 760 at 110% width. With a section's Custom Fonts on, the picked font is used as is.\nconst HD=D=>D.fontStretch?{...D,fontWeight:\"var(--ms-font-hw, 760)\",fontStretch:\"var(--ms-font-hs, 110%)\"}:D;const BtnArrow=()=>/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2.4\",strokeLinecap:\"round\",strokeLinejoin:\"round\",children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const Btn=({href,label,kind=\"solid\",arrow=true,style,className,onClick,ariaLabel,cur,icon,sub,as})=>{const inner=/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"i\",{className:\"ms-btn-fill\",\"aria-hidden\":true}),icon===\"play\"&&/*#__PURE__*/_jsx(\"span\",{className:\"ms-btn-play\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"svg\",{viewBox:\"0 0 24 24\",children:/*#__PURE__*/_jsx(\"path\",{fill:\"currentColor\",d:\"M8.5 5.6v12.8a.9.9 0 0 0 1.37.77l10.2-6.4a.9.9 0 0 0 0-1.54l-10.2-6.4a.9.9 0 0 0-1.37.77z\"})})}),/*#__PURE__*/_jsxs(\"span\",{className:\"ms-btn-l\",children:[sub&&/*#__PURE__*/_jsx(\"small\",{className:\"ms-sub\",children:sub}),/*#__PURE__*/_jsx(\"span\",{className:\"ms-mark\",children:label})]}),arrow&&icon!==\"play\"&&/*#__PURE__*/_jsxs(\"span\",{className:\"ms-btn-a\",\"aria-hidden\":true,children:[/*#__PURE__*/_jsx(BtnArrow,{}),/*#__PURE__*/_jsx(BtnArrow,{})]})]});const cls=`ms-btn ms-${kind}${sub?\" ms-two\":\"\"}${icon===\"play\"?\" ms-hasplay\":\"\"}${className?\" \"+className:\"\"}`;if(as===\"button\"||!href)return /*#__PURE__*/_jsx(\"button\",{type:\"button\",className:cls,\"data-mag\":true,\"data-cur\":cur||\"go\",onClick:onClick,\"aria-label\":ariaLabel,style:style,children:inner});return /*#__PURE__*/_jsx(\"a\",{className:cls,\"data-mag\":true,\"data-cur\":cur||\"go\",href:href,target:/^https?:\\/\\//.test(href||\"\")?\"_blank\":undefined,rel:/^https?:\\/\\//.test(href||\"\")?\"noopener\":undefined,onClick:onClick||(e=>jumpTo(e,href)),\"aria-label\":ariaLabel,style:style,children:inner});};function useNearFocus(root,live){useEffect(()=>{if(!live||!root.current)return;const el=root.current;const f=e=>{const t=e.target;const sc=t.closest?.(\".ms-inring\");if(!sc)return;try{t.scrollIntoView({block:\"nearest\",inline:\"nearest\"});}catch(x){}};el.addEventListener(\"focusin\",f);return()=>el.removeEventListener(\"focusin\",f);},[live]);}function useMagnet(root,live){useEffect(()=>{if(!live||!root.current||!window.matchMedia(\"(hover:hover) and (pointer:fine)\").matches)return;const r=root.current;const btns=()=>Array.from(r.querySelectorAll(\"[data-mag]\"));const mv=e=>{for(const b of btns()){const rc=b.getBoundingClientRect();const dx=e.clientX-(rc.left+rc.width/2),dy=e.clientY-(rc.top+rc.height/2);const d=Math.hypot(dx,dy);const pull=d<150?(1-d/150)*8:0;b.style.setProperty(\"--mx\",`${dx/(d||1)*pull}px`);b.style.setProperty(\"--my\",`${dy/(d||1)*pull}px`);}};const lv=()=>{for(const b of btns()){b.style.setProperty(\"--mx\",\"0px\");b.style.setProperty(\"--my\",\"0px\");}};r.addEventListener(\"pointermove\",mv);r.addEventListener(\"pointerleave\",lv);return()=>{r.removeEventListener(\"pointermove\",mv);r.removeEventListener(\"pointerleave\",lv);};},[live]);}const CSS_BASE=`\n:where(.ms){position:relative;z-index:10} .ms,.ms *{box-sizing:border-box;min-width:0} .ms-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;padding:0!important;margin:-1px!important;border:0!important} :where(.ms) a{color:inherit} html,body{overflow-x:clip}\n:where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"]),[role=\"button\"]):focus-visible{outline:3px solid var(--ms-ink,#0E1014)!important;outline-offset:2px!important;box-shadow:0 0 0 2px var(--ms-bone,#F1EEE7)!important} :where(.ms-dark) :where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"])):focus-visible{outline-color:var(--ms-cloud,#FFFFFF)!important;box-shadow:0 0 0 2px var(--ms-night,#0A0B0F)!important} :where(.ms-inring) :where(a[href],button):focus-visible{outline-offset:-4px!important;box-shadow:none!important} :where(.ms) :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),textarea,select):focus-visible{outline:2px solid currentColor!important;outline-offset:2px!important;box-shadow:none!important} :where(.ms) textarea{resize:none} .ms-inring:focus-visible{outline-offset:-3px!important;box-shadow:none!important} html{scroll-padding-top:96px;scroll-padding-bottom:88px}\n/* any other focusable (e.g. a keyboard-focusable scroll row) gets the kit ring, never the browser default */ :where(.ms) :focus-visible{outline:3px solid var(--ms-ink,#0E1014);outline-offset:2px} :where(.ms-dark) :focus-visible{outline-color:var(--ms-cloud,#FFFFFF)}\n/* controls inside clipped / sideways-scrolling rows draw their ring INSIDE the control so overflow never cuts it: put class ms-inring on the scrolling row */ :where(.ms-inring,.msfq-tabs,.mssc-days,.mssc-chips) :where(a[href],button,input,[tabindex]):focus-visible{outline-offset:-3px!important;box-shadow:none!important} :where(.ms-inring,.msfq-tabs,.mssc-days,.mssc-chips) :where([aria-pressed=\"true\"],[aria-selected=\"true\"],[aria-checked=\"true\"],[aria-current=\"page\"]):focus-visible{outline-color:var(--ms-bone,#F4EEE3)!important} :where(.ms-dark) :where(.ms-inring,.msfq-tabs,.mssc-days,.mssc-chips) :where([aria-pressed=\"true\"],[aria-selected=\"true\"],[aria-checked=\"true\"],[aria-current=\"page\"]):focus-visible{outline-color:var(--ms-night,#0B0A09)!important}\n/* a light card inside a dark section keeps the INK ring (a white ring on a white card is invisible) */ :where(.ms-dark) :where(.ms-lt) :where(a[href],button,input,select,textarea,summary,[tabindex]:not([tabindex=\"-1\"])):focus-visible{outline-color:var(--ms-ink,#0E1014)!important;box-shadow:0 0 0 2px var(--ms-cloud,#FFFFFF)!important}\n.ms-btn{position:relative;display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 22px;border:0;border-radius:999px;overflow:hidden;isolation:isolate;text-decoration:none;white-space:nowrap;font:inherit;font-size:14px;font-weight:600;line-height:1;letter-spacing:0;cursor:pointer;-webkit-appearance:none;appearance:none;background:var(--face);color:var(--fg)!important;box-shadow:var(--ring,none);transform:translate(var(--mx,0px),var(--my,0px));transition:transform .45s cubic-bezier(.34,1.56,.64,1),box-shadow .4s,color .35s .05s}\n.ms-btn:hover,.ms-btn:focus-visible{color:var(--fg2)!important} .ms-btn:active{transform:translate(var(--mx,0px),var(--my,0px)) scale(.96);transition-duration:.12s}\n.ms-btn-fill{position:absolute;z-index:-1;inset:0;border-radius:inherit;background:var(--fill);transform:translateX(-101%);transition:transform .6s cubic-bezier(.3,.9,.3,1)} .ms-btn:hover .ms-btn-fill,.ms-btn:focus-visible .ms-btn-fill{transform:none}\n.ms-btn-l{position:relative;display:inline-flex;flex-direction:column;justify-content:center;line-height:1.15} .ms-sub{display:block;font-size:10.5px;font-weight:500;letter-spacing:.04em;opacity:.75;margin-bottom:1px} .ms-mark{display:inline-block}\n.ms-btn-a{position:relative;display:block;flex:none;width:16px;height:16px;overflow:hidden} .ms-btn-a svg{position:absolute;inset:0;width:16px;height:16px;transition:transform .55s cubic-bezier(.3,.9,.3,1)} .ms-btn-a svg+svg{transform:translateX(-130%)} .ms-btn:hover .ms-btn-a svg:first-child,.ms-btn:focus-visible .ms-btn-a svg:first-child{transform:translateX(130%)} .ms-btn:hover .ms-btn-a svg+svg,.ms-btn:focus-visible .ms-btn-a svg+svg{transform:none}\n.ms-btn.ms-hasplay{padding-left:9px} .ms-btn-play{position:relative;display:grid;place-items:center;width:30px;height:30px;flex:none;border-radius:50%;background:var(--fg);color:var(--playfg,var(--ms-night));transition:background .35s,transform .45s cubic-bezier(.34,1.56,.64,1)} .ms-btn-play svg{width:13px;height:13px;translate:1px 0} .ms-btn:hover .ms-btn-play{background:var(--ms-brass);transform:scale(1.08)}\n/* solid: the orange pill with an INK label everywhere (white on the orange is 3.1:1). The sweep is white on dark grounds, ink on cream. */\n.ms-btn.ms-solid{--face:var(--ms-brass);--fg:var(--ms-ink);--fill:var(--ms-cloud);--fg2:var(--ms-ink);--ring:0 10px 30px -12px color-mix(in srgb,var(--ms-brass) 80%,transparent)}\n.ms:not(.ms-dark) .ms-btn.ms-solid,.ms-lt .ms-btn.ms-solid{--fill:var(--ms-ink);--fg2:var(--ms-cloud)}\n.ms-btn.ms-ghost{--face:transparent;--fg:var(--ms-cloud);--fill:var(--ms-cloud);--fg2:var(--ms-ink);--ring:inset 0 0 0 1px color-mix(in srgb,var(--ms-cloud) 34%,transparent);--playfg:var(--ms-night)}\n.ms:not(.ms-dark) .ms-btn.ms-ghost,.ms-lt .ms-btn.ms-ghost{--fg:var(--ms-ink);--fill:var(--ms-ink);--fg2:var(--ms-cloud);--ring:inset 0 0 0 1px color-mix(in srgb,var(--ms-ink) 30%,transparent);--playfg:var(--ms-bone)}\n.ms-btn.ms-quiet{height:38px;padding:0 15px;gap:8px;font-size:13px;--face:color-mix(in srgb,var(--ms-cloud) 11%,transparent);--fg:var(--ms-cloud);--fill:var(--ms-brass);--fg2:var(--ms-ink)} .ms-btn.ms-quiet .ms-btn-a,.ms-btn.ms-quiet .ms-btn-a svg{width:14px;height:14px}\n.ms:not(.ms-dark) .ms-btn.ms-quiet,.ms-lt .ms-btn.ms-quiet{--face:color-mix(in srgb,var(--ms-ink) 8%,transparent);--fg:var(--ms-ink);--fill:var(--ms-ink);--fg2:var(--ms-cloud)}\n/* ink: for the ORANGE band and cream plates — ink face, cream label, white sweep */\n.ms .ms-btn.ms-ink,.ms-btn.ms-ink{--face:var(--ms-ink);--fg:var(--ms-bone);--fill:var(--ms-cloud);--fg2:var(--ms-ink);--ring:none}\n.ms-lt .ms-btn.ms-ink{--fill:var(--ms-brass);--fg2:var(--ms-ink)}\n/* on the orange band the solid button turns ink (orange on orange is invisible); on a cream plate inside the band it is orange again */\n.ms-band .ms-btn.ms-solid{--face:var(--ms-ink);--fg:var(--ms-bone);--fill:var(--ms-cloud);--fg2:var(--ms-ink);--ring:none} .ms-band .ms-lt .ms-btn.ms-solid{--face:var(--ms-brass);--fg:var(--ms-ink);--fill:var(--ms-ink);--fg2:var(--ms-cloud)}\n.ms-btn:disabled,.ms-btn[aria-disabled=\"true\"]{opacity:.5;pointer-events:none}\n@media (max-width:600px),(hover:none){.ms .ms-btn{max-width:100%;height:46px;padding:0 19px} .ms .ms-btn.ms-quiet{height:40px;padding:0 15px}}\n.ms button,.ms input,.ms select,.ms textarea{font-family:inherit}\n/* TEXT-SAFE accents: the orange is a SURFACE colour on cream (2.7:1 as text). Accent TEXT on cream / white plates = orange mixed 30% toward ink (#B64218, 4.8:1 on #F4EEE3, 5.5:1 on white); on dark grounds the orange itself reads (6.3:1). On the orange band (.ms-band) the accent is an ink plate with cream text. */\n.ms{--ms-acc:color-mix(in srgb,var(--ms-brass) 70%,var(--ms-ink));--ms-acc-lg:color-mix(in srgb,var(--ms-brass) 70%,var(--ms-ink));--ms-hl:var(--ms-brass);--ms-mut:color-mix(in srgb,var(--ms-stone) 70%,var(--ms-ink));--ms-acc-d:var(--ms-brass)}\n.ms-lt,.ms .ms-lt{--ms-acc:color-mix(in srgb,var(--ms-brass) 70%,var(--ms-ink));--ms-acc-lg:color-mix(in srgb,var(--ms-brass) 70%,var(--ms-ink));--ms-hl:var(--ms-brass);--ms-mut:color-mix(in srgb,var(--ms-stone) 70%,var(--ms-ink));color:var(--ms-ink)}\n.ms-dark,.ms.ms-dark{--ms-acc:var(--ms-brass);--ms-acc-lg:var(--ms-brass);--ms-hl:transparent;--ms-mut:color-mix(in srgb,var(--ms-stone) 30%,var(--ms-cloud))}\n.ms-band,.ms.ms-band{--ms-acc:var(--ms-ink);--ms-acc-lg:var(--ms-ink);--ms-mut:color-mix(in srgb,var(--ms-ink) 82%,var(--ms-brass))}\n/* section grounds */\n.ms-sec{background:var(--ms-bone);color:var(--ms-ink)} .ms-sec.ms-dark{background:var(--ms-night);color:var(--ms-cloud)} .ms-sec.ms-band{background:var(--ms-brass);color:var(--ms-ink)}\n/* photos come up like house lights: slightly dim until the holder is on (.is-on) or hovered — brightness on the IMAGE only */\n.ms-lit{filter:brightness(.72) saturate(.9);transition:filter 1.2s ease} .is-on>.ms-lit,.is-on .ms-lit,.ms-lit.is-on,.ms-lit:hover{filter:none}\n/* the giant word: Archivo 900 uppercase, tight, like the hero wordmark */\n.ms-giant{font-weight:900!important;font-stretch:100%!important;text-transform:uppercase;letter-spacing:-.045em;line-height:.8;white-space:nowrap;user-select:none}\n/* mono programme data */\n.ms-mono{font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;line-height:1.5}\n.ms-port,.ms-live{display:inline-block;width:7px;height:7px;flex:none;border-radius:50%;background:var(--ms-brass);animation:ms-blink 1.6s ease-in-out infinite} @keyframes ms-blink{50%{opacity:.3}}\n@media (prefers-reduced-motion:reduce){.ms *,.sth *{animation-duration:.01ms!important;transition-duration:.01ms!important}}`;const IcoArrow=({s=15})=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h14M13 5l7 7-7 7\"})});const Stars=({v=5,s=13})=>/*#__PURE__*/_jsx(\"span\",{className:\"ms-stars\",\"aria-hidden\":true,children:[0,1,2,3,4].map(i=>/*#__PURE__*/_jsx(\"svg\",{width:s,height:s,viewBox:\"0 0 24 24\",style:{opacity:i<Math.round(v)?1:.28},children:/*#__PURE__*/_jsx(\"path\",{fill:\"currentColor\",d:\"M12 2.6l2.9 6.1 6.7.9-4.9 4.6 1.2 6.6L12 17.6 6.1 20.8l1.2-6.6L2.4 9.6l6.7-.9z\"})},i))});// ===== MAINSTAGE motion layer (composed by mk.py after _common) =====\n// One shared rAF (onTick). Sections write --sp (0 = top edge enters the viewport bottom → 1 = bottom edge leaves the top) and,\n// for tall pinned wrappers, --pp (0 = wrapper top hits the viewport top → 1 = wrapper bottom hits the viewport bottom). IO-gated.\nconst SCRUB_K=.18;// Decode a section's photos while it is still a screen and a half away, so the first frame it is on screen never waits for a decode.\nfunction usePre(el){try{const io=new IntersectionObserver(es=>{if(!es[0].isIntersecting)return;io.disconnect();el.querySelectorAll(\"img\").forEach(im=>{try{im.loading=\"eager\";im.decode().catch(()=>{});}catch(e){}});},{rootMargin:\"150% 0px 150% 0px\"});io.observe(el);}catch(e){}}function focusTo(el,frac){if(!el||typeof window===\"undefined\")return;if(window.innerWidth<810)return;const r=el.getBoundingClientRect();const vh=window.innerHeight;if(r.height<=vh*1.05)return;const y=r.top+window.scrollY+(r.height-vh)*Math.min(1,Math.max(0,frac));if(Math.abs(window.scrollY-y)<8)return;const w=window;if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}function useScrollVars(ref,live,rm,cb){useEffect(()=>{if(!live||rm||!ref.current)return;const el=ref.current;let vis=true,last=-9,cs=-1,cp=-1,settled=false;usePre(el);const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"25% 0px 25% 0px\"});io.observe(el);// eased scrub: the values glide toward the true scroll position (K per frame), so wheel steps never jump a pinned scene\nlet rt=0,rh=0,vh=1,fresh=false;const read=()=>{if(!vis&&settled){fresh=false;return;}const r=el.getBoundingClientRect();rt=r.top;rh=r.height;vh=window.innerHeight||1;fresh=true;};const off=onTick(()=>{if(!fresh)return;const sp=clamp01((vh-rt)/(vh+rh));const pp=rh>vh*1.05?clamp01(-rt/(rh-vh)):sp;if(cs<0){cs=sp;cp=pp;}else{cs+=(sp-cs)*SCRUB_K;cp+=(pp-cp)*SCRUB_K;if(Math.abs(sp-cs)<5e-4)cs=sp;if(Math.abs(pp-cp)<5e-4)cp=pp;}settled=cs===sp&&cp===pp;if(Math.abs(cs+cp-last)<3e-4)return;last=cs+cp;el.style.setProperty(\"--sp\",cs.toFixed(4));el.style.setProperty(\"--pp\",cp.toFixed(4));if(cb)cb(cs,cp);},read);return()=>{off();io.disconnect();};},[live,rm]);}// STAGE — false while the loader or the page-transition cover is on screen (html.ms-hold-*), so first-screen intros play AFTER the cover lifts, never under it. 9 s safety.\nfunction useStage(live){const[r,setR]=useState(false);useEffect(()=>{if(!live)return;const h=document.documentElement;const ok=()=>!/(^|\\s)ms-hold/.test(h.className);if(ok()){setR(true);return;}const mo=new MutationObserver(()=>{if(ok()){mo.disconnect();setR(true);}});mo.observe(h,{attributes:true,attributeFilter:[\"class\"]});const t=window.setTimeout(()=>{mo.disconnect();setR(true);},9e3);return()=>{mo.disconnect();window.clearTimeout(t);};},[live]);return r;}// true once the element has entered the viewport (stays true) — and only once the stage is clear. Reduced motion = true at once.\nfunction useOn(ref,live,rm,amount=.16){const[on,setOn]=useState(false);const still=useStill();const ready=useStage(live);useEffect(()=>{if(!live)return;if(rm){setOn(true);return;}if(!ready)return;const el=ref.current;if(!el)return;let off=()=>{};// keyboard focus: mark the section FIRST and flush styles, so the reveal that follows runs with instant transitions (a transition keeps the timing it started with)\nconst fin=e=>{try{if(e.target.matches(\":focus-visible\")){el.setAttribute(\"data-kb\",\"\");void el.offsetWidth;}}catch(x){}setOn(true);};const fout=e=>{if(!el.contains(e.relatedTarget))el.removeAttribute(\"data-kb\");};el.addEventListener(\"focusin\",fin);el.addEventListener(\"focusout\",fout);const io=new IntersectionObserver(es=>{for(const e of es)if(e.isIntersecting){io.disconnect();// IO ignores occlusion: under a curtain (Reveal) wait until about a quarter of it is uncovered\noff=onTick(()=>{const rev=el.closest(\".ms-rev.is-act\");const rv=rev?parseFloat(rev.style.getPropertyValue(\"--rv\")||\"0\"):1;if(rv>.24){setOn(true);off();}});}},{threshold:Math.min(amount,Math.max(.005,window.innerHeight*.3/Math.max(1,el.offsetHeight))),rootMargin:\"0px 0px -6% 0px\"});io.observe(el);return()=>{io.disconnect();off();el.removeEventListener(\"focusin\",fin);el.removeEventListener(\"focusout\",fout);};},[live,rm,ready]);return on||still;}// CURTAIN REVEAL — the section is pinned BEHIND the one above it and is uncovered as that one lifts away (the footer movement, for any section).\n// Wrapper = section + a spacer of T, pulled up by T (page length unchanged); the section is sticky for exactly T of scroll. T = min(section height, 100svh):\n// a tall section pins at the top, a short one sits on the bottom edge of the viewport. The section ABOVE needs a higher Layer (z-index).\nfunction Reveal({on,layer=9,style,children}){const live=useLive();const rm=useReduced();const wrap=useRef(null);const inner=useRef(null);const sp=useRef(null);const[h,setH]=useState(0);const[kb,setKb]=useState(false);// keyboard users get the footer as a normal section: a curtain taller than the screen hides its top row under the page above / the fixed header\nconst act=on&&live&&!rm&&h>0&&!kb;useEffect(()=>{if(!on||!live||rm||!inner.current)return;const el=inner.current;const m=()=>setH(el.offsetHeight);m();const ro=new ResizeObserver(m);ro.observe(el);return()=>ro.disconnect();},[on,live,rm]);useEffect(()=>{if(!act||!wrap.current)return;const el=wrap.current;let vis=true,last=-1;const io=new IntersectionObserver(es=>{vis=es[0].isIntersecting;},{rootMargin:\"30% 0px 30% 0px\"});io.observe(el);let cur=-1,T=0,vh=1,top=0,fresh=false;const read=()=>{if(!vis){fresh=false;return;}T=sp.current?sp.current.offsetHeight:0;vh=window.innerHeight;top=el.getBoundingClientRect().top;fresh=true;};const off=onTick(()=>{if(!fresh||!T)return;const rv=clamp01((vh-T-top)/T);if(cur<0||el.dataset.snap){cur=rv;delete el.dataset.snap;}else{cur+=(rv-cur)*SCRUB_K;if(Math.abs(rv-cur)<5e-4)cur=rv;}if(Math.abs(cur-last)<4e-4)return;last=cur;el.style.setProperty(\"--rv\",cur.toFixed(4));},read);return()=>{off();io.disconnect();};},[act]);return /*#__PURE__*/_jsxs(\"div\",{ref:wrap,className:`ms-rev${act?\" is-act\":\"\"}`,style:{...style||{},[\"--h\"]:`${h}px`,[\"--layer\"]:layer},onFocusCapture:e=>{if(!act||!wrap.current)return;try{if(e.target.matches(\":focus-visible\")){const t0=e.target;setKb(true);requestAnimationFrame(()=>requestAnimationFrame(()=>{try{t0.scrollIntoView({block:\"center\"});}catch(x){}}));return;}}catch(x){}const t=e.target;const w=window;const r=wrap.current.getBoundingClientRect();const T=sp.current?sp.current.offsetHeight:0;const y=Math.max(0,Math.min(document.documentElement.scrollHeight-window.innerHeight,r.top+window.scrollY-window.innerHeight+2*T));if(Math.abs(window.scrollY-y)>4){if(w.__ltLenis)w.__ltLenis.scrollTo(y,{immediate:true,force:true});else window.scrollTo(0,y);}wrap.current.dataset.snap=\"1\";requestAnimationFrame(()=>{try{const q=t.getBoundingClientRect();if(q.top<0||q.bottom>window.innerHeight)t.scrollIntoView({block:\"nearest\"});}catch(x){}});},children:[/*#__PURE__*/_jsx(\"div\",{ref:inner,className:\"ms-rev-in\",children:children}),/*#__PURE__*/_jsx(\"div\",{ref:sp,className:\"ms-rev-sp\",\"aria-hidden\":true})]});}const REVEAL_CONTROLS={reveal:{type:ControlType.Boolean,title:\"Reveal\",description:\"Curtain: this section waits behind the one above and is uncovered as that one lifts away\",enabledTitle:\"Curtain\",disabledTitle:\"Off\",defaultValue:true},layer:{type:ControlType.Number,title:\"Layer\",description:\"Stacking order. Must be LOWER than the section above (sections default to 10)\",min:0,max:20,step:1,displayStepper:true,defaultValue:9,hidden:p=>p.reveal===false}};const splitWords=s=>String(s||\"\").replace(/\\*([^*]+)\\*/g,(_m,g)=>g.trim().split(/\\s+/).map(w=>{const m=w.match(/^(.*?)([.,!?;:’']*)$/);return m&&m[1]?`*${m[1]}*${m[2]}`:w;}).join(\" \")).split(/\\s+/).filter(Boolean).map(t=>{const m=t.match(/^\\*(.+?)\\*([.,!?;:’']*)$/);return m?{t:m[1],tail:m[2],acc:true}:{t:t.replace(/\\*/g,\"\"),tail:\"\",acc:false};});const plainOf=s=>String(s||\"\").replace(/\\*/g,\"\").replace(/\\s*\\|\\s*/g,\" \").replace(/\\s+/g,\" \").trim();// Heading whose words rise out of masks. \"|\" forces a line break, *word* = the accent: orange on dark, text-safe orange (--ms-acc) on cream, ink plate on the orange band.\nconst Head=({text,on,D,tag=\"h2\",size=\"clamp(40px,4.3vw,64px)\",lh=1,delay=0,step=55,style,className})=>{const Tag=tag;let k=0;return /*#__PURE__*/_jsx(Tag,{className:`ms-hd${on?\" is-on\":\"\"}${tag===\"h1\"?\" is-ssr\":\"\"}${className?\" \"+className:\"\"}`,\"aria-label\":plainOf(text),style:{...HD(D),fontSize:size,lineHeight:lh,...style||{}},children:String(text).split(\"|\").map((line,li)=>/*#__PURE__*/_jsx(\"span\",{className:\"ms-hd-l\",\"aria-hidden\":true,children:splitWords(line).map((w,i)=>{const d=delay+k++*step;return /*#__PURE__*/_jsxs(\"span\",{className:`ms-hd-w${w.acc?\" is-accw\":\"\"}`,children:[/*#__PURE__*/_jsx(\"span\",{className:`ms-hd-i${w.acc?\" is-acc\":\"\"}`,style:{transitionDelay:`${d}ms`,[\"--pd\"]:`${d+500}ms`,[\"--dl\"]:`${d}ms`},children:w.acc?/*#__PURE__*/_jsxs(\"span\",{className:\"ms-it\",children:[w.t,w.tail,/*#__PURE__*/_jsx(\"svg\",{className:\"ms-spark\",viewBox:\"0 0 24 24\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:\"M12 1.5C12.9 8 16 11.1 22.5 12 16 12.9 12.9 16 12 22.5 11.1 16 8 12.9 1.5 12 8 11.1 11.1 8 12 1.5Z\"})})]}):/*#__PURE__*/_jsxs(_Fragment,{children:[w.t,w.tail]})}),\" \"]},i);})},li))});};const Eyebrow=({text,on,M,delay=0,style})=>text?/*#__PURE__*/_jsxs(\"p\",{className:`ms-eb${on?\" is-on\":\"\"}`,style:{...M,transitionDelay:`${delay}ms`,...style||{}},children:[/*#__PURE__*/_jsx(\"i\",{\"aria-hidden\":true}),text]}):null;// one-shot rise for copy / rows\nconst rise=(on,d=0,y=22)=>({opacity:on?1:0,translate:on?\"0 0\":`0 ${y}px`,transition:`opacity .9s ease ${d}ms, translate 1s cubic-bezier(.2,.8,.2,1) ${d}ms`});// Image that UNMASKS through a shape as it enters, settles from a zoom, then drifts with scroll (needs --sp on an ancestor).\nconst SHAPES={up:[\"inset(100% 0 0 0)\",\"inset(0 0 0 0)\"],down:[\"inset(0 0 100% 0)\",\"inset(0 0 0 0)\"],left:[\"inset(0 100% 0 0)\",\"inset(0 0 0 0)\"],right:[\"inset(0 0 0 100%)\",\"inset(0 0 0 0)\"],diag:[\"polygon(0 100%,0 100%,0 100%,0 100%)\",\"polygon(0 -160%,260% 100%,0 100%,0 100%)\"],iris:[\"circle(0% at 50% 55%)\",\"circle(85% at 50% 55%)\"],slit:[\"inset(0 50% 0 50%)\",\"inset(0 0 0 0)\"]};const Um=({src,alt=\"\",on,shape=\"up\",ratio=\"4/5\",delay=0,par=1,focus=\"50% 40%\",radius=4,sizes=\"(max-width: 809px) 100vw, 50vw\",style,className,eager=false})=>{const sh=SHAPES[shape]||SHAPES.up;const im=RS(src,sizes);return /*#__PURE__*/_jsx(\"div\",{className:`ms-um${on?\" is-on\":\"\"}${className?\" \"+className:\"\"}`,style:{aspectRatio:ratio,borderRadius:radius,clipPath:on?sh[1]:sh[0],WebkitClipPath:on?sh[1]:sh[0],transitionDelay:`${delay}ms`,[\"--par\"]:par,...style||{}},children:/*#__PURE__*/_jsx(\"img\",{src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:alt,loading:eager?\"eager\":\"lazy\",decoding:\"async\",draggable:false,style:{objectPosition:focus,transitionDelay:`${delay}ms`}})});};const CSS_MOTION=`\n.ms[data-kb] *,.ms[data-kb] *::before,.ms[data-kb] *::after,.ms [data-kb],.ms [data-kb] *,.ms [data-kb] *::before,.ms [data-kb] *::after{transition:none!important}\n.ms-sec{position:relative;z-index:10;display:block;width:100%;--sp:.5;--pp:0}\n.ms-rev{position:relative;width:100%;--rv:1} .ms-rev-in{position:relative} .ms-rev-sp{height:0}\n.ms-rev.is-act{--rv:0;--t:min(var(--h),100vh);--t:min(var(--h),100svh);z-index:var(--layer,9);margin-top:calc(var(--t)*-1)}\n.ms-rev.is-act>.ms-rev-in{position:sticky;top:calc(100vh - var(--t));top:calc(100svh - var(--t))} .ms-rev.is-act>.ms-rev-sp{height:var(--t)}\n/* the lifting edge throws a shadow on the section beneath, and that section comes out of the dark as it is uncovered */\n.ms-rev.is-act>.ms-rev-in::before{content:\"\";position:absolute;z-index:40;left:0;right:0;top:0;height:120px;translate:0 calc((1 - var(--rv))*var(--t));background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,0));opacity:min(1,calc(var(--rv)*(1 - var(--rv))*9));pointer-events:none}\n.ms-rev.is-act>.ms-rev-in::after{content:\"\";position:absolute;z-index:39;left:0;right:0;top:0;height:var(--t);background:#000;opacity:calc((1 - var(--rv))*.16);pointer-events:none}\n.ms-wrap{--pad:56px;width:100%;max-width:calc(${MAXW} + var(--pad)*2);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}\n.ms-eb{display:inline-flex;align-items:center;gap:9px;width:max-content;max-width:100%;margin:0;padding:0;font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;line-height:1.5;color:var(--ms-acc);opacity:0;translate:0 10px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.8,.2,1)} .ms-eb.is-on{opacity:1;translate:0 0}\n.ms-eb i{display:block;flex:none;order:-1;width:7px;height:7px;border-radius:50%;background:var(--ms-brass);animation:ms-blink 1.6s ease-in-out infinite}\n.ms-dark .ms-eb{color:color-mix(in srgb,var(--ms-brass) 46%,var(--ms-cloud))} .ms-lt .ms-eb{color:var(--ms-acc)}\n.ms-band .ms-eb{padding:6px 12px 6px 10px;border-radius:999px;background:var(--ms-ink);color:var(--ms-bone)} .ms-band .ms-lt .ms-eb{padding:0;background:none;color:var(--ms-acc)}\n.ms-hd{margin:0;letter-spacing:-.03em;text-wrap:balance} .ms-hd-l{display:block}\n.ms-hd-w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .04em .12em;margin:0 -.04em -.12em;white-space:pre}\n.ms-hd-i{position:relative;display:inline-block;translate:0 108%;transition:translate 1.05s cubic-bezier(.2,.85,.15,1)}\n.ms-hd.is-on .ms-hd-i{translate:0 0}\n/* page h1: rises by CSS from the server HTML (no wait for hydration); paused only while a loader / transition cover holds the page */\n@keyframes ms-hd-rise{from{translate:0 108%}to{translate:0 0}}\n.ms-hd.is-ssr .ms-hd-i{animation:ms-hd-rise .8s cubic-bezier(.2,.85,.15,1) var(--dl,0ms) both}\nhtml[class*=\"ms-hold\"] .ms-hd.is-ssr .ms-hd-i{animation-play-state:paused}\n.ms-hd-w.is-accw{overflow:hidden}\n.ms-it{position:relative;display:inline-block;font-style:normal;color:var(--ms-acc)} .ms-dark .ms-it{color:var(--ms-brass)} .ms-lt .ms-it{color:var(--ms-acc)}\n.ms-band .ms-it{color:var(--ms-bone);background:var(--ms-ink);border-radius:.14em;padding:0 .16em;margin:0 -.02em} .ms-band .ms-lt .ms-it{color:var(--ms-acc);background:none;padding:0;margin:0}\n.ms-spark{display:none}\n\n.ms-um{position:relative;overflow:hidden;transition:clip-path 1.35s cubic-bezier(.7,0,.2,1);background:color-mix(in srgb,var(--ms-stone) 22%,transparent)}\n.ms-um img{position:absolute;left:0;top:-9%;width:100%;height:118%;display:block;object-fit:cover;scale:1.28;translate:0 calc((var(--sp,.5) - .5)*var(--par,1)*-7%);transition:scale 1.9s cubic-bezier(.16,.84,.24,1);user-select:none}\n.ms-um.is-on img{scale:1}\n/* diagonal cuts: the section hangs over its neighbour and is cut on a slope (clip-path, so the neighbour shows through) */\n.ms-cut-t{margin-top:calc(var(--cut,7vw)*-1);clip-path:polygon(0 var(--cut,7vw),100% 0,100% 100%,0 100%);padding-top:var(--cut,7vw)}\n.ms-cut-b{margin-bottom:calc(var(--cut,7vw)*-1);padding-bottom:var(--cut,7vw)}\n.ms-cut-t.ms-cut-b{clip-path:polygon(0 var(--cut,7vw),100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n.ms-cut-b:not(.ms-cut-t){clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut,7vw)),0 100%)}\n@media (max-width:1099px){.ms-wrap{--pad:32px}}\n@media (max-width:699px){.ms-wrap{--pad:20px}}\n@media (prefers-reduced-motion:reduce){.ms-hd-i{translate:0 0!important} .ms-hd.is-ssr .ms-hd-i{animation:none!important} .ms-spark{scale:1!important;rotate:0deg!important;animation:none!important} .ms-um{clip-path:none!important} .ms-um img{scale:1!important;translate:0 0!important}}\n`;const SEED={site:[{\"slug\":\"site\",\"f1\":\"Mainstage\",\"f2\":\"Tech conference & summit\",\"f3\":\"Three days of talks, workshops and late hallway conversations for the people who build software, products and AI. One summit, one stage, 1,800 seats.\",\"f4\":\"hello@mainstage.events\",\"f5\":\"18–20 May 2027\",\"f6\":\"Lisbon\",\"f7\":\"Pavilh\\xe3o do Rio\",\"f8\":\"Europe/Lisbon\",\"f9\":\"2027-05-18T09:00:00+01:00\",\"f10\":\"/register\",\"f11\":\"/tickets\",\"f12\":\"X:https://x.com, LinkedIn:https://linkedin.com, YouTube:https://youtube.com, Instagram:https://instagram.com\",\"f13\":\"27\",\"f14\":\"64 speakers \\xb7 1,800 seats \\xb7 3 days\",\"f15\":\"/speakers\",\"f16\":\"€\",\"img\":\"https://framerusercontent.com/images/oPFpzaMWN4NDaSkVZ2pm5QF60I.webp\",\"img2\":\"https://framerusercontent.com/images/hzb4tz2FTR7VoWUK174y3gdhQ.webp\",\"n1\":\"1\",\"f17\":\"Cais do Rio 14, 1200-450 Lisbon, Portugal\",\"f18\":\"+351 21 555 0142\",\"img3\":\"https://framerusercontent.com/images/YB8LrqBpj2cax497GKc8CVVo.webp\"}],faq:[{\"slug\":\"whats-included\",\"f1\":\"What does a pass include?\",\"f2\":\"Every pass covers all three days, every talk on every stage, lunch, coffee and the talk recordings. Pro adds two workshops, front rows and the opening party. VIP adds the speaker dinner, a backstage tour and the hotel shuttle.\",\"f3\":\"Tickets\",\"n1\":\"1\"},{\"slug\":\"refunds\",\"f1\":\"Can I get a refund or transfer my pass?\",\"f2\":\"Passes are refundable until 30 days before doors. After that you can transfer your pass to a colleague at no cost, up to the morning of day one.\",\"f3\":\"Tickets\",\"n1\":\"2\"},{\"slug\":\"groups-invoices\",\"f1\":\"Do you offer group prices and invoices?\",\"f2\":\"Yes. Groups of five or more get 15% off, and every order comes with a VAT invoice. Write to us and we will set it up the same day.\",\"f3\":\"Tickets\",\"n1\":\"3\"},{\"slug\":\"recordings\",\"f1\":\"Will the talks be recorded?\",\"f2\":\"Every main-stage talk is recorded and sent to pass holders within two weeks. Workshops are not recorded.\",\"f3\":\"Programme\",\"n1\":\"4\"},{\"slug\":\"workshops-how\",\"f1\":\"How do workshops work?\",\"f2\":\"Workshops are small, hands-on sessions with limited seats. Pro and VIP passes include two; General pass holders can add one at checkout while seats last.\",\"f3\":\"Programme\",\"n1\":\"5\"},{\"slug\":\"language\",\"f1\":\"What language are the talks in?\",\"f2\":\"All talks and workshops are in English. Live captions run on the main stage screens.\",\"f3\":\"Programme\",\"n1\":\"6\"},{\"slug\":\"getting-there\",\"f1\":\"How do I get to the venue?\",\"f2\":\"Pavilh\\xe3o do Rio is 12 minutes from Lisbon airport by metro and a short walk from the riverfront hotels. The Venue page has routes, parking and step-free access.\",\"f3\":\"Venue & travel\",\"n1\":\"7\"},{\"slug\":\"hotels\",\"f1\":\"Are there hotel deals for attendees?\",\"f2\":\"Yes. Three partner hotels within 300 metres hold rooms at a fixed rate until 1 April. The booking links are on the Travel page.\",\"f3\":\"Venue & travel\",\"n1\":\"8\"},{\"slug\":\"sponsor-how\",\"f1\":\"How can my company sponsor Mainstage?\",\"f2\":\"We have Headline, Gold and Community packages, each with a booth and passes. See the sponsor page for what is left, or write to us for the deck.\",\"f3\":\"Sponsors\",\"n1\":\"9\"}]};const SW_BUILD=\"MsFaq@cms1\";// An override control wins only when it holds real text; empty (or a single space) inherits from the CMS.\nconst pick=(o,fb)=>o!==undefined&&o!==null&&String(o).trim()?String(o).trim():fb;const imgOf=(r,k=\"img\")=>String(r&&r[k]||\"\").split(\"?\")[0];// A cleared CMS image draws this quiet placeholder — never a stock photo, and list positions stay aligned with their rows.\nconst EMPTY_IMG=\"data:image/svg+xml;utf8,\"+encodeURIComponent(\"<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 500' preserveAspectRatio='xMidYMid slice'><rect width='400' height='500' fill='#2A241D'/><rect x='120' y='170' width='160' height='160' rx='8' fill='none' stroke='#AEB6C6' stroke-width='1.5'/><rect x='100' y='150' width='200' height='200' rx='10' fill='none' stroke='#C3CAD8' stroke-width='1' stroke-dasharray='2 6'/></svg>\");const imgOr=(r,k=\"img\")=>imgOf(r,k)||EMPTY_IMG;const cmsNum=(r,k,fb=0)=>{const v=parseFloat(String((r&&r[k])??\"\"));return isFinite(v)?v:fb;};const useIso=typeof window===\"undefined\"?useEffect:useLayoutEffect;function readCMS(kind){if(typeof document===\"undefined\")return null;if(!document.querySelector('[data-ms-row=\"bridge\"]'))return null;const seen=new Set;const out=[];document.querySelectorAll(`[data-ms-row=\"${kind}\"]`).forEach(el=>{const o={};for(const a of Array.from(el.attributes))if(a.name.startsWith(\"data-\"))o[a.name.slice(5)]=a.value;const key=o.slug||JSON.stringify(o);if(seen.has(key))return;seen.add(key);out.push(o);});return out.sort((a,b)=>(parseFloat(a.n1)||0)-(parseFloat(b.n1)||0));}function useCMS(kind,fallback){const[rows,setRows]=useState(fallback);const sig=useRef(\"\");useIso(()=>{let n=0,t=0,ok=0;try{const w=window;if(!w.__ltCms||typeof w.__ltCms!==\"object\")w.__ltCms={};w.__ltCms[SW_BUILD]=1;}catch(e){}const pull=()=>{const r=readCMS(kind);if(!r)return false;const s=JSON.stringify(r);if(s!==sig.current){sig.current=s;setRows(r);}return true;};const mo=new MutationObserver(()=>{if(pull()){ok++;if(ok>2)mo.disconnect();}});mo.observe(document.body,{childList:true,subtree:true});if(pull())ok++;const poll=()=>{if(n++<30){pull();t=window.setTimeout(poll,150);}};t=window.setTimeout(poll,150);return()=>{mo.disconnect();window.clearTimeout(t);};},[kind]);return rows;}// The one-row Site collection holds every event-wide fact (name, dates, city, venue, doors time, register / tickets links). A section's \"… Override\" control only replaces it on that one section.\nfunction useSite(){const r=useCMS(\"site\",SEED.site||[]);const s=r[0]||(SEED.site||[])[0]||{};const g=k=>String(s[k]??\"\").trim();return{name:g(\"f1\"),descriptor:g(\"f2\"),tagline:g(\"f3\"),email:g(\"f4\"),dates:g(\"f5\"),city:g(\"f6\"),venue:g(\"f7\"),tz:g(\"f8\"),doors:g(\"f9\"),register:g(\"f10\")||\"/register\",tickets:g(\"f11\")||\"/tickets\",socials:g(\"f12\"),edition:g(\"f13\"),proof:g(\"f14\"),speakers:g(\"f15\")||\"/speakers\",currency:g(\"f16\")||\"€\",address:g(\"f17\"),phone:g(\"f18\"),stage:String(s.img||\"\").split(\"?\")[0],crowd:String(s.img2||\"\").split(\"?\")[0],venuePhoto:String(s.img3||\"\").split(\"?\")[0]};}// Shared lookups (Speakers and Tracks are referenced BY NAME from Sessions / Workshops / Speakers.Track). Case- and space-insensitive; undefined when the row was deleted (callers must render without it).\nconst normName=v=>String(v??\"\").trim().toLowerCase().replace(/\\s+/g,\" \");const speakerByName=(rows,name)=>{const k=normName(name);return k?rows.find(r=>normName(r.f1)===k):undefined;};const trackByName=(rows,name)=>{const k=normName(name);return k?rows.find(r=>normName(r.f2)===k||normName(r.f1)===k):undefined;};const trackColour=(rows,name,fb=\"var(--ms-brass)\")=>{const t=trackByName(rows,name);return t&&/^#[0-9a-f]{3,8}$/i.test(String(t.f5||\"\").trim())?String(t.f5).trim():fb;};// distinct values of one field, in row order (\"Day 1 · Tue 18 May\", tiers, FAQ groups)\nconst uniqOf=(rows,k)=>{const out=[];rows.forEach(r=>{const v=String(r[k]||\"\").trim();if(v&&!out.includes(v))out.push(v);});return out;};// \"Day 1 · Tue 18 May\" → { n: \"Day 1\", d: \"Tue 18 May\" }\nconst dayParts=s=>{const[n,d]=String(s||\"\").split(\"\\xb7\").map(x=>x.trim());return{n:n||\"\",d:d||\"\"};};const isSoldOut=(r,k)=>{const v=String((r&&r[k])??\"\").trim().toLowerCase();return v===\"0\"||v===\"yes\"||v===\"true\"||v===\"sold out\";};const linkList=s=>String(s||\"\").split(\",\").map(x=>x.trim()).filter(Boolean).map(x=>{const i=x.indexOf(\":\");return{l:i<0?x:x.slice(0,i).trim(),h:i<0?\"/\":x.slice(i+1).trim()};});const listOf=s=>String(s||\"\").split(\";\").map(x=>x.trim()).filter(Boolean);// The row a CMS detail page is about: the bound Slug control wins (server render included), else the last URL segment, else the first row.\nfunction useRow(kind,fallback,slug){const rows=useCMS(kind,fallback);const[path,setPath]=useState(\"\");useEffect(()=>{try{setPath(decodeURIComponent(window.location.pathname.split(\"/\").filter(Boolean).pop()||\"\"));}catch(e){}},[]);const want=String(slug||\"\").trim()||path;const row=rows.find(r=>r.slug===want)||rows[0]||{};return{row,rows};}const crumbs=s=>linkList(s);// Open now? Open Hours = \"1-6 07:00-19:00\" (weekday numbers, Mon = 1 … Sun = 7) evaluated in the Site Time Zone.\nfunction openState(spec,tz){try{const m=String(spec||\"\").match(/(\\d)\\s*-\\s*(\\d)\\s+(\\d{1,2}):(\\d{2})\\s*-\\s*(\\d{1,2}):(\\d{2})/);if(!m)return null;const parts=new Intl.DateTimeFormat(\"en-US\",{timeZone:tz||\"UTC\",weekday:\"short\",hour:\"2-digit\",minute:\"2-digit\",hour12:false}).formatToParts(new Date);const g=t=>(parts.find(p=>p.type===t)||{value:\"\"}).value;const wd=[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\",\"Sun\"].indexOf(g(\"weekday\"))+1;const mins=Number(g(\"hour\"))%24*60+Number(g(\"minute\"));const d1=Number(m[1]),d2=Number(m[2]),a=Number(m[3])*60+Number(m[4]),b=Number(m[5])*60+Number(m[6]);const open=wd>=d1&&wd<=d2&&mins>=a&&mins<b;return{open,label:open?`Open \\xb7 till ${m[5].padStart(2,\"0\")}:${m[6]}`:`Closed \\xb7 opens ${m[3].padStart(2,\"0\")}:${m[4]}`};}catch(e){return null;}}const MSFQ_PHOTO=\"https://framerusercontent.com/images/AS4Cw0y7OAF7YwKRABmbwZ8kk.webp\";export default function MsFaq(props){const{eyebrow=\"10 \\xb7 Questions\",heading=\"Before you|*book.*\",sub=\"Something else? Write to {email}. We answer within a day.\",callLabel=\"Contact us\",callLink=\"/contact\",photo,photoAlt=\"A microphone on the main stage before doors open\",photoNote=\"Main stage \\xb7 sound check\",allLabel=\"All\",emptyText=\"No questions in this group yet.\",maxRows=12,openFirst=true,tabsName=\"Question groups\",bpHint=\"auto\"}=props;const c=colorsOf(props);const{D,B,M}=fontsOf(props);useFonts();const live=useLive();const rm=useReduced();const still=useStill();const site=useSite();const root=useRef(null);const{w}=useSize(root,bpHint);const ph=w<810,tab=!ph&&w<1100;useMagnet(root,live);useScrollVars(root,live,rm);useNearFocus(root,live);const on=useOn(root,live,rm);const ALL=useCMS(\"faq\",SEED.faq).filter(r=>r.f1).slice(0,Math.max(1,maxRows));const groups=uniqOf(ALL,\"f3\");const[g,setG]=useState(\"\");const rows=ALL.filter(r=>!g||(r.f3||\"\").trim()===g);const idOf=(r,i)=>r.slug||String(i);const firstId=ALL.length?idOf(ALL[0],0):\"\";const[open,setOpen]=useState(()=>openFirst?firstId:\"\");const tabsRef=useRef(null);const tabList=[\"\",...groups];// roving tabindex over the group tabs: arrows / Home / End move and select\nconst onTabKey=e=>{const i=tabList.indexOf(g);let n=-1;if(e.key===\"ArrowRight\"||e.key===\"ArrowDown\")n=(i+1)%tabList.length;else if(e.key===\"ArrowLeft\"||e.key===\"ArrowUp\")n=(i-1+tabList.length)%tabList.length;else if(e.key===\"Home\")n=0;else if(e.key===\"End\")n=tabList.length-1;if(n<0)return;e.preventDefault();setG(tabList[n]);requestAnimationFrame(()=>{const b=tabsRef.current?.querySelectorAll(\"button\")[n];if(b)b.focus();});};const email=site.email;const parts=String(sub).split(/(\\{email\\}|\\{phone\\})/g).filter(x=>x!==\"\");const subEl=parts.map((p,i)=>p===\"{email}\"?email?/*#__PURE__*/_jsx(\"a\",{href:`mailto:${email}`,children:email},i):null:p===\"{phone}\"?site.phone?/*#__PURE__*/_jsx(\"a\",{href:`tel:${cleanTel(site.phone)}`,children:site.phone},i):null:/*#__PURE__*/_jsx(\"span\",{children:p},i));const fin=still||rm;const im=RS(srcOf(photo,MSFQ_PHOTO),\"(max-width: 1099px) 34vw, 420px\");return /*#__PURE__*/_jsxs(\"section\",{ref:root,className:`ms ms-sec msfq${ph?\" is-ph\":tab?\" is-tab\":\"\"}${on?\" is-on\":\"\"}${fin?\" is-fin\":\"\"}`,style:{...cssVars(c),...B,...props.style||{}},children:[/*#__PURE__*/_jsx(\"link\",{rel:\"stylesheet\",href:FONTS}),/*#__PURE__*/_jsx(\"style\",{dangerouslySetInnerHTML:{__html:CSS_BASE+CSS_MOTION+CSS_MSFQ}}),/*#__PURE__*/_jsxs(\"div\",{className:\"ms-wrap msfq-in\",children:[/*#__PURE__*/_jsx(\"div\",{className:\"msfq-l\",children:/*#__PURE__*/_jsxs(\"div\",{className:\"msfq-stk\",children:[/*#__PURE__*/_jsx(Eyebrow,{text:eyebrow,on:on,M:M}),/*#__PURE__*/_jsx(Head,{text:heading,on:on,D:D,step:70,className:\"msfq-h\"}),/*#__PURE__*/_jsx(\"p\",{className:\"msfq-sub\",style:rise(on,300),children:subEl}),/*#__PURE__*/_jsx(\"div\",{style:rise(on,420),children:/*#__PURE__*/_jsx(Btn,{href:T(callLink,\"/contact\"),label:callLabel,kind:\"ghost\"})}),!ph&&/*#__PURE__*/_jsxs(\"figure\",{className:`msfq-fig${on?\" is-on\":\"\"}`,style:rise(on,520,30),children:[/*#__PURE__*/_jsx(\"img\",{className:\"ms-lit\",src:im.src,srcSet:im.srcSet,sizes:im.sizes,alt:photoAlt,loading:\"lazy\",decoding:\"async\",draggable:false}),photoNote&&/*#__PURE__*/_jsxs(\"figcaption\",{className:\"ms-mono\",style:M,children:[/*#__PURE__*/_jsx(\"i\",{className:\"ms-live\",\"aria-hidden\":true}),photoNote]})]})]})}),/*#__PURE__*/_jsxs(\"div\",{className:\"msfq-r\",children:[groups.length>1&&/*#__PURE__*/_jsx(\"div\",{ref:tabsRef,className:\"msfq-tabs ms-inring\",role:\"group\",\"aria-label\":tabsName,style:rise(on,200),onKeyDown:onTabKey,children:tabList.map(x=>{const n=x?ALL.filter(r=>(r.f3||\"\").trim()===x).length:ALL.length;return /*#__PURE__*/_jsxs(\"button\",{type:\"button\",className:`msfq-tab${g===x?\" is-on\":\"\"}`,\"aria-pressed\":g===x,tabIndex:g===x?0:-1,onClick:()=>setG(x),style:{...M},children:[x||allLabel,/*#__PURE__*/_jsx(\"small\",{children:n})]},x||\"all\");})}),rows.length===0?/*#__PURE__*/_jsx(\"p\",{className:\"msfq-empty\",children:emptyText}):/*#__PURE__*/_jsx(\"ul\",{className:\"msfq-list\",children:rows.map((r,i)=>{const id=idOf(r,ALL.indexOf(r));const isO=open===id;const pid=`msfq-a-${id}`;return /*#__PURE__*/_jsxs(\"li\",{className:`msfq-row${isO?\" is-o\":\"\"}`,style:{[\"--i\"]:i},children:[/*#__PURE__*/_jsx(\"h3\",{className:\"msfq-h3\",children:/*#__PURE__*/_jsxs(\"button\",{type:\"button\",className:\"msfq-q\",\"aria-expanded\":isO,\"aria-controls\":pid,onClick:()=>setOpen(isO?\"\":id),children:[/*#__PURE__*/_jsx(\"span\",{className:\"msfq-n\",style:{...M},\"aria-hidden\":true,children:String(i+1).padStart(2,\"0\")}),/*#__PURE__*/_jsx(\"span\",{className:\"msfq-qt\",style:{...HD(D)},children:r.f1}),/*#__PURE__*/_jsx(\"span\",{className:\"msfq-dot\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"i\",{})}),/*#__PURE__*/_jsx(\"span\",{className:\"msfq-rule\",\"aria-hidden\":true})]})}),/*#__PURE__*/_jsx(\"div\",{id:pid,className:\"msfq-a\",role:\"region\",\"aria-label\":r.f1,\"aria-hidden\":!isO,children:/*#__PURE__*/_jsxs(\"div\",{className:\"msfq-ai\",children:[/*#__PURE__*/_jsx(\"p\",{children:r.f2}),r.f3?/*#__PURE__*/_jsx(\"span\",{className:\"msfq-grp ms-mono\",style:{...M},children:r.f3}):null]})})]},id);})},g||\"all\")]})]})]});}const CSS_MSFQ=`\n.msfq{isolation:isolate;overflow-x:clip}\n.msfq-in{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(48px,6vw,110px);padding-top:clamp(96px,9vw,144px);padding-bottom:clamp(96px,9vw,144px);align-items:start}\n.msfq-l{align-self:stretch}\n.msfq-stk{position:sticky;top:104px;display:flex;flex-direction:column;align-items:flex-start}\n.msfq-stk .ms-eb{margin-bottom:22px}\n.msfq-sub{margin:24px 0 26px;max-width:400px;font-size:17px;line-height:1.55;color:var(--ms-mut)}\n.msfq-sub a{color:var(--ms-ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--ms-brass);text-decoration-thickness:2px;text-underline-offset:4px;white-space:nowrap;transition:background .3s} .msfq-sub a:hover{background:color-mix(in srgb,var(--ms-brass) 30%,transparent)}\n.msfq-fig{position:relative;margin:40px 0 0;height:clamp(320px,calc(100svh - 450px),540px);max-width:100%;aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:var(--ms-pine)}\n.msfq-fig img{position:absolute;left:0;top:-6%;width:100%;height:112%;display:block;object-fit:cover;object-position:50% 40%;translate:0 calc((var(--sp,.5) - .5)*-9%);scale:1.02;transition:filter 1.2s ease,scale 1.6s cubic-bezier(.16,.84,.24,1)} .msfq-fig:hover img{scale:1.045;filter:none}\n.msfq-fig figcaption{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--ms-night);color:var(--ms-cloud);font-size:10.5px}\n.msfq-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px}\n.msfq-tab{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 15px;border:0;border-radius:999px;background:color-mix(in srgb,var(--ms-ink) 7%,transparent);color:var(--ms-ink);font-size:11.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:background .3s,color .3s}\n.msfq-tab small{font-size:10px;font-weight:500;color:var(--ms-mut);transition:color .3s} .msfq-tab:hover{background:color-mix(in srgb,var(--ms-ink) 14%,transparent)}\n.msfq-tab.is-on{background:var(--ms-ink);color:var(--ms-bone)} .msfq-tab.is-on small{color:color-mix(in srgb,var(--ms-brass) 60%,var(--ms-cloud))}\n.msfq-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--ms-fog)}\n.msfq-row{position:relative;border-bottom:1px solid var(--ms-fog);opacity:0;translate:0 26px;transition:opacity .8s ease calc(var(--i)*70ms + 160ms),translate .95s cubic-bezier(.2,.8,.2,1) calc(var(--i)*70ms + 160ms)}\n.msfq.is-on .msfq-row,.msfq.is-fin .msfq-row{opacity:1;translate:0 0}\n@keyframes msfq-in{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}\n.msfq-h3{margin:0;font:inherit}\n.msfq-q{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;width:100%;min-height:84px;padding:20px 0;border:0;background:none;color:inherit;text-align:left;cursor:pointer}\n.msfq-n{font-size:11.5px;font-weight:500;letter-spacing:.12em;color:var(--ms-mut)}\n.msfq-qt{font-size:clamp(20px,1.75vw,26px);line-height:1.18;letter-spacing:-.02em;text-wrap:balance;transition:translate .5s cubic-bezier(.2,.8,.2,1)} .msfq-q:hover .msfq-qt{translate:6px 0}\n/* the marker: the live dot widens into a small ink plate with a \"–\" when the row is open */\n.msfq-dot{justify-self:end;position:relative;display:grid;place-items:center;width:10px;height:10px;border-radius:999px;background:var(--ms-brass);transition:width .5s cubic-bezier(.3,1.3,.5,1),height .5s cubic-bezier(.3,1.3,.5,1),background .35s}\n.msfq-dot i{display:block;width:12px;height:2px;border-radius:2px;background:var(--ms-bone);opacity:0;scale:.2 1;transition:opacity .3s,scale .45s cubic-bezier(.3,1.3,.5,1)}\n.msfq-row:not(.is-o) .msfq-dot{animation:ms-blink 1.6s ease-in-out infinite} .msfq-q:hover .msfq-dot{animation:none;width:16px;height:16px}\n.msfq-row.is-o .msfq-dot{width:38px;height:26px;background:var(--ms-ink)} .msfq-row.is-o .msfq-dot i{opacity:1;scale:1 1}\n.msfq-rule{position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--ms-brass);transform:scaleX(0);transform-origin:0 50%;transition:transform .6s cubic-bezier(.3,.9,.3,1)} .msfq-q:hover .msfq-rule,.msfq-q:focus-visible .msfq-rule,.msfq-row.is-o .msfq-rule{transform:none}\n.msfq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .6s cubic-bezier(.3,.9,.3,1);visibility:hidden;transition-property:grid-template-rows,visibility;transition-delay:0s,.6s}\n.msfq-row.is-o .msfq-a{grid-template-rows:1fr;visibility:visible;transition-delay:0s,0s}\n.msfq-ai{overflow:hidden;min-height:0;padding:0 52px 0 52px} .msfq-ai p{margin:0;padding:2px 0 16px;max-width:620px;font-size:16.5px;line-height:1.6;color:var(--ms-mut)}\n.msfq-grp{display:inline-block;margin:0 0 24px;padding:5px 10px;border-radius:999px;font-size:10.5px;background:color-mix(in srgb,var(--ms-ink) 7%,transparent);color:var(--ms-mut)}\n.msfq-empty{margin:0;padding:34px 0;border-top:1px solid var(--ms-fog);border-bottom:1px solid var(--ms-fog);font-size:16px;color:var(--ms-mut)}\n.msfq.is-tab .msfq-in{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:40px} .msfq.is-tab .msfq-fig{margin-top:34px}\n.msfq.is-ph .msfq-in{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:76px;padding-bottom:76px} .msfq.is-ph .msfq-stk{position:static} .msfq.is-ph .msfq-sub{font-size:16px;margin:20px 0 22px}\n.msfq.is-ph .msfq-tabs{flex-wrap:nowrap;overflow-x:auto;margin:0 -20px 14px;padding:0 20px 4px;scrollbar-width:none} .msfq.is-ph .msfq-tabs::-webkit-scrollbar{display:none} .msfq.is-ph .msfq-tab{flex:none}\n.msfq.is-ph .msfq-q{grid-template-columns:30px minmax(0,1fr) 40px;min-height:72px;padding:17px 0} .msfq.is-ph .msfq-qt{font-size:19px} .msfq.is-ph .msfq-ai{padding:0 0 0 38px} .msfq.is-ph .msfq-ai p{font-size:15.5px}\n@media (prefers-reduced-motion:reduce){.msfq-row{opacity:1!important;translate:none!important} .msfq-fig img{translate:none!important;scale:1!important;filter:none!important}}\n`;addPropertyControls(MsFaq,{...COLOR_CONTROLS,...FONT_CONTROLS,...BP_CONTROL,eyebrow:{type:ControlType.String,title:\"Eyebrow\",defaultValue:\"10 \\xb7 Questions\"},heading:{type:ControlType.String,title:\"Heading\",description:\"| = line break, *word* = accent\",defaultValue:\"Before you|*book.*\"},sub:{type:ControlType.String,title:\"Sub copy\",description:\"{email} and {phone} are replaced by the Site email and phone\",defaultValue:\"Something else? Write to {email}. We answer within a day.\",displayTextArea:true},callLabel:{type:ControlType.String,title:\"Button\",defaultValue:\"Contact us\"},callLink:{type:ControlType.Link,title:\"Button link\",defaultValue:\"/contact\"},photo:{type:ControlType.ResponsiveImage,title:\"Photo\",description:\"Portrait, 4:5. Hidden on phones\"},photoAlt:{type:ControlType.String,title:\"Photo description\",defaultValue:\"A microphone on the main stage before doors open\"},photoNote:{type:ControlType.String,title:\"Photo label\",defaultValue:\"Main stage \\xb7 sound check\"},allLabel:{type:ControlType.String,title:\"All tab\",defaultValue:\"All\"},emptyText:{type:ControlType.String,title:\"Empty group text\",defaultValue:\"No questions in this group yet.\"},maxRows:{type:ControlType.Number,title:\"Max questions\",min:1,max:30,step:1,displayStepper:true,defaultValue:12},openFirst:{type:ControlType.Boolean,title:\"First open\",defaultValue:true},tabsName:{type:ControlType.String,title:\"Tabs name\",description:\"Read by screen readers\",defaultValue:\"Question groups\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"MsFaq\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./MsFaq.map"],"mappings":"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"}