{"version":3,"file":"WorkCard.DeGhc4XM.mjs","names":["React.useState","React.useEffect","React.useLayoutEffect","_Fragment"],"sources":["https:/framerusercontent.com/modules/baPqiBJbw9vLDIXH5tsr/4eYm7g3giZKCd30LOul1/WorkCard.js"],"sourcesContent":["// Framer module imports are resolved at runtime; the editor has no external module typings.\n// @ts-ignore\nimport{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{localizeTree,useTranslationRevision}from\"https://framerusercontent.com/modules/SSlYGvP7oNmMoeIpa4fk/ZaSe6fHr93pwEFyodXnN/SiteLanguage.js\";import*as React from\"react\";import{RenderTarget}from\"framer\";function useSiteReducedMotion(isStatic=false){const[reduced,setReduced]=React.useState(false);const useBrowserLayoutEffect=typeof window===\"undefined\"?React.useEffect:React.useLayoutEffect;useBrowserLayoutEffect(()=>{if(isStatic||typeof window===\"undefined\")return;const query=window.matchMedia(\"(prefers-reduced-motion: reduce)\");let preference=\"system\";const update=()=>setReduced(query.matches||preference===\"reduced\");const read=()=>{try{preference=window.localStorage.getItem(\"incolume-motion-preference\")||\"system\";}catch{}update();};const sync=event=>{const value=event.detail;if(value===\"system\"||value===\"reduced\"){preference=value;update();}};const storage=event=>{if(event.key===null||event.key===\"incolume-motion-preference\")read();};read();query.addEventListener(\"change\",update);window.addEventListener(\"incolume-motion-preference\",sync);window.addEventListener(\"storage\",storage);return()=>{query.removeEventListener(\"change\",update);window.removeEventListener(\"incolume-motion-preference\",sync);window.removeEventListener(\"storage\",storage);};},[isStatic]);return reduced;}/* ANIMATION STORYBOARD\n *   0ms  pointer or keyboard focus enters the cover\n * 400ms  metadata opacity 0 → 1, offset 4px → 0\n * 400ms  pointer exits; metadata dissolves without moving the grid\n * Touch: metadata remains visible. Reduced motion: immediate reveal.\n */const REVEAL={enterMs:400,exitMs:400,offsetY:4,ease:\"var(--ic-feedback-ease,cubic-bezier(.2,.65,.25,1))\"};const CARD_CSS=`\n.incolume-work-card { isolation: isolate; }\n.incolume-work-card:focus-visible { outline: 2px solid var(--token-e0cfd621-fd3d-4a44-9725-09cfadc20945, #111); outline-offset: 2px; }\n.incolume-work-card [data-framer-name=\"Project caption\"] { pointer-events: none; }\n@media (hover: hover) and (pointer: fine) {\n  .incolume-work-card [data-framer-name=\"Project caption\"] {\n    opacity: 0; transform: translateY(${REVEAL.offsetY}px);\n    transition: opacity var(--ic-feedback-duration,${REVEAL.exitMs}ms) ${REVEAL.ease}, transform var(--ic-feedback-duration,${REVEAL.enterMs}ms) ${REVEAL.ease};\n  }\n  .incolume-work-card:hover [data-framer-name=\"Project caption\"],\n  .incolume-work-card:focus-visible [data-framer-name=\"Project caption\"] {\n    opacity: 1; transform: translateY(0);\n    transition-duration: var(--ic-feedback-duration,${REVEAL.enterMs}ms);\n  }\n}\n@media (max-width: 809px) {\n  .incolume-work-card [data-framer-name=\"Project caption\"] { opacity: 1; transform: none; }\n}\n.incolume-work-card[data-reduced-motion=\"true\"] [data-framer-name=\"Project caption\"] { transform: none!important; transition: none!important; }\n@media (prefers-reduced-motion: reduce) {\n  .incolume-work-card [data-framer-name=\"Project caption\"] { transform: none!important; transition: none!important; }\n}\n`;/** Adds only interaction to the native CMS card; imagery, text and layout stay on the canvas. */export function withWorkCard(Component){return /*#__PURE__*/React.forwardRef(function WorkCard(props,ref){useTranslationRevision();const isCanvas=RenderTarget.current()===RenderTarget.canvas;const reducedMotion=useSiteReducedMotion(isCanvas);return localizeTree(/*#__PURE__*/_jsxs(_Fragment,{children:[!isCanvas&&/*#__PURE__*/_jsx(\"style\",{children:CARD_CSS}),/*#__PURE__*/_jsx(Component,{...props,ref:ref,\"data-reduced-motion\":reducedMotion,className:`${props.className||\"\"} incolume-work-card`})]}));});}/** Native CMS layout and browser scrolling; no gesture interception or scroll loop. */export function withFeaturedWorkRail(Component){return /*#__PURE__*/React.forwardRef(function FeaturedWorkRail(props,ref){return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"style\",{children:`\n                @media (max-width: 809.98px) {\n                    .incolume-featured-work {\n                        scroll-snap-type: x proximity;\n                        scroll-padding-inline: 12px;\n                        overscroll-behavior-x: contain;\n                        -webkit-overflow-scrolling: touch;\n                        scrollbar-width: none;\n                    }\n                    .incolume-featured-work::-webkit-scrollbar { display: none; }\n                    .incolume-featured-work > a { scroll-snap-align: start; }\n                    .incolume-featured-work > a:focus-visible {\n                        outline: 1px solid currentColor; outline-offset: -1px; border-radius: 8px;\n                    }\n                }\n            `}),/*#__PURE__*/_jsx(Component,{...props,ref:ref,className:`${props.className||\"\"} incolume-featured-work`})]});});}\nexport const __FramerMetadata__ = {\"exports\":{\"withFeaturedWorkRail\":{\"type\":\"reactHoc\",\"name\":\"withFeaturedWorkRail\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"withWorkCard\":{\"type\":\"reactHoc\",\"name\":\"withWorkCard\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"gRAE6R,SAAS,EAAqB,EAAS,GAAM,CAAC,GAAK,CAAC,EAAQ,GAAYA,EAAe,EAAK,EAAq9B,OAA/6B,IAAS,OAAYC,EAAgBC,EAAAA,KAAiD,CAAC,GAAG,GAAiB,IAAS,OAAY,OAAO,IAAM,EAAM,EAAO,WAAW,kCAAkC,EAAM,EAAW,SAAe,MAAW,EAAW,EAAM,SAAS,IAAa,SAAS,EAAQ,MAAS,CAAC,GAAG,CAAC,EAAW,EAAO,aAAa,QAAQ,4BAA4B,GAAG,QAAS,MAAM,CAAC,CAAC,EAAO,CAAE,EAAQ,EAAK,GAAO,CAAC,IAAM,EAAM,EAAM,QAAU,IAAQ,UAAU,IAAQ,aAAW,EAAW,EAAM,EAAO,EAAG,EAAQ,EAAQ,GAAO,EAAI,EAAM,MAAM,MAAM,EAAM,MAAM,+BAA6B,EAAK,CAAE,EAAuJ,OAArJ,EAAK,EAAE,EAAM,iBAAiB,SAAS,CAAM,EAAE,EAAO,iBAAiB,6BAA6B,CAAI,EAAE,EAAO,iBAAiB,UAAU,CAAO,MAAY,CAAC,EAAM,oBAAoB,SAAS,CAAM,EAAE,EAAO,oBAAoB,6BAA6B,CAAI,EAAE,EAAO,oBAAoB,UAAU,CAAO,CAAE,CAAE,EAAE,CAAC,CAAQ,CAAC,EAAS,CAAQ,CA2B1vC,SAAgB,EAAa,EAAU,CAAC,OAAoB,EAAiB,SAAkB,EAAM,EAAI,CAAC,EAAuB,EAAE,IAAM,EAAS,EAAa,QAAQ,IAAI,EAAa,OAAa,EAAc,EAAqB,CAAQ,EAAE,OAAO,EAA0B,EAAMC,EAAU,CAAC,SAAS,CAAC,CAAC,GAAuB,EAAK,QAAQ,CAAC,SAAS,CAAQ,CAAC,EAAe,EAAK,EAAU,CAAC,GAAG,EAAU,MAAI,sBAAsB,EAAc,UAAU,GAAG,EAAM,WAAW,GAAG,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAE,CAAwF,SAAgB,EAAqB,EAAU,CAAC,OAAoB,EAAiB,SAA0B,EAAM,EAAI,CAAC,OAAoB,EAAMA,EAAU,CAAC,SAAS,CAAc,EAAK,QAAQ,CAAC,SAAS;;;;;;;;;;;;;;;aAep3B,CAAC,EAAe,EAAK,EAAU,CAAC,GAAG,EAAU,MAAI,UAAU,GAAG,EAAM,WAAW,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAE,yBA1ClD,IAAiJ,IAA4B,IAAiC,EAKnR,EAAO,CAAC,QAAQ,IAAI,OAAO,IAAI,QAAQ,EAAE,KAAK,oDAAoD,EAAQ,EAAS;;;;;;wCAMpF,EAAO,QAAQ;qDACF,EAAO,OAAO,MAAM,EAAO,KAAK,yCAAyC,EAAO,QAAQ,MAAM,EAAO,KAAK;;;;;sDAKzG,EAAO,QAAQ"}