{"version":3,"file":"shared-lib.CaRyCSfQ.mjs","names":["useState","useRef","useMemo","startTransition","useCallback","_Fragment","React.Fragment","Framer.useRouter","fonts","css","className"],"sources":["https:/framerusercontent.com/modules/tRoRFwj8s1oKR2DbyKgO/NFUgTAcNk8yLGvPSNDxM/Pinscreen.js","https:/framerusercontent.com/modules/cTCSsUtEYazSTtYLIuUE/MSGZDDdP2k7uZQjMEAJc/kZAMOdJej.js","https:/framerusercontent.com/modules/tNZBNpbsXF58DysVN3tT/tiU2tPMkiHifUSQurqVM/swh3jHnnP.js"],"sourcesContent":["// Pinscreen — a pin-art board that presses your work into relief (Toffee template).\n// Every pin takes the photo's colour, and its brightness becomes the pin's height. The cursor is a\n// hand under the board: move to ripple, press to dent, release and the next project rolls in.\n//\n// Modes\n//   Projects — hero. Intro text presses up, then your projects roll in as waves. Caption, counter,\n//              progress pins and arrows are built in. Content: CMS slot > list > demo.\n//   Text     — any words in relief (headline, CTA, footer, 404). Presses up when scrolled into view.\n//   Image    — one picture as pins (cards, panels, case hero). Develops into the real photo on\n//              hover / press-and-hold, or when the Developed prop is on (use it in variants).\n//\n// All boards on a page share ONE WebGL2 renderer, so twenty boards cost one GPU context.\nfunction _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true});}else{obj[key]=value;}return obj;}import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{startTransition,useCallback,useEffect,useMemo,useRef,useState}from\"react\";import*as Framer from\"framer\";import{addPropertyControls,ControlType,useIsStaticRenderer}from\"framer\";import{useReducedMotion}from\"framer-motion\";/* ----------------------------------------------------------------- themes -- */const THEMES={cobalt:{board:\"#2236F2\",letters:\"#FFFFFF\",gap:\"#0B0C13\",text:\"#FFFFFF\",glass:\"rgba(255,255,255,0.16)\"},paper:{board:\"#EBE9E4\",letters:\"#141416\",gap:\"#D6D3CB\",text:\"#141416\",glass:\"rgba(20,20,22,0.08)\"},ink:{board:\"#141416\",letters:\"#F5F4F1\",gap:\"#060608\",text:\"#F5F4F1\",glass:\"rgba(255,255,255,0.12)\"}};/* ------------------------------------------------------------------- demo -- */const DEMO_IMG=[\"https://framerusercontent.com/images/Y3ZgeiIahFg6LobrseXD9eMoww.png\",\"https://framerusercontent.com/images/idMYdvVvb8mqLkhxdKsIDANaQ.png\",\"https://framerusercontent.com/images/A3sOCBRsImmtiJnaXS683ZdIog.png\",\"https://framerusercontent.com/images/2h5sWGLLyEvmllCRhTh19mcvy0Y.png\",\"https://framerusercontent.com/images/e22QVuK7xhUHHvwQ6W1mBGttYk.png\",\"https://framerusercontent.com/images/l2pMl2wGg9GjTgXTagz3nXIK5Q.png\",\"https://framerusercontent.com/images/FJPJgOozRWq9aR3fmkfq4pRU.png\",\"https://framerusercontent.com/images/HO6RLXjVOnEfR2b5MC4fAxOEwbc.png\",\"https://framerusercontent.com/images/3OnIfbBsNp2oPNtwRC7GrbV1PuA.png\",\"https://framerusercontent.com/images/IdHOqeFdL4xsKKQofkOf6oHR23g.png\",\"https://framerusercontent.com/images/EyXaBO7x3V74aKaXHQPnsCviN0.png\",\"https://framerusercontent.com/images/DrjwS9NjJtNiVOxKxpkiKUqIU.png\"];const DEMO_TITLE=[\"Blue Hour Coat\",\"Sanguine\",\"Stairs to Sky\",\"Chartreuse\",\"One Tulip\",\"Poolside\",\"High Dive\",\"Peony\",\"Linen Ride\",\"Amber\",\"Organza Dunes\",\"Golden Pear\"];const DEMO_CLIENT=[\"Atelier Nord\",\"Fior\\xe9\",\"Casa Alba\",\"Maison Vale\",\"Ceramica Rossa\",\"Sprint Club\",\"Lido Swim\",\"Petal & Co\",\"Velo Bianco\",\"Oud Nomade\",\"Studio Sable\",\"Paper Pear\"];const DEMO_FIELD=[\"Fashion\",\"Still life\",\"Architecture\",\"Beauty\",\"Product\",\"Fashion\",\"Sport\",\"Still life\",\"Fashion\",\"Product\",\"Fashion\",\"Set design\"];const DEMO_YEAR=[\"2026\",\"2026\",\"2025\",\"2025\",\"2025\",\"2025\",\"2024\",\"2024\",\"2024\",\"2024\",\"2023\",\"2023\"];const DEMO=DEMO_IMG.map((src,i)=>({image:{src},title:DEMO_TITLE[i],client:DEMO_CLIENT[i],field:DEMO_FIELD[i],year:DEMO_YEAR[i]}));/* ------------------------------------------------------------------ utils -- */const clamp=(v,a,b)=>v<a?a:v>b?b:v;const lerp=(a,b,t)=>a+(b-a)*t;const pad=n=>String(n).padStart(2,\"0\");const hexRgb=c=>{if(typeof document===\"undefined\")return[.13,.21,.95];const cv=hexRgb.cv||(hexRgb.cv=document.createElement(\"canvas\").getContext(\"2d\"));cv.fillStyle=\"#000\";cv.fillStyle=c;const s=cv.fillStyle;if(s.startsWith(\"#\"))return[parseInt(s.slice(1,3),16)/255,parseInt(s.slice(3,5),16)/255,parseInt(s.slice(5,7),16)/255];const m=s.match(/[\\d.]+/g)||[\"0\",\"0\",\"0\"];return[+m[0]/255,+m[1]/255,+m[2]/255];};hexRgb.cv=null;function sized(src,w){if(!src)return src;if(src.includes(\"framerusercontent.com/images/\"))return`${src.split(\"?\")[0]}?scale-down-to=${w<=512?512:w<=1024?1024:2048}`;return src;}// pins are sampled from a tiny canvas (2 px per pin), so a 512 px picture is plenty\nconst SAMPLE_PX=512;// Boards build one at a time, a frame apart, so a page with many boards never freezes on load.\nlet QUEUE=Promise.resolve();function queue(task){QUEUE=QUEUE.then(()=>new Promise(res=>{const run=async()=>{try{await task();}catch{}res();};typeof requestAnimationFrame!==\"undefined\"?requestAnimationFrame(()=>setTimeout(run,0)):setTimeout(run,0);}));return QUEUE;}const imgCache=new Map;function loadImage(src){if(!imgCache.has(src)){imgCache.set(src,new Promise((res,rej)=>{const im=new Image;im.crossOrigin=\"anonymous\";im.decoding=\"async\";im.onload=()=>res(im);im.onerror=rej;im.src=src;}));}return imgCache.get(src);}/* ------------------------------------------------- shared WebGL renderer -- */// Each pin is drawn as two camera-facing quads (12 vertices): a shaded dome for the head and a thin\n// ribbon for the shaft. That is ~20x lighter than real cylinder geometry and looks the same at pin size.\nconst VS=`#version 300 es\nin vec2 aOff;in float aZ;in vec3 aCol;in float aOcc;\nuniform mat4 uVP,uM;uniform float uDepth;uniform vec3 uCam;\nout vec2 vUV;out vec3 vCol;out float vOcc;out float vHead;out vec3 vSide;out vec3 vV;\nconst vec2 Q[6]=vec2[6](vec2(-1.,-1.),vec2(1.,-1.),vec2(1.,1.),vec2(-1.,-1.),vec2(1.,1.),vec2(-1.,1.));\nvoid main(){\nint id=gl_VertexID;bool head=id>=6;vec2 q=Q[id-(head?6:0)];\nvec3 c=vec3(aOff,aZ*uDepth);\nvec3 wc=(uM*vec4(c,1.)).xyz;\nvec3 V=normalize(uCam-wc);\nvCol=aCol;vOcc=aOcc;vV=V;vHead=head?1.:0.;\nvec3 w;\nif(head){\nvec3 r=normalize(cross(vec3(0.,1.,0.),V));vec3 u=cross(V,r);\nw=wc+V*.12+(r*q.x+u*q.y)*.5;vUV=q*(.5/.475);vSide=r;\n}else{\nvec3 wb=(uM*vec4(c-vec3(0.,0.,6.5),1.)).xyz;\nvec3 d=normalize(wc-wb);vec3 sd=normalize(cross(d,V));\nw=mix(wb,wc,q.y*.5+.5)+sd*q.x*.16;vUV=vec2(q.x,q.y*.5+.5);vSide=sd;\n}\ngl_Position=uVP*vec4(w,1.);}`;const FS=`#version 300 es\nprecision highp float;in vec2 vUV;in vec3 vCol;in float vOcc;in float vHead;in vec3 vSide;in vec3 vV;out vec4 o;\nvoid main(){vec3 L=normalize(vec3(-.55,.62,.78));vec3 c;float a=1.;\nif(vHead>.5){float r=length(vUV);float fw=max(fwidth(r),1e-4);a=clamp((1.-r)/fw+.5,0.,1.);if(a<=0.)discard;\nfloat rr=min(r*r,1.);vec3 N=normalize(vec3(vUV/.475,sqrt(1.-rr)/.2));float d=max(dot(N,L),0.);float s=pow(max(dot(N,normalize(L+vec3(0.,0.,1.))),0.),46.);\nc=(vCol*(.46+.66*d)*(1.-vOcc*.62)+s*.30)*(1.-.32*smoothstep(.74,1.,r));}\nelse{float x=vUV.x;vec3 N=normalize(vSide*x+vV*sqrt(max(1.-x*x,0.)));float d=max(dot(N,L),0.);float s=pow(max(dot(N,normalize(L+vV)),0.),46.);\nvec3 m=mix(vec3(.70,.71,.75),vCol,.28);float ao=clamp(1.-(1.-vUV.y)*1.1,.10,1.);c=m*(.32+.72*d)*ao*(1.-vOcc*.45)+s*.55*ao;}\no=vec4(c,a);}`;const M4={persp(f,a,n,fa){const t=1/Math.tan(f/2),nf=1/(n-fa);return new Float32Array([t/a,0,0,0,0,t,0,0,0,0,(fa+n)*nf,-1,0,0,2*fa*n*nf,0]);},mul(a,b){const o=new Float32Array(16);for(let i=0;i<4;i++)for(let j=0;j<4;j++){let s=0;for(let k=0;k<4;k++)s+=a[k*4+j]*b[i*4+k];o[i*4+j]=s;}return o;},T:(x,y,z)=>new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,x,y,z,1]),RX(r){const c=Math.cos(r),s=Math.sin(r);return new Float32Array([1,0,0,0,0,c,s,0,0,-s,c,0,0,0,0,1]);},RY(r){const c=Math.cos(r),s=Math.sin(r);return new Float32Array([c,0,-s,0,0,1,0,0,s,0,c,0,0,0,0,1]);}};let KIT;let KIT_GEN=0;function getKit(){if(KIT!==undefined)return KIT;KIT=null;if(typeof document===\"undefined\")return null;try{const canvas=document.createElement(\"canvas\");const gl=canvas.getContext(\"webgl2\",{antialias:true,preserveDrawingBuffer:false,alpha:false,powerPreference:\"high-performance\"});if(!gl)return null;const sh=(t,s)=>{const o=gl.createShader(t);gl.shaderSource(o,s);gl.compileShader(o);return o;};const prog=gl.createProgram();gl.attachShader(prog,sh(gl.VERTEX_SHADER,VS));gl.attachShader(prog,sh(gl.FRAGMENT_SHADER,FS));gl.linkProgram(prog);if(!gl.getProgramParameter(prog,gl.LINK_STATUS))return null;const A=n=>gl.getAttribLocation(prog,n);const loc={};for(const u of[\"uVP\",\"uM\",\"uDepth\",\"uCam\"])loc[u]=gl.getUniformLocation(prog,u);canvas.addEventListener(\"webglcontextlost\",()=>{KIT=undefined;});KIT={canvas,gl,prog,attr:{off:A(\"aOff\"),z:A(\"aZ\"),col:A(\"aCol\"),occ:A(\"aOcc\")},loc,gen:++KIT_GEN};}catch(e){KIT=null;}return KIT;}class Board{build(W,H,pitch,overscan){this.W=W;this.H=H;// keep the pin count sane on huge boards\nlet p=Math.max(5,pitch);while(W/p*overscan*(H/p*(overscan+.08))/.866>6500)p*=1.06;const cols=Math.ceil(W/p*overscan)+2,rows=Math.ceil(H/p*(overscan+.08)/.866)+2,n=cols*rows;Object.assign(this,{cols,rows,n,bw:cols,bh:rows*.866});this.vh=Math.min(this.bh/(overscan+.08),this.bw/overscan/(W/H));this.vw=this.vh*W/H;this.D=this.vh/2/Math.tan(this.fov/2);const A=k=>new Float32Array(k);this.ox=A(n);this.oy=A(n);this.off=A(n*2);this.z=A(n);this.v=A(n);this.occ=A(n);this.curH=A(n);this.curC=A(n*3);this.baseH=A(n);this.baseC=A(n*3);this.delay=A(n);this.jit=A(n);this.col8=new Uint8Array(n*3);this.kicked=new Uint8Array(n);for(let r=0;r<rows;r++)for(let c=0;c<cols;c++){const i=r*cols+c;this.ox[i]=c-(cols-1)/2+(r&1?.25:-.25);this.oy[i]=((rows-1)/2-r)*.866;this.off[i*2]=this.ox[i];this.off[i*2+1]=this.oy[i];this.jit[i]=Math.random();}this.dirtyOff=true;this.dirtyCol=true;this.to=null;this.tr=null;}canvas2d(){const cw=Math.round(this.bw*2),ch=Math.round(this.bh*2);const c=document.createElement(\"canvas\");c.width=cw;c.height=ch;return{c,x:c.getContext(\"2d\",{willReadFrequently:true}),cw,ch};}sample(x,cw,ch,textFg){const{n,ox,oy,bw,bh,cols}=this;const d=x.getImageData(0,0,cw,ch).data;const h=new Float32Array(n),c=new Float32Array(n*3);for(let i=0;i<n;i++){const px=clamp(Math.round((ox[i]+bw/2)*2),0,cw-2),py=clamp(Math.round((bh/2-oy[i])*2),0,ch-2);let r=0,g=0,b=0;for(const[dx,dy]of[[0,0],[1,0],[0,1],[1,1]]){const k=((py+dy)*cw+px+dx)*4;r+=d[k];g+=d[k+1];b+=d[k+2];}r/=1020;g/=1020;b/=1020;c[i*3]=r;c[i*3+1]=g;c[i*3+2]=b;h[i]=textFg?Math.abs(r-textFg[0])+Math.abs(g-textFg[1])+Math.abs(b-textFg[2])<.6?1:.06:Math.pow(.2126*r+.7152*g+.0722*b,.85);}if(!textFg){const s=Array.from(h).sort((a,b)=>a-b),lo=s[Math.floor(n*.02)],hi=s[Math.floor(n*.98)];for(let i=0;i<n;i++)h[i]=clamp((h[i]-lo)/(hi-lo+1e-4),0,1)*.92+.04;}const sm=new Float32Array(n);for(let i=0;i<n;i++){let s=h[i]*2,k=2;for(const j of[i-1,i+1,i-cols,i+cols])if(j>=0&&j<n){s+=h[j];k++;}sm[i]=s/k;}return{h:sm,c};}/** fit: 1 = fill the board (crop), 0 = the whole photo, with a soft blurred fill around it */fromImage(img,fy,fit=1){const{c,x,cw,ch}=this.canvas2d();const place=(X,Y,w,h,f)=>{const sc=Math.max(w/img.width,h/img.height),sn=Math.min(w/img.width,h/img.height);const s=sn*Math.pow(sc/sn,clamp(f,0,1)),iw=img.width*s,ih=img.height*s;x.drawImage(img,X+(w-iw)/2,Y+(h-ih)*fy,iw,ih);};if(fit<.999)x.filter=\"blur(6px) brightness(0.8) saturate(1.1)\";place(0,0,cw,ch,1);x.filter=\"none\";place((cw-this.vw*2)/2,(ch-this.vh*2)/2,this.vw*2,this.vh*2,fit);void c;return this.sample(x,cw,ch);}fromText(text,family,weight,board,letters,scale=.62){const{x,cw,ch}=this.canvas2d();x.fillStyle=board;x.fillRect(0,0,cw,ch);x.fillStyle=letters;x.textAlign=\"center\";x.textBaseline=\"middle\";const lines=(text||\" \").split(/\\n|\\|/).map(l=>l.trim()).filter((l,i,a)=>l||a.length===1);const vw=this.vw*2,vh=this.vh*2;let fs=vh*scale/Math.max(1,lines.length*.86);const font=s=>`${weight||900} ${s}px ${family}`;x.font=font(fs);const wid=Math.max(...lines.map(l=>x.measureText(l).width),1);if(wid>vw*.88){fs*=vw*.88/wid;x.font=font(fs);}const lh=fs*.86;lines.forEach((l,k)=>x.fillText(l,cw/2,ch/2+(k-(lines.length-1)/2)*lh+fs*.04));return this.sample(x,cw,ch,hexRgb(letters));}flat(color){const c=hexRgb(color),cc=new Float32Array(this.n*3);for(let i=0;i<this.n;i++){cc[i*3]=c[0];cc[i*3+1]=c[1];cc[i*3+2]=c[2];}return{h:new Float32Array(this.n),c:cc};}set(src){this.baseH.set(src.h);this.baseC.set(src.c);this.curH.set(src.h);this.curC.set(src.c);this.z.set(src.h);this.v.fill(0);this.to=src;this.tr=null;this.colStale=true;}/** a wave that rolls src in from (bx, by) in board units; speed = seconds to cross */start(src,bx,by,now,speed=1.3,dur=.55,kick=6.5){// first wave on a fresh board: start from the same colours lying flat, never from black\nif(!this.to)this.set({h:new Float32Array(this.n),c:src.c});this.baseH.set(this.curH);this.baseC.set(this.curC);this.kicked.fill(0);let max=0;for(let i=0;i<this.n;i++){const d=Math.hypot(this.ox[i]-bx,this.oy[i]-by);this.delay[i]=d;if(d>max)max=d;}const sp=max/speed;for(let i=0;i<this.n;i++)this.delay[i]=this.delay[i]/sp+this.jit[i]*.08;this.to=src;this.tr={t0:now,dur,kick,end:now+speed+dur+.1};}/** advance physics; returns true while anything is still moving */step(now,dt,bumps,amp,r2,shimmer){const{n,ox,oy,z,v,baseH,baseC,curH,curC,col8,delay,kicked}=this;const to=this.to;if(!to)return false;const tr=this.tr;let moving=!!tr||bumps.length>0||shimmer||this.dev>.001&&this.dev<.999;let energy=0;// colours only change during a wave (or right after a new picture is set)\nconst doCol=!!tr||this.colStale;if(doCol){this.colStale=false;this.dirtyCol=true;}const devOn=this.dev>5e-4;const dmax=Math.hypot(this.vw,this.vh)*.5+1;for(let i=0;i<n;i++){let e=1;if(tr){const p=(now-tr.t0-delay[i])/tr.dur;if(p>0&&!kicked[i]){kicked[i]=1;v[i]+=tr.kick*(.55+to.h[i]);}e=p<=0?0:p>=1?1:p*p*(3-2*p);}const th=baseH[i]+(to.h[i]-baseH[i])*e;curH[i]=th;const k3=i*3;if(doCol)for(let q=0;q<3;q++){const cc=baseC[k3+q]+(to.c[k3+q]-baseC[k3+q])*e;curC[k3+q]=cc;col8[k3+q]=cc*255;}let bump=0;for(let j=0;j<bumps.length;j++){const b=bumps[j],dx=ox[i]-b.x,dy=oy[i]-b.y,d2=dx*dx+dy*dy;if(d2<r2*5)bump+=b.s*Math.exp(-d2/r2);}let tgt=th+amp*Math.min(bump,1.25)+(shimmer?.025*Math.sin(ox[i]*.21+oy[i]*.13+now*1.3):0);if(devOn){const dn=Math.hypot(ox[i]-this.devOrigin.x,oy[i]-this.devOrigin.y)/dmax;const f=clamp(this.dev*1.6-dn*.6,0,1);tgt*=1-f*f*(3-2*f);}const acc=95*(tgt-z[i])-11*v[i];v[i]+=acc*dt;z[i]+=v[i]*dt;energy+=Math.abs(v[i]);}if(tr&&now>tr.end){this.tr=null;this.baseH.set(to.h);this.baseC.set(to.c);this.colStale=true;}for(let i=0;i<n;i++){const a=i-1,b=i-this.cols;let m=z[i];if(a>=0&&z[a]>m)m=z[a];if(b>=0&&z[b]>m)m=z[b];this.occ[i]=Math.min((m-z[i])*1.1,1);}return moving||energy/n>.002;}draw(kit,target,dpr,rx,ry,depth,gap){const{gl,canvas,loc}=kit;const w=Math.max(1,Math.round(this.W*dpr)),h=Math.max(1,Math.round(this.H*dpr));if(canvas.width<w||canvas.height<h){canvas.width=Math.max(canvas.width,w);canvas.height=Math.max(canvas.height,h);}// GPU buffers for this board (re-made after a context loss or a rebuild with a new pin count)\nlet r=this.glr;if(!r||r.gen!==kit.gen||r.n!==this.n){if(r&&r.gen===kit.gen){gl.deleteVertexArray(r.vao);[r.off,r.z,r.col,r.occ].forEach(b=>gl.deleteBuffer(b));}const vao=gl.createVertexArray();gl.bindVertexArray(vao);const mk=(at,size,type,norm,data)=>{const b=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,b);gl.bufferData(gl.ARRAY_BUFFER,data,gl.DYNAMIC_DRAW);gl.enableVertexAttribArray(at);gl.vertexAttribPointer(at,size,type,norm,0,0);gl.vertexAttribDivisor(at,1);return b;};r=this.glr={gen:kit.gen,n:this.n,vao,off:mk(kit.attr.off,2,gl.FLOAT,false,this.off),z:mk(kit.attr.z,1,gl.FLOAT,false,this.z),col:mk(kit.attr.col,3,gl.UNSIGNED_BYTE,true,this.col8),occ:mk(kit.attr.occ,1,gl.FLOAT,false,this.occ)};gl.bindVertexArray(null);this.dirtyOff=false;this.dirtyCol=false;}gl.viewport(0,0,w,h);gl.enable(gl.SCISSOR_TEST);gl.scissor(0,0,w,h);gl.enable(gl.DEPTH_TEST);gl.enable(gl.SAMPLE_ALPHA_TO_COVERAGE);gl.clearColor(gap[0],gap[1],gap[2],1);gl.clear(gl.COLOR_BUFFER_BIT|gl.DEPTH_BUFFER_BIT);gl.useProgram(kit.prog);gl.bindVertexArray(r.vao);if(this.dirtyOff){gl.bindBuffer(gl.ARRAY_BUFFER,r.off);gl.bufferSubData(gl.ARRAY_BUFFER,0,this.off);this.dirtyOff=false;}if(this.dirtyCol){gl.bindBuffer(gl.ARRAY_BUFFER,r.col);gl.bufferSubData(gl.ARRAY_BUFFER,0,this.col8);this.dirtyCol=false;}gl.bindBuffer(gl.ARRAY_BUFFER,r.z);gl.bufferSubData(gl.ARRAY_BUFFER,0,this.z);gl.bindBuffer(gl.ARRAY_BUFFER,r.occ);gl.bufferSubData(gl.ARRAY_BUFFER,0,this.occ);const VP=M4.mul(M4.persp(this.fov,this.W/this.H,this.D*.3,this.D*3),M4.T(0,0,-this.D));gl.uniformMatrix4fv(loc.uVP,false,VP);gl.uniformMatrix4fv(loc.uM,false,M4.mul(M4.RX(rx),M4.RY(ry)));gl.uniform1f(loc.uDepth,depth);gl.uniform3f(loc.uCam,0,0,this.D);// heads first, so the depth test throws away the shafts hidden behind them\ngl.drawArraysInstanced(gl.TRIANGLES,6,6,this.n);gl.drawArraysInstanced(gl.TRIANGLES,0,6,this.n);gl.bindVertexArray(null);gl.disable(gl.SAMPLE_ALPHA_TO_COVERAGE);gl.disable(gl.SCISSOR_TEST);target.canvas.width!==w&&(target.canvas.width=w);target.canvas.height!==h&&(target.canvas.height=h);target.drawImage(canvas,0,canvas.height-h,w,h,0,0,w,h);}toBoard(px,py){const t=Math.tan(this.fov/2)*this.D;return{x:(px/this.W*2-1)*t*(this.W/this.H),y:(1-py/this.H*2)*t};}constructor(){_define_property(this,\"W\",0);_define_property(this,\"H\",0);_define_property(this,\"cols\",0);_define_property(this,\"rows\",0);_define_property(this,\"n\",0);_define_property(this,\"bw\",0);_define_property(this,\"bh\",0);_define_property(this,\"vw\",0);_define_property(this,\"vh\",0);_define_property(this,\"D\",1);_define_property(this,\"fov\",26*Math.PI/180);_define_property(this,\"ox\",new Float32Array(0));_define_property(this,\"oy\",new Float32Array(0));_define_property(this,\"off\",new Float32Array(0));_define_property(this,\"z\",new Float32Array(0));_define_property(this,\"v\",new Float32Array(0));_define_property(this,\"occ\",new Float32Array(0));_define_property(this,\"curH\",new Float32Array(0));_define_property(this,\"curC\",new Float32Array(0));_define_property(this,\"baseH\",new Float32Array(0));_define_property(this,\"baseC\",new Float32Array(0));_define_property(this,\"col8\",new Uint8Array(0));_define_property(this,\"delay\",new Float32Array(0));_define_property(this,\"kicked\",new Uint8Array(0));_define_property(this,\"jit\",new Float32Array(0));_define_property(this,\"to\",null);_define_property(this,\"tr\",null);_define_property(this,\"dev\",0// develop amount 0..1 (image mode)\n);_define_property(this,\"devOrigin\",{x:0,y:0});_define_property(this,\"dirtyOff\",true);_define_property(this,\"dirtyCol\",true);_define_property(this,\"colStale\",true);_define_property(this,\"glr\",null);}}/* ----------------------------------------------------------- CMS parsing -- */const KEYS={title:\"title\",name:\"title\",client:\"client\",brand:\"client\",field:\"field\",category:\"field\",type:\"field\",year:\"year\",date:\"year\"};const TEXT_SEL='[data-framer-component-type=\"RichTextContainer\"]';function parseSlot(root){if(!root)return[];const imgs=Array.from(root.querySelectorAll(\"img\")).filter(i=>i.getAttribute(\"src\"));const out=[];const seen=new Set;for(const img of imgs){let item=img.parentElement;while(item&&item!==root&&!item.querySelector(TEXT_SEL))item=item.parentElement;if(!item||item===root)item=img.parentElement;if(seen.has(item))continue;seen.add(item);const p={image:{src:img.getAttribute(\"src\")||\"\",srcSet:img.getAttribute(\"srcset\")||undefined,alt:img.getAttribute(\"alt\")||undefined},title:\"\",client:\"\",field:\"\",year:\"\"};const leaves=Array.from(item.querySelectorAll(TEXT_SEL)).filter(el=>(el.textContent||\"\").trim());const rest=[];for(const el of leaves){const k=KEYS[(el.getAttribute(\"data-framer-name\")||\"\").trim().toLowerCase()];const txt=(el.textContent||\"\").trim();if(k&&!p[k])p[k]=txt;else rest.push(txt);}for(const k of[\"title\",\"client\",\"field\",\"year\"])if(!p[k]&&rest.length)p[k]=rest.shift();const a=item.closest(\"a\")||item.querySelector(\"a\");if(a)p.href=a.getAttribute(\"href\")||undefined;if(p.image.src)out.push(p);}return out;}/* ------------------------------------------------------- in-site navigation -- */const useRouterSafe=Framer.useRouter||(()=>null);function navigate(router,href){if(!href||typeof window===\"undefined\")return;try{const u=new URL(href,window.location.href);if(u.origin===window.location.origin&&router?.routes){const segs=u.pathname.split(\"/\").filter(Boolean);for(const id of Object.keys(router.routes)){const ps=(router.routes[id]?.path||\"\").split(\"/\").filter(Boolean);if(ps.length!==segs.length)continue;const vars={};if(ps.every((p,i)=>p.startsWith(\":\")?(vars[p.slice(1)]=decodeURIComponent(segs[i]),true):p.toLowerCase()===segs[i].toLowerCase())){router.navigate(id,undefined,vars);return;}}}window.location.href=u.href;}catch{window.location.href=href;}}/* -------------------------------------------------------------- component -- *//** A photo placed like the pins place it: fit 1 fills (crops), lower values show more of it over a blurred fill. */function FitPhoto({src,fit,fy,w,h,style}){const[nat,setNat]=useState(null);const wrap={position:\"absolute\",inset:0,overflow:\"hidden\",pointerEvents:\"none\",...style};if(fit>=.999)return /*#__PURE__*/_jsx(\"div\",{style:wrap,children:/*#__PURE__*/_jsx(\"img\",{src:src,alt:\"\",decoding:\"async\",draggable:false,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",objectPosition:`50% ${fy*100}%`}})});let fg={position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"contain\"};if(nat&&w>0&&h>0){const sc=Math.max(w/nat.w,h/nat.h),sn=Math.min(w/nat.w,h/nat.h),s=sn*Math.pow(sc/sn,fit);const iw=nat.w*s,ih=nat.h*s;fg={position:\"absolute\",left:(w-iw)/2,top:(h-ih)*fy,width:iw,height:ih};}return /*#__PURE__*/_jsxs(\"div\",{style:wrap,children:[/*#__PURE__*/_jsx(\"img\",{src:src,alt:\"\",\"aria-hidden\":true,decoding:\"async\",draggable:false,style:{position:\"absolute\",left:\"-6%\",top:\"-6%\",width:\"112%\",height:\"112%\",objectFit:\"cover\",filter:\"blur(28px) brightness(0.8) saturate(1.1)\"}}),/*#__PURE__*/_jsx(\"img\",{src:src,alt:\"\",decoding:\"async\",draggable:false,onLoad:e=>{const t=e.currentTarget;setNat({w:t.naturalWidth,h:t.naturalHeight});},style:fg})]});}// A parent that re-renders (a scrolling rail, a hover) must not re-render every board inside it:\n// boards only update when one of their settings really changes.\nfunction sameProps(a,b){const keys=new Set([...Object.keys(a),...Object.keys(b)]);for(const k of keys){const x=a[k],y=b[k];if(x===y)continue;if(k===\"cms\"||typeof x!==\"object\"||typeof y!==\"object\"||!x||!y)return false;try{if(JSON.stringify(x)!==JSON.stringify(y))return false;}catch{return false;}}return true;}const PinscreenMemo=/*#__PURE__*/React.memo(PinscreenBoard,sameProps);/**\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any\n * @framerIntrinsicWidth 1200\n * @framerIntrinsicHeight 760\n */export default function Pinscreen(props){return /*#__PURE__*/_jsx(PinscreenMemo,{...props});}function PinscreenBoard(props){const{mode=\"projects\",text=\"SAY HELLO\",introText=\"SOL NAVARRO\",develop=\"hover\",developed=false,focusY=.35,style}=props;// Image source \"Layer behind\": read the photo from a normal Image layer under the board, so a\n// CMS-bound image (Collection List card, project page) drives the pins with no extra setup.\nconst[behind,setBehind]=useState(null);const fromBehind=mode===\"image\"&&props.imageSource===\"behind\";const image=fromBehind&&behind?behind:props.image&&props.image.src?props.image:{src:DEMO_IMG[0],alt:\"\"};const pins=Object.assign({size:14,sizePhone:11,relief:3,tilt:1,follow:true},props.pins);const hand=Object.assign({strength:1.25,radius:3.8,pressToChange:true,autoplay:6.8,cursorLabel:\"Press to change\"},props.hand);const theme=props.theme||\"cobalt\";const colors=theme===\"custom\"?Object.assign({},THEMES.cobalt,props.colors):THEMES[theme];// projects mode: press & hold develops the current photo (pins press flat), or jumps to the next project\n// how much of the photo shows: 1 = fill (crop to the board), 0 = the whole photo with a blurred fill\nconst fit=clamp(typeof props.photoFit===\"number\"?props.photoFit:mode===\"projects\"?.3:1,0,1);const pressDev=mode===\"projects\"&&(props.pressAction||\"develop\")===\"develop\";const cursorText=(props.label||\"\").trim()||(hand.cursorLabel===\"Press to change\"?mode===\"text\"?\"Press the pins\":pressDev?\"Click to develop\":hand.cursorLabel:hand.cursorLabel);const cap=Object.assign({show:true,counter:true,arrows:true,progress:true},props.caption);// the Font controls always send a family, so they only apply when Fonts = Custom\nconst custom=props.fonts===\"custom\";const letterFont=custom?props.letterFont:undefined;const titleFont=custom?props.titleFont:undefined;const metaFont=custom?props.metaFont:undefined;const letterFamily=letterFont?.fontFamily||`\"Big Shoulders\", \"Big Shoulders Display\", \"Arial Narrow\", sans-serif`;const letterWeight=letterFont?.fontWeight||900;const isStatic=useIsStaticRenderer();const reducedPref=useReducedMotion();const reduced=!!reducedPref;const router=useRouterSafe();// default display face, only when no custom font is set\nuseEffect(()=>{if(typeof document===\"undefined\"||letterFont?.fontFamily||document.getElementById(\"pinscreen-bsd\"))return;const l=document.createElement(\"link\");l.id=\"pinscreen-bsd\";l.rel=\"stylesheet\";l.href=\"https://fonts.googleapis.com/css2?family=Big+Shoulders:wght@800;900&display=swap\";document.head.appendChild(l);},[letterFont?.fontFamily]);/* ---- content: CMS > list > demo ---- */const slotRef=useRef(null);const[cms,setCms]=useState([]);const hasSlot=React.Children.count(props.cms)>0;useEffect(()=>{if(!hasSlot||typeof window===\"undefined\")return;const el=slotRef.current;if(!el)return;let t=0;const read=()=>{const next=parseSlot(el);startTransition(()=>setCms(prev=>JSON.stringify(prev)===JSON.stringify(next)?prev:next));};read();const mo=new MutationObserver(()=>{window.clearTimeout(t);t=window.setTimeout(read,80);});mo.observe(el,{childList:true,subtree:true,attributes:true,characterData:true});return()=>{mo.disconnect();window.clearTimeout(t);};},[hasSlot,props.cms]);const listed=useMemo(()=>(props.items||[]).filter(it=>it?.image?.src).map(it=>({image:it.image,title:it.title||\"\",client:it.client||\"\",field:it.field||\"\",year:it.year||\"\",href:it.link||undefined})),[props.items]);const projects=mode!==\"projects\"?[]:cms.length?cms:hasSlot?[]:listed.length?listed:DEMO;const count=projects.length;/* ---- state ---- */const rootRef=useRef(null);const canvasRef=useRef(null);const[size,setSize]=useState({w:0,h:0});const[idx,setIdx]=useState(-1)// -1 = intro\n;const[inView,setInView]=useState(false);const[glOk,setGlOk]=useState(true);const[devFull,setDevFull]=useState(false);// the hand's position is written straight to the DOM; React only re-renders when it appears, hides or presses\nconst[cursor,setCursor]=useState({on:false,down:false});const handRef=useRef(null);const downAt=useRef({x:0,y:0});const[captionOut,setCaptionOut]=useState(false);useEffect(()=>{if(typeof window===\"undefined\")return;const el=rootRef.current;if(!el)return;// Size changes are debounced: while a parent animates the board's size (a growing card, an\n// opening panel) the canvas simply stretches, and the pins rebuild once it settles.\nlet t=0;const commit=(w,h)=>startTransition(()=>setSize(s=>Math.abs(s.w-w)<2&&Math.abs(s.h-h)<2?s:{w,h}));const ro=new ResizeObserver(([e])=>{const w=Math.round(e.contentRect.width),h=Math.round(e.contentRect.height);window.clearTimeout(t);t=window.setTimeout(()=>commit(w,h),180);});ro.observe(el);commit(el.clientWidth,el.clientHeight);if(isStatic)return()=>{ro.disconnect();window.clearTimeout(t);};const io=new IntersectionObserver(([e])=>startTransition(()=>setInView(e.isIntersecting)),{rootMargin:\"300px\"});io.observe(el);return()=>{ro.disconnect();io.disconnect();window.clearTimeout(t);};},[isStatic]);useEffect(()=>{if(!fromBehind||typeof window===\"undefined\")return;const me=rootRef.current;if(!me)return;let host=me.parentElement;const find=()=>{const r0=me.getBoundingClientRect();let best=null,score=0;for(let up=0,el=me.parentElement;el&&up<4;up++,el=el.parentElement){for(const im of Array.from(el.querySelectorAll(\"img\"))){if(me.contains(im)||!im.getAttribute(\"src\"))continue;const r=im.getBoundingClientRect();const ov=Math.max(0,Math.min(r.right,r0.right)-Math.max(r.left,r0.left))*Math.max(0,Math.min(r.bottom,r0.bottom)-Math.max(r.top,r0.top));if(ov>score){score=ov;best=im;}}if(best){host=el;break;}}if(!best)return;const src=best.currentSrc||best.getAttribute(\"src\")||\"\";const next={src:src.split(\"?\")[0].includes(\"framerusercontent.com/images/\")?src.split(\"?\")[0]:src,srcSet:best.getAttribute(\"srcset\")||undefined,alt:best.getAttribute(\"alt\")||\"\"};startTransition(()=>setBehind(p=>p&&p.src===next.src?p:next));};find();const t=window.setTimeout(find,400);const mo=new MutationObserver(()=>find());if(host)mo.observe(host,{subtree:true,attributes:true,attributeFilter:[\"src\",\"srcset\"],childList:true});return()=>{window.clearTimeout(t);mo.disconnect();};},[fromBehind]);/* ---- engine refs ---- */const board=useRef(null);const sources=useRef([]);const introSrc=useRef(null);const textSrc=useRef(null);const trail=useRef([]);const ptr=useRef({x:0,y:0,in:false,down:false,press:0});const tilt=useRef({x:-.2*pins.tilt,y:.08*pins.tilt});const wake=useRef(()=>{});const idxRef=useRef(-1);const lastInteract=useRef(0);const autoT=useRef(0);const devTarget=useRef(0);const builtKey=useRef(\"\");const played=useRef(false);const shown=useRef(false);const drawnRef=useRef(false);const[drawn,setDrawn]=useState(false);const[wantPhoto,setWantPhoto]=useState(false)// image mode: load the full photo only once it is needed\n;const[phDone,setPhDone]=useState(false)// placeholder stays under the canvas while it fades in\n;useEffect(()=>{if(!drawn)return;const t=window.setTimeout(()=>startTransition(()=>setPhDone(true)),800);return()=>window.clearTimeout(t);},[drawn]);const phone=size.w>0&&size.w<720;const pitch=mode===\"image\"?Math.max(6,(phone?pins.sizePhone:pins.size)*.66):phone?pins.sizePhone:pins.size;const overscan=mode===\"image\"?1.16:1.24;const baseRx=(mode===\"image\"?-.12:-.2)*pins.tilt;const baseRy=(mode===\"image\"?.06:.08)*pins.tilt;const depth=mode===\"image\"?pins.relief*.87:pins.relief;const now=()=>performance.now()/1e3;// the caption swaps with a blur when the project changes\nconst go=useCallback((i,from)=>{const b=board.current;if(!b||!count)return;const n=(i%count+count)%count;const src=sources.current[n];idxRef.current=n;devTarget.current=0;startTransition(()=>{setCaptionOut(true);setIdx(n);});window.setTimeout(()=>startTransition(()=>setCaptionOut(false)),420);if(!src)return;const o=from||{x:-b.vw*.62,y:0};b.start(src,o.x,o.y,now(),reduced?.01:1.35,reduced?.01:.55,reduced?0:6.5);wake.current();},[count,reduced]);/* ---- build the board + sources whenever size or content changes ---- */const contentKey=mode===\"projects\"?projects.map(p=>p.image.src).join(\"|\")+\"\\xa7\"+introText:mode===\"text\"?text:image.src;useEffect(()=>{if(isStatic||!inView||size.w<2||size.h<2)return;if(fromBehind&&!behind)return;// wait for the layer behind to report its photo\nconst kit=getKit();if(!kit){startTransition(()=>setGlOk(false));return;}const look=[pitch,overscan,contentKey,colors.board,colors.letters,letterFamily,focusY,fit].join(\"~\");const key=size.w+\"x\"+size.h+\"~\"+look;if(builtKey.current===key&&board.current)return;// same content at a new size (a resize, a breakpoint): rebuild quietly, no intro, no black\nconst quiet=!!board.current&&shown.current&&builtKey.current.slice(builtKey.current.indexOf(\"~\")+1)===look;builtKey.current=key;let cancelled=false;// fonts and the picture download in parallel, outside the build queue, so one slow image\n// never holds up the other boards; the queue only does the (short) CPU work\nconst fontP=Promise.resolve(document.fonts?.load?.(`${letterWeight} 100px ${letterFamily}`)).catch(()=>null);const imgP=mode===\"image\"?loadImage(sized(image.src,SAMPLE_PX)).catch(()=>null):Promise.resolve(null);let im=null;const ready=async()=>{if(cancelled)return;const b=new Board;b.build(size.w,size.h,pitch,overscan);if(mode===\"text\"){textSrc.current=b.fromText(text,letterFamily,letterWeight,colors.board,colors.letters);if(quiet&&played.current)b.set(textSrc.current);else{b.set(b.flat(colors.board));played.current=false;}board.current=b;}else if(mode===\"image\"){try{if(!im)throw new Error(\"image\");const s=b.fromImage(im,focusY,fit);board.current=b;if(quiet)b.set(s);else b.start(s,-b.vw*.62,0,now(),reduced?.01:.9,.5,3);}catch{startTransition(()=>setGlOk(false));}}else{board.current=b;introSrc.current=introText?b.fromText(introText,letterFamily,letterWeight,colors.board,colors.letters):null;sources.current=projects.map(()=>null);const keep=quiet&&idxRef.current>=0?idxRef.current:-1;(async()=>{for(let i=0;i<projects.length;i++){try{const im=await loadImage(sized(projects[i].image.src,SAMPLE_PX));if(cancelled)return;sources.current[i]=b.fromImage(im,focusY,fit);if(i===idxRef.current){if(i===keep&&!b.to)b.set(sources.current[i]);else go(i);}}catch{}}})();if(keep>=0){// resized mid-show: stay on the same project\nautoT.current=now();}else{// intro: flat board → the name presses up → the first project rolls in\nb.set(b.flat(colors.board));const t0=now();idxRef.current=-1;startTransition(()=>setIdx(-1));if(introSrc.current&&!reduced){b.start(introSrc.current,0,0,t0+.35,1.3,.6,7);window.setTimeout(()=>!cancelled&&go(0),3600);}else go(0);autoT.current=t0+3.6;}}shown.current=true;wake.current();};Promise.all([fontP,imgP]).then(([,i])=>{im=i;if(!cancelled)queue(ready);});return()=>{cancelled=true;};// eslint-disable-next-line react-hooks/exhaustive-deps\n},[isStatic,inView,size.w,size.h,pitch,overscan,contentKey,colors.board,colors.letters,letterFamily,focusY,fromBehind&&!behind]);// text mode: press the words up once the board is in view\nuseEffect(()=>{if(mode!==\"text\"||!inView||isStatic)return;const t=window.setTimeout(()=>{const b=board.current;if(b&&textSrc.current&&!played.current){played.current=true;b.start(textSrc.current,-b.vw*.6,0,now(),reduced?.01:1.4,.6,6);wake.current();}},250);return()=>window.clearTimeout(t);},[mode,inView,isStatic,size.w,size.h,contentKey,reduced]);// image mode: develop from the Developed prop (variants / scroll)\nuseEffect(()=>{if(mode!==\"image\")return;devTarget.current=developed?1:0;wake.current();},[developed,mode]);/* ---- the loop: runs only while in view and something moves ---- */useEffect(()=>{if(isStatic||!inView||typeof window===\"undefined\")return;const kit=getKit();const cv=canvasRef.current;if(!kit||!cv)return;const ctx=cv.getContext(\"2d\");if(!ctx)return;let raf=0,alive=true,last=now(),sleeping=false;const gap=hexRgb(colors.gap);const tick=()=>{if(!alive)return;const b=board.current;const t=now();// nothing to show yet: keep the last frame (or the placeholder) instead of drawing black\nif(!b||!b.to){raf=requestAnimationFrame(tick);return;}// idle breathing only needs 30 fps — saves battery while nobody touches the board\nif(!b.tr&&!ptr.current.in&&!ptr.current.down&&t-last<1/31){raf=requestAnimationFrame(tick);return;}const dt=Math.min(t-last,1/30);last=t;// autoplay (projects)\nif(mode===\"projects\"&&hand.autoplay>0&&!reduced&&idxRef.current>=0&&t-lastInteract.current>7&&t-autoT.current>hand.autoplay&&!ptr.current.down&&devTarget.current===0){autoT.current=t;const a=Math.random()*Math.PI*2;go(idxRef.current+1,{x:Math.cos(a)*b.vw*.6,y:Math.sin(a)*b.vh*.6});}// develop easing (image mode, and projects mode when press develops)\nif(mode===\"image\"||pressDev){const k=1-Math.exp(-dt*(reduced?60:3.2));b.dev=lerp(b.dev,devTarget.current,k);if(Math.abs(b.dev-devTarget.current)<.002)b.dev=devTarget.current;if(devTarget.current>0&&!wantRef.current){wantRef.current=true;startTransition(()=>setWantPhoto(true));}const full=b.dev>.55;if(full!==devFullRef.current){devFullRef.current=full;startTransition(()=>setDevFull(full));}}// hand trail\nconst p=ptr.current;if(p.in&&!reduced){const bp=b.toBoard(p.x,p.y);const lt=trail.current[trail.current.length-1];if(!lt||Math.hypot(lt.x-bp.x,lt.y-bp.y)>.9)trail.current.push({x:bp.x,y:bp.y,t});}trail.current=trail.current.filter(q=>t-q.t<1.1).slice(-14);p.press=lerp(p.press,p.down&&hand.pressToChange&&mode!==\"image\"&&!pressDev?1:0,1-Math.exp(-dt*10));const amp=lerp(hand.strength,-1.6,p.press)*(mode===\"image\"?.8:1);const r=lerp(hand.radius,hand.radius*1.26,p.press)*(mode===\"image\"?.9:1);const bumps=trail.current.map((q,i)=>({x:q.x,y:q.y,s:i===trail.current.length-1&&p.in?1:Math.max(0,1-(t-q.t)/1.1)*.55}));const moving=b.step(t,dt,bumps,amp,r*r,false);// board tilts toward the cursor\nif(pins.follow&&!reduced){const nx=p.in?p.x/b.W*2-1:0,ny=p.in?1-p.y/b.H*2:0;tilt.current.x=lerp(tilt.current.x,baseRx+ny*.05*pins.tilt,1-Math.exp(-dt*2.5));tilt.current.y=lerp(tilt.current.y,baseRy+nx*.06*pins.tilt,1-Math.exp(-dt*2.5));}else{tilt.current.x=baseRx;tilt.current.y=baseRy;}// cap the pixel ratio, and lower it further on very large boards\nconst dpr=Math.min(window.devicePixelRatio||1,1.5,Math.sqrt(16e5/Math.max(1,b.W*b.H)));b.draw(kit,ctx,Math.max(1,dpr),tilt.current.x,tilt.current.y,depth,gap);if(!drawnRef.current){drawnRef.current=true;startTransition(()=>setDrawn(true));}const tilting=Math.abs(tilt.current.x-baseRx)>.001||Math.abs(tilt.current.y-baseRy)>.001;// sleep as soon as the board is still: a resting cursor, autoplay and develop easing wake it up again\nif(moving||tilting||p.down||trail.current.length>0||b.dev>.001&&b.dev<.999||Math.abs(b.dev-devTarget.current)>.002)raf=requestAnimationFrame(tick);else sleeping=true;};wake.current=()=>{if(sleeping&&alive){sleeping=false;last=now();raf=requestAnimationFrame(tick);}};raf=requestAnimationFrame(tick);return()=>{alive=false;cancelAnimationFrame(raf);wake.current=()=>{};};// eslint-disable-next-line react-hooks/exhaustive-deps\n},[isStatic,inView,mode,colors.gap,depth,baseRx,baseRy,pins.follow,pins.tilt,hand.autoplay,hand.strength,hand.radius,hand.pressToChange,reduced,go,pressDev]);// autoplay: the loop sleeps between slides, so a light timer wakes it when the next one is due\nuseEffect(()=>{if(isStatic||!inView||mode!==\"projects\"||!(hand.autoplay>0)||reduced)return;const id=window.setInterval(()=>{const t=now();if(idxRef.current>=0&&!ptr.current.down&&devTarget.current===0&&t-lastInteract.current>7&&t-autoT.current>hand.autoplay)wake.current();},500);return()=>window.clearInterval(id);},[isStatic,inView,mode,hand.autoplay,reduced]);const devFullRef=useRef(false);const wantRef=useRef(false);/* ---- pointer ---- */const local=e=>{const r=rootRef.current.getBoundingClientRect();return{x:e.clientX-r.left,y:e.clientY-r.top};};const onMove=e=>{if(isStatic)return;const l=local(e);ptr.current.x=l.x;ptr.current.y=l.y;ptr.current.in=true;if(handRef.current)handRef.current.style.transform=`translate(${l.x-36}px, ${l.y-36}px)`;if(!cursor.on)startTransition(()=>setCursor(c=>c.on?c:{...c,on:true}));// the cursor may already sit on the card when its board finishes building\nif(mode===\"image\"&&develop===\"hover\"&&board.current&&devTarget.current===0){board.current.devOrigin=board.current.toBoard(l.x,l.y);devTarget.current=1;}wake.current();};const onEnter=e=>{onMove(e);if(mode===\"image\"&&develop===\"hover\"&&board.current){const bp=board.current.toBoard(ptr.current.x,ptr.current.y);board.current.devOrigin=bp;devTarget.current=1;}};const onLeave=()=>{ptr.current.in=false;ptr.current.down=false;startTransition(()=>setCursor(c=>({...c,on:false,down:false})));if(mode===\"image\"&&!developed)devTarget.current=0;wake.current();};const onDown=e=>{if(isStatic)return;onMove(e);ptr.current.down=true;lastInteract.current=now();startTransition(()=>setCursor(c=>({...c,down:true})));downAt.current={x:ptr.current.x,y:ptr.current.y};if(mode===\"image\"&&develop===\"press\"&&board.current){board.current.devOrigin=board.current.toBoard(ptr.current.x,ptr.current.y);devTarget.current=1;wake.current();}try{e.target.setPointerCapture?.(e.pointerId);}catch{}};const onUp=e=>{if(!ptr.current.down)return;// a tap/click, not a scroll or a drag (touch scrolling cancels the pointer)\nconst isClick=e.type!==\"pointercancel\"&&Math.hypot(ptr.current.x-downAt.current.x,ptr.current.y-downAt.current.y)<10;ptr.current.down=false;lastInteract.current=now();startTransition(()=>setCursor(c=>({...c,down:false})));const b=board.current;if(!b)return;const bp=b.toBoard(ptr.current.x,ptr.current.y);if(pressDev){// one click develops the photo where you clicked; the next click presses it back into pins\nif(isClick&&idxRef.current>=0){if(devTarget.current>0)devTarget.current=0;else{b.devOrigin=bp;devTarget.current=1;}}}else if(mode===\"projects\"&&hand.pressToChange&&idxRef.current>=0)go(idxRef.current+1,bp);else if(mode===\"text\"&&textSrc.current){b.start(textSrc.current,bp.x,bp.y,now(),1.1,.5,5);}if(mode===\"image\"&&develop===\"press\"&&!developed)devTarget.current=0;if(e.pointerType!==\"mouse\"){ptr.current.in=false;startTransition(()=>setCursor(c=>({...c,on:false,down:false})));}wake.current();};const step=d=>{lastInteract.current=now();const b=board.current;if(!b)return;go(idxRef.current+d,{x:(d>0?-1:1)*b.vw*.62,y:0});};/* ---- render ---- */const current=idx>=0?projects[idx]:null;const titleStyle={fontFamily:titleFont?.fontFamily||letterFamily,fontWeight:titleFont?.fontWeight||800,fontSize:titleFont?.fontSize||\"clamp(48px, 11cqw, 168px)\",letterSpacing:titleFont?.letterSpacing||\"-0.005em\",lineHeight:titleFont?.lineHeight||.84,textTransform:\"uppercase\",margin:0,color:colors.text};const metaStyle={fontFamily:metaFont?.fontFamily||`\"Figtree\", system-ui, sans-serif`,fontWeight:metaFont?.fontWeight||500,fontSize:metaFont?.fontSize||15,letterSpacing:metaFont?.letterSpacing||\"0em\",lineHeight:metaFont?.lineHeight||1.3,color:colors.text};const glass={background:colors.glass,border:\"1px solid rgba(255,255,255,0.3)\",backdropFilter:\"blur(12px)\",WebkitBackdropFilter:\"blur(12px)\",color:colors.text};const showGL=!isStatic&&glOk;const staticBg=mode===\"text\"?colors.board:undefined;const staticImg=fromBehind?undefined:mode===\"image\"?image.src:mode===\"projects\"&&projects[0]?projects[0].image.src:undefined;// live projects board starts on the intro text, so its placeholder is the board, not a photo\nconst phImg=mode===\"projects\"&&showGL&&introText?undefined:staticImg;const dots=`radial-gradient(circle at 40% 35%, rgba(255,255,255,0.35) 0 18%, rgba(0,0,0,0) 46%), radial-gradient(circle, rgba(0,0,0,0) 0 52%, rgba(0,0,0,0.28) 60%)`;const pp=Math.round(pitch);const ease=\"cubic-bezier(.16,1,.3,1)\";const transition=reduced?\"none\":`opacity .7s ${ease}, filter .7s ${ease}, transform .9s ${ease}`;return /*#__PURE__*/_jsxs(\"div\",{ref:rootRef,role:\"img\",\"aria-label\":mode===\"projects\"?current?`${current.title}, ${current.client}`:introText:mode===\"text\"?text:image.alt||\"\",tabIndex:mode===\"projects\"?0:-1,onKeyDown:e=>{if(mode!==\"projects\")return;if(e.key===\"ArrowRight\")step(1);if(e.key===\"ArrowLeft\")step(-1);},onPointerMove:onMove,onPointerEnter:onEnter,onPointerLeave:onLeave,onPointerDown:onDown,onPointerUp:onUp,onPointerCancel:onUp,style:{...style,position:\"relative\",width:\"100%\",height:\"100%\",// height set to Fit on the layer: the board keeps its Ratio (never shorter than Min height)\n...props.ratio&&props.ratio>0?{aspectRatio:String(props.ratio),minHeight:props.minHeight||0}:null,overflow:\"hidden\",background:fromBehind&&!showGL?\"transparent\":staticBg||colors.gap,...{containerType:\"size\"},cursor:cursorText&&mode!==\"image\"?\"none\":mode===\"image\"?\"pointer\":\"crosshair\",userSelect:\"none\",touchAction:mode===\"image\"?\"auto\":\"pan-y\",outline:\"none\"},children:[hasSlot&&/*#__PURE__*/_jsx(\"div\",{ref:slotRef,\"aria-hidden\":true,style:{position:\"absolute\",width:\"100%\",height:0,overflow:\"hidden\",visibility:\"hidden\",pointerEvents:\"none\"},children:props.cms}),(!showGL||!phDone)&&/*#__PURE__*/_jsxs(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",inset:0,background:phImg?undefined:colors.board},children:[phImg&&/*#__PURE__*/_jsx(FitPhoto,{src:sized(phImg,isStatic?1024:SAMPLE_PX),fit:fit,fy:focusY,w:size.w,h:size.h}),!showGL&&(mode===\"text\"||mode===\"projects\"&&!phImg)&&/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,display:\"grid\",placeItems:\"center\",padding:\"6%\",textAlign:\"center\",color:colors.letters,fontFamily:letterFamily,fontWeight:letterWeight,fontSize:\"clamp(40px, 16cqw, 320px)\",lineHeight:.86,textTransform:\"uppercase\",whiteSpace:\"pre-line\",textShadow:\"0 0.04em 0 rgba(0,0,0,.25)\"},children:(mode===\"text\"?text:introText).replace(/\\|/g,\"\\n\")}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,backgroundImage:dots,backgroundSize:`${pp}px ${pp}px`,mixBlendMode:\"soft-light\",opacity:.9}})]}),showGL&&/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,\"aria-hidden\":true,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",display:\"block\",opacity:drawn?1:0,transition:reduced?\"none\":`opacity .6s ${ease}`}}),mode===\"image\"&&showGL&&(wantPhoto||developed)&&/*#__PURE__*/_jsx(FitPhoto,{src:sized(image.src,size.w*Math.min(typeof window!==\"undefined\"?window.devicePixelRatio||1:1,2)),fit:fit,fy:focusY,w:size.w,h:size.h,style:{opacity:devFull?1:0,transform:devFull?\"scale(1)\":\"scale(1.03)\",transition:reduced?\"none\":`opacity .6s ${ease} .15s, transform .9s ${ease}`}}),pressDev&&showGL&&wantPhoto&&current&&/*#__PURE__*/_jsx(FitPhoto,{src:sized(current.image.src,size.w*Math.min(typeof window!==\"undefined\"?window.devicePixelRatio||1:1,2)),fit:fit,fy:focusY,w:size.w,h:size.h,style:{opacity:devFull?1:0,filter:devFull?\"blur(0px)\":\"blur(14px)\",transform:devFull?\"scale(1)\":\"scale(1.03)\",transition:reduced?\"none\":`opacity .6s ${ease} .1s, filter .8s ${ease}, transform .9s ${ease}`}},current.image.src),(props.seoHeading||\"\").trim()&&/*#__PURE__*/_jsx(\"h1\",{style:{position:\"absolute\",width:1,height:1,margin:-1,padding:0,overflow:\"hidden\",clip:\"rect(0 0 0 0)\",whiteSpace:\"nowrap\",border:0},children:(props.seoHeading||\"\").trim()}),mode===\"projects\"&&cap.show&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",left:0,right:0,bottom:0,height:\"46%\",background:\"linear-gradient(to bottom, rgba(10,10,18,0), rgba(10,10,18,.42))\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",left:\"clamp(20px, 2.8cqw, 40px)\",right:\"clamp(20px, 2.8cqw, 40px)\",bottom:\"clamp(24px, 2.8cqw, 40px)\",display:\"flex\",alignItems:\"flex-end\",justifyContent:\"space-between\",gap:20,flexWrap:\"wrap\",pointerEvents:\"none\"},children:[/*#__PURE__*/_jsx(\"div\",{style:{minWidth:0,maxWidth:\"70%\",opacity:captionOut||idx<0?0:1,filter:captionOut?\"blur(14px)\":\"none\",transform:captionOut?\"translateY(18px)\":\"none\",transition},children:current&&/*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsx(\"h2\",{onClick:e=>{e.stopPropagation();if(current.href)navigate(router,current.href);},style:{...titleStyle,cursor:current.href?\"pointer\":\"inherit\",pointerEvents:current.href?\"auto\":\"none\"},children:current.title}),/*#__PURE__*/_jsx(\"p\",{style:{...metaStyle,margin:\"14px 0 0\",display:\"flex\",gap:12,flexWrap:\"wrap\",opacity:.88},children:[current.client,current.field,current.year].filter(Boolean).map((s,i,a)=>/*#__PURE__*/_jsxs(React.Fragment,{children:[/*#__PURE__*/_jsx(\"span\",{children:s}),i<a.length-1&&/*#__PURE__*/_jsx(\"span\",{style:{opacity:.5},children:\"/\"})]},i))})]})}),(cap.counter||cap.arrows||cap.progress)&&count>0&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"flex-end\",gap:20,opacity:idx<0?0:1,transition},children:[cap.progress&&count<=24&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",gap:8,alignItems:\"center\"},children:projects.map((_,i)=>/*#__PURE__*/_jsx(\"span\",{style:{width:i===idx?18:12,height:i===idx?18:12,borderRadius:\"50%\",opacity:i===idx?1:.5,transition:reduced?\"none\":`all .5s ${ease}`,background:\"radial-gradient(circle at 35% 30%, #fff 0 20%, #dfe2f2 45%, #8b90b2 100%)\",boxShadow:\"1px 1.5px 2px rgba(0,0,0,.25)\"}},i))}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:20,pointerEvents:\"auto\"},children:[cap.counter&&/*#__PURE__*/_jsxs(\"span\",{style:{...metaStyle,display:\"flex\",alignItems:\"baseline\",gap:8},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:titleStyle.fontFamily,fontWeight:500,fontSize:\"clamp(36px, 3.6cqw, 56px)\",lineHeight:.9,fontVariantNumeric:\"tabular-nums\"},children:pad(Math.max(0,idx)+1)}),/*#__PURE__*/_jsxs(\"span\",{style:{fontSize:14,opacity:.6},children:[\"/ \",pad(count)]})]}),cap.arrows&&[-1,1].map(d=>/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-label\":d<0?\"Previous project\":\"Next project\",onPointerDown:e=>e.stopPropagation(),onPointerUp:e=>e.stopPropagation(),onClick:e=>{e.stopPropagation();step(d);},style:{...glass,width:52,height:52,borderRadius:\"50%\",display:\"grid\",placeItems:\"center\",cursor:\"pointer\",padding:0},children:/*#__PURE__*/_jsx(\"svg\",{width:20,height:20,viewBox:\"0 0 24 24\",fill:\"none\",stroke:\"currentColor\",strokeWidth:1.8,strokeLinecap:\"round\",strokeLinejoin:\"round\",\"aria-hidden\":true,children:/*#__PURE__*/_jsx(\"path\",{d:d<0?\"M15 5l-7 7 7 7\":\"M9 5l7 7-7 7\"})})},d))]})]})]})]}),cursorText&&mode!==\"image\"&&!isStatic&&/*#__PURE__*/_jsxs(\"div\",{ref:handRef,\"aria-hidden\":true,style:{position:\"absolute\",left:0,top:0,pointerEvents:\"none\",display:\"flex\",alignItems:\"center\",gap:12,willChange:\"transform\",opacity:cursor.on?1:0,transition:reduced?\"none\":`opacity .4s ${ease}`,zIndex:3},children:[/*#__PURE__*/_jsx(\"span\",{style:{width:72,height:72,borderRadius:\"50%\",border:`1.5px solid ${colors.text}`,background:\"rgba(255,255,255,0.08)\",transform:cursor.down?\"scale(.66)\":\"scale(1)\",transition:reduced?\"none\":`transform .5s ${ease}`}}),/*#__PURE__*/_jsx(\"span\",{style:{...metaStyle,background:\"rgba(12,12,20,0.42)\",border:\"1px solid rgba(255,255,255,0.3)\",color:\"#fff\",fontSize:13,fontWeight:600,padding:\"9px 14px\",borderRadius:999,whiteSpace:\"nowrap\"},children:pressDev?devFull?\"Click to pin\":cursorText:cursor.down?\"Release\":cursorText})]})]});}Pinscreen.displayName=\"Pinscreen\";/* -------------------------------------------------------------- controls -- */const isMode=m=>p=>!m.includes(p.mode||\"projects\");addPropertyControls(Pinscreen,{mode:{type:ControlType.Enum,title:\"Mode\",options:[\"projects\",\"text\",\"image\"],optionTitles:[\"Projects\",\"Text\",\"Image\"],displaySegmentedControl:true,defaultValue:\"projects\"},cms:{type:ControlType.ComponentInstance,title:\"Projects (CMS)\",description:\"Connect a Collection List: an Image layer, then Title, Client, Field, Year text layers. Link each item to its page.\",hidden:isMode([\"projects\"])},items:{type:ControlType.Array,title:\"Projects\",maxCount:24,hidden:isMode([\"projects\"]),control:{type:ControlType.Object,controls:{image:{type:ControlType.ResponsiveImage,title:\"Image\"},title:{type:ControlType.String,title:\"Title\",defaultValue:\"Blue Hour Coat\"},client:{type:ControlType.String,title:\"Client\",defaultValue:\"Atelier Nord\"},field:{type:ControlType.String,title:\"Field\",defaultValue:\"Fashion\"},year:{type:ControlType.String,title:\"Year\",defaultValue:\"2026\"},link:{type:ControlType.Link,title:\"Link\"}}}},introText:{type:ControlType.String,title:\"Intro text\",defaultValue:\"SOL NAVARRO\",description:\"Pressed into the board before the first project. Use | for a new line.\",hidden:isMode([\"projects\"])},text:{type:ControlType.String,title:\"Text\",defaultValue:\"SAY HELLO\",displayTextArea:true,description:\"Use | or a new line to break.\",hidden:isMode([\"text\"])},imageSource:{type:ControlType.Enum,title:\"Image from\",options:[\"prop\",\"behind\"],optionTitles:[\"This\",\"Layer behind\"],displaySegmentedControl:true,defaultValue:\"prop\",description:\"Layer behind: place an Image layer (e.g. bound to a CMS field) under the board.\",hidden:isMode([\"image\"])},image:{type:ControlType.ResponsiveImage,title:\"Image\",hidden:p=>(p.mode||\"projects\")!==\"image\"||p.imageSource===\"behind\"},pressAction:{type:ControlType.Enum,title:\"Press\",options:[\"develop\",\"next\"],optionTitles:[\"Develop photo\",\"Next project\"],displaySegmentedControl:true,defaultValue:\"develop\",description:\"A click clears the pins into the real photo (click again to pin it back), or a click jumps to the next project.\",hidden:isMode([\"projects\"])},develop:{type:ControlType.Enum,title:\"Develop\",options:[\"hover\",\"press\",\"off\"],optionTitles:[\"Hover\",\"Press & hold\",\"Off\"],defaultValue:\"hover\",description:\"How the pins press flat into the real photo.\",hidden:isMode([\"image\"])},developed:{type:ControlType.Boolean,title:\"Developed\",defaultValue:false,description:\"Turn on in a variant (or a scroll effect) to develop the picture.\",hidden:isMode([\"image\"])},photoFit:{type:ControlType.Number,title:\"Photo fit\",min:0,max:1,step:.05,defaultValue:.3,description:\"1 fills the board (crops tall photos). Lower shows more of each photo over a soft blurred fill.\",hidden:isMode([\"projects\"])},focusY:{type:ControlType.Number,title:\"Focus Y\",min:0,max:1,step:.05,defaultValue:.35,description:\"Which part of tall pictures stays in view.\",hidden:isMode([\"projects\",\"image\"])},pins:{type:ControlType.Object,title:\"Pins\",buttonTitle:\"Size, relief, tilt\",controls:{size:{type:ControlType.Number,title:\"Size\",min:8,max:28,step:.5,unit:\"px\",defaultValue:14},sizePhone:{type:ControlType.Number,title:\"Size (phone)\",min:6,max:20,step:.5,unit:\"px\",defaultValue:11},relief:{type:ControlType.Number,title:\"Relief\",min:.5,max:5,step:.1,defaultValue:3},tilt:{type:ControlType.Number,title:\"Tilt\",min:0,max:2,step:.05,defaultValue:1},follow:{type:ControlType.Boolean,title:\"Follow cursor\",defaultValue:true}}},hand:{type:ControlType.Object,title:\"Hand\",buttonTitle:\"Cursor, press, autoplay\",controls:{strength:{type:ControlType.Number,title:\"Strength\",min:0,max:3,step:.05,defaultValue:1.25},radius:{type:ControlType.Number,title:\"Radius\",min:1.5,max:8,step:.1,unit:\"pins\",defaultValue:3.8},pressToChange:{type:ControlType.Boolean,title:\"Press\",defaultValue:true,enabledTitle:\"Dent + next\",disabledTitle:\"Off\"},autoplay:{type:ControlType.Number,title:\"Autoplay\",min:0,max:20,step:.1,unit:\"s\",defaultValue:6.8,description:\"0 = off. Pauses 7 s after any touch.\"},cursorLabel:{type:ControlType.String,title:\"Cursor label\",defaultValue:\"Press to change\",description:\"Empty = normal cursor.\"}}},caption:{type:ControlType.Object,title:\"Caption\",buttonTitle:\"Title, counter, arrows\",hidden:isMode([\"projects\"]),controls:{show:{type:ControlType.Boolean,title:\"Show\",defaultValue:true},counter:{type:ControlType.Boolean,title:\"Counter\",defaultValue:true},arrows:{type:ControlType.Boolean,title:\"Arrows\",defaultValue:true},progress:{type:ControlType.Boolean,title:\"Progress pins\",defaultValue:true}}},theme:{type:ControlType.Enum,title:\"Theme\",options:[\"cobalt\",\"paper\",\"ink\",\"custom\"],optionTitles:[\"Cobalt\",\"Paper\",\"Ink\",\"Custom\"],defaultValue:\"cobalt\"},ratio:{type:ControlType.Number,title:\"Ratio\",min:0,max:6,step:.01,defaultValue:0,description:\"Width \\xf7 height, used when the layer height is Fit (0 = off). Keeps the board's shape on every breakpoint.\"},minHeight:{type:ControlType.Number,title:\"Min height\",min:0,max:1200,step:10,unit:\"px\",defaultValue:0,hidden:p=>!p.ratio},seoHeading:{type:ControlType.String,title:\"Page heading\",defaultValue:\"\",placeholder:\"e.g. Sol Navarro — photographer\",description:\"Optional H1 for search engines and screen readers. Not shown on screen. Use it on the hero of a page that has no other H1.\"},label:{type:ControlType.String,title:\"Label\",defaultValue:\"\",placeholder:\"Cursor label\",description:\"Overrides the hand's cursor label.\"},colors:{type:ControlType.Object,title:\"Colors\",hidden:p=>p.theme!==\"custom\",buttonTitle:\"Board, letters, text\",controls:{board:{type:ControlType.Color,title:\"Board\",defaultValue:\"#2236F2\"},letters:{type:ControlType.Color,title:\"Letters\",defaultValue:\"#FFFFFF\"},gap:{type:ControlType.Color,title:\"Between pins\",defaultValue:\"#0B0C13\"},text:{type:ControlType.Color,title:\"Caption text\",defaultValue:\"#FFFFFF\"},glass:{type:ControlType.Color,title:\"Glass\",defaultValue:\"rgba(255,255,255,0.16)\"}}},fonts:{type:ControlType.Enum,title:\"Fonts\",options:[\"builtin\",\"custom\"],optionTitles:[\"Built-in\",\"Custom\"],displaySegmentedControl:true,defaultValue:\"builtin\",description:\"Built-in = Big Shoulders + Figtree.\"},letterFont:{type:ControlType.Font,title:\"Pin letters\",hidden:p=>p.fonts!==\"custom\",controls:\"extended\",displayFontSize:false,displayTextAlignment:false,defaultFontType:\"sans-serif\",defaultValue:{variant:\"Black\"}},titleFont:{type:ControlType.Font,title:\"Title font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{variant:\"Extra Bold\",fontSize:168,lineHeight:\"0.84em\"},hidden:p=>p.fonts!==\"custom\"||(p.mode||\"projects\")!==\"projects\"},metaFont:{type:ControlType.Font,title:\"Meta font\",controls:\"extended\",defaultFontType:\"sans-serif\",defaultValue:{variant:\"Medium\",fontSize:15,lineHeight:\"1.3em\"},hidden:p=>p.fonts!==\"custom\"||(p.mode||\"projects\")!==\"projects\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Pinscreen\",\"slots\":[\"cms\"],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicWidth\":\"1200\",\"framerSupportedLayoutHeight\":\"any\",\"framerIntrinsicHeight\":\"760\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Pinscreen.map","// Generated by Framer (0da2bc6)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Figtree-regular\",\"GF;Figtree-700\",\"GF;Figtree-700italic\",\"GF;Figtree-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_d_QF5bwkEU4HTy.woff2\",weight:\"400\"},{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_eYR15bwkEU4HTy.woff2\",weight:\"700\"},{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"italic\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A1EayEA25WTybO8.woff2\",weight:\"700\"},{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"italic\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A7YdyEA25WTybO8.woff2\",weight:\"400\"}]}];export const css=['.framer-wUpUb .framer-styles-preset-8gzrq8:not(.rich-text-wrapper), .framer-wUpUb .framer-styles-preset-8gzrq8.rich-text-wrapper p { --framer-font-family: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-family-bold: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-family-italic: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 16px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 400; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.5em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-5674ab18-83d4-43a3-a141-b3f951e69e40, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-wUpUb\";\nexport const __FramerMetadata__ = {\"exports\":{\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}","// Generated by Framer (0da2bc6)\nimport{fontStore}from\"framer\";fontStore.loadFonts([\"GF;Figtree-500\",\"GF;Figtree-700\",\"GF;Figtree-700italic\",\"GF;Figtree-italic\"]);export const fonts=[{explicitInter:true,fonts:[{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_dNQF5bwkEU4HTy.woff2\",weight:\"500\"},{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"normal\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xmz-HUzqDCFdgfMsYiV_F7wfS-Bs_eYR15bwkEU4HTy.woff2\",weight:\"700\"},{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"italic\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A1EayEA25WTybO8.woff2\",weight:\"700\"},{cssFamilyName:\"Figtree\",openType:true,source:\"google\",style:\"italic\",uiFamilyName:\"Figtree\",url:\"https://fonts.gstatic.com/s/figtree/v9/_Xm9-HUzqDCFdgfMm4GnA4aZFrUvtOK3A7YdyEA25WTybO8.woff2\",weight:\"400\"}]}];export const css=['.framer-ERW9x .framer-styles-preset-15hkdpx:not(.rich-text-wrapper), .framer-ERW9x .framer-styles-preset-15hkdpx.rich-text-wrapper p { --framer-font-family: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-family-bold: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-family-bold-italic: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-family-italic: \"Figtree\", \"Figtree Placeholder\", sans-serif; --framer-font-open-type-features: \\'blwf\\' on, \\'cv03\\' on, \\'cv04\\' on, \\'cv09\\' on, \\'cv11\\' on; --framer-font-size: 14px; --framer-font-style: normal; --framer-font-style-bold: normal; --framer-font-style-bold-italic: italic; --framer-font-style-italic: italic; --framer-font-variation-axes: normal; --framer-font-weight: 500; --framer-font-weight-bold: 700; --framer-font-weight-bold-italic: 700; --framer-font-weight-italic: 400; --framer-letter-spacing: 0em; --framer-line-height: 1.2em; --framer-paragraph-spacing: 20px; --framer-text-alignment: start; --framer-text-color: var(--token-5674ab18-83d4-43a3-a141-b3f951e69e40, #ffffff); --framer-text-decoration: none; --framer-text-stroke-color: initial; --framer-text-stroke-width: initial; --framer-text-transform: none; }'];export const className=\"framer-ERW9x\";\nexport const __FramerMetadata__ = {\"exports\":{\"css\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fonts\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"className\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}"],"mappings":"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"}