{"version":3,"file":"CommingSoon.DZ9e_hP9.mjs","names":["useRef","useState","p"],"sources":["https:/framerusercontent.com/modules/z6fTo4AAbGGoC1mPZ7Mj/rUCOodf9kSftlpYBk13N/CommingSoon.js"],"sourcesContent":["// Spiral Blue — Coming soon pages (Sapphire, Teal, GIS)\n// One Framer code file, four components:\n//   SapphireHero, SapphireContact   (product in development)\n//   TealHero, TealContact           (Spiral Blue's own satellite mission)\n//   GISHero, GISContact             (3D geospatial data, with the lidar scan animation)\n// Each pair makes a complete page: drag the Hero in, then the Contact below it.\n// They share the same design, so all text, media and links are editable in the panel.\nimport{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";const FONT=\"Archivo, sans-serif\";const MONO=\"'JetBrains Mono', monospace\";const TEXT=\"#FFFFFF\";const MUTED=\"rgba(255,255,255,0.7)\";const ACCENT=\"#6FA8FF\";const LINE=\"rgba(255,255,255,0.14)\";const BUTTON=\"#1F4FD8\";function useFonts(){useEffect(()=>{const id=\"sb-fonts-bold\";if(document.getElementById(id))return;const l=document.createElement(\"link\");l.id=id;l.rel=\"stylesheet\";l.href=\"https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;700&family=JetBrains+Mono:wght@400;500;700&display=swap\";document.head.appendChild(l);},[]);}function useWidth(){const ref=useRef(null);const[w,setW]=useState(1200);useEffect(()=>{const el=ref.current;if(!el)return;const ro=new ResizeObserver(([e])=>setW(e.contentRect.width));ro.observe(el);return()=>ro.disconnect();},[]);return[ref,w];}function Button({text,link,primary,onClick}){const[h,setH]=useState(false);if(!text)return null;return /*#__PURE__*/_jsx(\"a\",{href:link||\"#\",onClick:onClick,onMouseEnter:()=>setH(true),onMouseLeave:()=>setH(false),style:{display:\"inline-block\",padding:\"14px 24px\",borderRadius:999,fontSize:15,fontWeight:700,lineHeight:1.2,textDecoration:\"none\",whiteSpace:\"nowrap\",textAlign:\"center\",border:`1px solid ${primary?h?TEXT:BUTTON:h?TEXT:\"rgba(255,255,255,0.4)\"}`,background:primary?h?TEXT:BUTTON:h?\"rgba(255,255,255,0.08)\":\"transparent\",color:primary&&h?\"#070B12\":TEXT,transition:\"background 250ms, color 250ms, border-color 250ms\"},children:text});}function scrollToId(id,offset){const raw=(id||\"\").replace(/^#/,\"\").trim();const el=raw?document.getElementById(raw):null;if(!el)return false;const reduce=window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;window.scrollTo({top:el.getBoundingClientRect().top+window.scrollY-offset,behavior:reduce?\"auto\":\"smooth\"});return true;}function parseColor(c){const s=(c||\"\").trim();if(s.startsWith(\"#\")){let h=s.slice(1);if(h.length===3)h=h.split(\"\").map(x=>x+x).join(\"\");const n=parseInt(h.slice(0,6),16);return[n>>16&255,n>>8&255,n&255];}const m=s.match(/[\\d.]+/g);return m?[+m[0],+m[1],+m[2]]:[255,255,255];}const clamp01=v=>Math.min(1,Math.max(0,v));const smooth=(a,b,v)=>{const t=clamp01((v-a)/(b-a||1));return t*t*(3-2*t);};function ramp(stops,t){const x=clamp01(t)*(stops.length-1);const i=Math.min(stops.length-2,Math.floor(x));const f=x-i;const a=stops[i];const b=stops[i+1];return[a[0]+(b[0]-a[0])*f,a[1]+(b[1]-a[1])*f,a[2]+(b[2]-a[2])*f];}function LidarScan(props){const{src,alt,dotSize,dotGap,animate,position,flicker,dataZone,range,speed,spread,sparkle,headColor,colors}=props;const wrapRef=useRef(null);const canvasRef=useRef(null);const[failed,setFailed]=useState(false);useEffect(()=>{const wrap=wrapRef.current;const cv=canvasRef.current;if(!wrap||!cv)return;const ctx=cv.getContext(\"2d\");if(!ctx)return;const stops=colors.map(parseColor);const[hr,hg,hb]=parseColor(headColor);let W=0;let H=0;let dpr=1;let cols=0;let rows=0;let dr=new Uint8Array(0);let dg=new Uint8Array(0);let db=new Uint8Array(0);let lum=new Float32Array(0);let ph=new Float32Array(0);let rate=new Float32Array(0);let flash=new Float32Array(0);// per-row scanner\nlet rCenter=new Float32Array(0);let rAmp=new Float32Array(0);let rSpeed=new Float32Array(0);let rPhase=new Float32Array(0);let rHead=new Int32Array(0);let ready=false;let visible=true;let raf=0;let lastDraw=0;const start=performance.now();const img=new Image;img.crossOrigin=\"anonymous\";// Triangle wave 0..1..0\nconst tri=x=>{const f=x-Math.floor(x);return f<.5?f*2:2-f*2;};const headAt=(row,t)=>Math.round(rCenter[row]-rAmp[row]+tri(t*rSpeed[row]/(2*rAmp[row])+rPhase[row])*2*rAmp[row]);const build=()=>{W=wrap.clientWidth;H=wrap.clientHeight;if(!W||!H||!img.naturalWidth)return;dpr=Math.min(window.devicePixelRatio||1,2);cv.width=Math.round(W*dpr);cv.height=Math.round(H*dpr);cv.style.width=W+\"px\";cv.style.height=H+\"px\";cols=Math.ceil(W/dotGap);rows=Math.ceil(H/dotGap);const off=document.createElement(\"canvas\");off.width=cols;off.height=rows;const o=off.getContext(\"2d\");if(!o)return;const ir=img.naturalWidth/img.naturalHeight;const br=W/H;let sw=img.naturalWidth;let sh=img.naturalHeight;let sx=0;let sy=0;if(ir>br){sw=sh*br;sx=(img.naturalWidth-sw)/2;}else{sh=sw/br;sy=(img.naturalHeight-sh)/2;}o.drawImage(img,sx,sy,sw,sh,0,0,cols,rows);let data;try{data=o.getImageData(0,0,cols,rows).data;}catch{setFailed(true);return;}const n=cols*rows;dr=new Uint8Array(n);dg=new Uint8Array(n);db=new Uint8Array(n);lum=new Float32Array(n);ph=new Float32Array(n);rate=new Float32Array(n);flash=new Float32Array(n).fill(-10);for(let i=0;i<n;i++){const k=i*4;dr[i]=data[k];dg[i]=data[k+1];db[i]=data[k+2];lum[i]=(.2126*data[k]+.7152*data[k+1]+.0722*data[k+2])/255;ph[i]=Math.random()*Math.PI*2;rate[i]=.4+Math.random()*1.2;}// Each row: a centre that wanders smoothly down the image, its own range, speed and phase\nconst target=cols*position/100;const p1=Math.random()*6.28;const p2=Math.random()*6.28;rCenter=new Float32Array(rows);rAmp=new Float32Array(rows);rSpeed=new Float32Array(rows);rPhase=new Float32Array(rows);rHead=new Int32Array(rows);for(let y=0;y<rows;y++){const wander=Math.sin(y*.09+p1)*.6+Math.sin(y*.23+p2)*.4;rCenter[y]=target+wander*spread;rAmp[y]=Math.max(1,range*(.5+Math.random()));rSpeed[y]=speed*(.6+Math.random()*.8);rPhase[y]=Math.random();rHead[y]=headAt(y,0);}ready=true;draw(performance.now());};const draw=now=>{if(!ready)return;const t=animate?(now-start)/1e3:0;ctx.setTransform(dpr,0,0,dpr,0,0);ctx.clearRect(0,0,W,H);// Move each row's scan pixel; light up dots it steps onto\nfor(let y=0;y<rows;y++){const h=Math.max(0,Math.min(cols-1,headAt(y,t)));const prev=rHead[y];if(animate&&h>prev){for(let x=prev+1;x<=h;x++)flash[y*cols+x]=t;}rHead[y]=h;}// Occasional re-scan sparkle across the scanned area\nif(animate&&sparkle>0){const count=Math.round(sparkle*rows*.6);for(let k=0;k<count;k++){const y=Math.random()*rows|0;const x=Math.random()*rHead[y]|0;flash[y*cols+x]=t;}}// Black backdrop behind the scanned part of each row\nctx.fillStyle=\"#000\";for(let y=0;y<rows;y++){ctx.fillRect(0,y*dotGap,rHead[y]*dotGap,dotGap+.5);}const sxPx=W*position/100;const zone=Math.max(1,sxPx*dataZone);const size=dotSize*2;for(let gy=0;gy<rows;gy++){const cy=gy*dotGap+dotGap/2;const head=rHead[gy];for(let gx=0;gx<head;gx++){const i=gy*cols+gx;const cx=gx*dotGap+dotGap/2;const tw=animate?.5+.5*Math.sin(t*rate[i]*2+ph[i]):.5;const a=1-flicker+flicker*tw;const age=t-flash[i];const boost=age>=0&&age<.5?1+1.3*(1-age/.5):1;const f=1-smooth(zone*.25,zone,cx);let r=dr[i]*1.25;let g=dg[i]*1.25;let b=db[i]*1.25;if(f>0){const m=ramp(stops,lum[i]);r+=(m[0]-r)*f;g+=(m[1]-g)*f;b+=(m[2]-b)*f;}r=Math.min(255,r*boost);g=Math.min(255,g*boost);b=Math.min(255,b*boost);ctx.fillStyle=`rgba(${r|0},${g|0},${b|0},${a.toFixed(3)})`;ctx.fillRect(cx-size/2,cy-size/2,size,size);}// The scan pixel itself\nconst hx=head*dotGap+dotGap/2;ctx.fillStyle=`rgb(${hr},${hg},${hb})`;ctx.fillRect(hx-size/2,cy-size/2,size,size);}};const tick=now=>{raf=requestAnimationFrame(tick);if(!visible||!ready)return;if(now-lastDraw>=33){lastDraw=now;draw(now);}};img.onload=()=>{build();if(animate)raf=requestAnimationFrame(tick);};img.onerror=()=>setFailed(true);img.src=src;const ro=new ResizeObserver(()=>build());ro.observe(wrap);const io=new IntersectionObserver(([e])=>visible=e.isIntersecting);io.observe(wrap);return()=>{cancelAnimationFrame(raf);ro.disconnect();io.disconnect();};},[src,dotSize,dotGap,animate,position,flicker,dataZone,range,speed,spread,sparkle,headColor,colors.join(\"|\")]);if(failed)return /*#__PURE__*/_jsx(SimpleDotScan,{...props});return /*#__PURE__*/_jsxs(\"div\",{ref:wrapRef,style:{position:\"absolute\",inset:0},children:[/*#__PURE__*/_jsx(\"img\",{src:src,alt:alt,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"}}),/*#__PURE__*/_jsx(\"canvas\",{ref:canvasRef,\"aria-hidden\":true,style:{position:\"absolute\",top:0,left:0,pointerEvents:\"none\"}})]});}// Backup if the browser won't let the image be read (rare): plain dots, no data colours\nfunction SimpleDotScan({src,alt,dotSize,dotGap,position}){const mask=`radial-gradient(circle, #000 ${dotSize}px, transparent ${dotSize+.6}px)`;const layer={position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\",display:\"block\"};return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"absolute\",inset:0},children:[/*#__PURE__*/_jsx(\"img\",{src:src,alt:\"\",\"aria-hidden\":true,style:{...layer,WebkitMaskImage:mask,maskImage:mask,WebkitMaskSize:`${dotGap}px ${dotGap}px`,maskSize:`${dotGap}px ${dotGap}px`,clipPath:`inset(0 ${100-position}% 0 0)`,filter:\"brightness(1.35) saturate(1.3)\"}}),/*#__PURE__*/_jsx(\"img\",{src:src,alt:alt,style:{...layer,clipPath:`inset(0 0 0 ${position}%)`}})]});}/* ---------- Media that scales from its real proportions ----------\n   Sizes the image/video from its natural shape, so scaling down shows MORE of it\n   (with black around) instead of a shrunken, already-cropped version. */function ScaledMedia(p){const boxRef=useRef(null);const vref=useRef(null);const[box,setBox]=useState({w:0,h:0});const[ratio,setRatio]=useState(0);useEffect(()=>{const el=boxRef.current;if(!el)return;const ro=new ResizeObserver(([e])=>setBox({w:e.contentRect.width,h:e.contentRect.height}));ro.observe(el);return()=>ro.disconnect();},[]);useEffect(()=>{const v=vref.current;if(!v||p.kind!==\"video\")return;const rate=p.speed??1;v.defaultPlaybackRate=rate;v.playbackRate=rate;if(window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches)v.pause();else v.play().catch(()=>{});},[p.speed,p.src,p.kind]);let w=\"100%\";let h=\"100%\";if(box.w&&box.h&&ratio){const br=box.w/box.h;let bw;let bh;if(p.fit===\"cover\"===ratio>br){bh=box.h;bw=bh*ratio;}else{bw=box.w;bh=bw/ratio;}w=bw*p.scale;h=bh*p.scale;}const style={position:\"absolute\",left:\"50%\",top:\"50%\",width:w,height:h,maxWidth:\"none\",objectFit:ratio?\"fill\":p.fit,transform:`translate(-50%, -50%) translate(${p.x/100*box.w}px, ${p.y/100*box.h}px)`};return /*#__PURE__*/_jsx(\"div\",{ref:boxRef,style:{position:\"absolute\",inset:0,overflow:\"hidden\",background:\"#000\"},children:p.kind===\"video\"?/*#__PURE__*/_jsx(\"video\",{ref:vref,src:p.src,muted:true,loop:true,playsInline:true,autoPlay:true,onLoadedMetadata:e=>{const v=e.currentTarget;if(v.videoWidth)setRatio(v.videoWidth/v.videoHeight);v.defaultPlaybackRate=p.speed??1;v.playbackRate=p.speed??1;},style:style}):/*#__PURE__*/_jsx(\"img\",{src:p.src,alt:p.alt||\"\",ref:el=>{if(el&&el.complete&&el.naturalWidth&&!ratio)setRatio(el.naturalWidth/el.naturalHeight);},onLoad:e=>{const el=e.currentTarget;if(el.naturalWidth)setRatio(el.naturalWidth/el.naturalHeight);},style:style})});}function Media(p){if(p.mediaType===\"video\"&&p.video)return /*#__PURE__*/_jsx(ScaledMedia,{kind:\"video\",src:p.video,fit:p.fit,scale:p.scale,x:p.x,y:p.y,speed:p.speed});if(p.mediaType===\"image\"&&p.image?.src)return /*#__PURE__*/_jsx(ScaledMedia,{kind:\"image\",src:p.image.src,alt:p.image.alt,fit:p.fit,scale:p.scale,x:p.x,y:p.y});if(p.mediaType===\"scan\"&&p.image?.src&&p.scan){const sc=p.scan;const still=typeof window!==\"undefined\"&&window.matchMedia(\"(prefers-reduced-motion: reduce)\").matches;return /*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,transform:`translate(${p.x}%, ${p.y}%) scale(${p.scale})`},children:/*#__PURE__*/_jsx(LidarScan,{src:p.image.src,alt:p.image.alt||\"\",dotSize:sc.dotSize,dotGap:sc.dotGap,animate:!still,position:sc.scanPosition,flicker:sc.flicker,dataZone:sc.dataZone,range:sc.scanRange,speed:sc.scanSpeed,spread:sc.scanSpread,sparkle:sc.sparkle,headColor:sc.headColor,colors:[sc.dataLow,sc.dataMid,sc.dataHigh,sc.dataPeak]})});}// No media yet: a quiet dotted field with a soft glow, so the page still looks finished\nreturn /*#__PURE__*/_jsxs(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",inset:0},children:[/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,background:\"radial-gradient(60% 60% at 70% 45%, rgba(31,79,216,0.35) 0%, rgba(0,0,0,0) 70%)\"}}),/*#__PURE__*/_jsx(\"div\",{style:{position:\"absolute\",inset:0,backgroundImage:\"radial-gradient(circle, rgba(255,255,255,0.22) 1px, transparent 1.5px)\",backgroundSize:\"22px 22px\",WebkitMaskImage:\"radial-gradient(55% 60% at 70% 45%, #000 0%, transparent 80%)\",maskImage:\"radial-gradient(55% 60% at 70% 45%, #000 0%, transparent 80%)\"}})]});}function Hero(p){useFonts();const[ref,W]=useWidth();const mobile=W<760;const pad=mobile?p.padMobile:p.padDesktop;const titleSize=mobile?64:Math.round(Math.min(168,Math.max(88,W*.11)));const shade=mobile?`linear-gradient(0deg, rgba(0,0,0,${p.overlay}) 0%, rgba(0,0,0,${p.overlay*.5}) 55%, rgba(0,0,0,0.2) 100%)`:`linear-gradient(90deg, rgba(0,0,0,${p.overlay}) 0%, rgba(0,0,0,${p.overlay*.5}) 45%, rgba(0,0,0,0) 80%)`;return /*#__PURE__*/_jsxs(\"section\",{ref:ref,\"aria-label\":p.title,style:{...p.style,position:\"relative\",width:\"100%\",minHeight:`max(${mobile?Math.min(p.minHeight,640):p.minHeight}px, 100svh)`,display:\"flex\",alignItems:\"flex-end\",overflow:\"hidden\",background:\"#000\",fontFamily:FONT,color:TEXT,lineHeight:1.4,boxSizing:\"border-box\"},children:[/*#__PURE__*/_jsx(\"style\",{children:`@keyframes sbPulse{0%{box-shadow:0 0 0 0 rgba(111,168,255,0.6)}70%{box-shadow:0 0 0 10px rgba(111,168,255,0)}100%{box-shadow:0 0 0 0 rgba(111,168,255,0)}}\n@media (prefers-reduced-motion: reduce){.sb-pulse{animation:none!important}}`}),/*#__PURE__*/_jsx(Media,{mediaType:p.mediaType,scan:p,video:p.video,image:p.image,scale:p.mediaScale,x:p.mediaX,y:p.mediaY,speed:p.videoSpeed,fit:p.mediaFit}),/*#__PURE__*/_jsx(\"div\",{\"aria-hidden\":true,style:{position:\"absolute\",inset:0,background:shade}}),/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\",width:\"100%\",maxWidth:p.maxWidth,margin:\"0 auto\",padding:`${mobile?140:180}px ${pad}px ${mobile?48:80}px`,boxSizing:\"border-box\",display:\"flex\",flexDirection:\"column\",gap:22},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:14,flexWrap:\"wrap\"},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:MONO,fontSize:14,fontWeight:700,color:ACCENT},children:p.label}),p.status&&/*#__PURE__*/_jsxs(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",gap:8,fontFamily:MONO,fontSize:12,fontWeight:700,padding:\"6px 12px\",borderRadius:999,border:`1px solid ${LINE}`,background:\"rgba(0,0,0,0.35)\",backdropFilter:\"blur(8px)\",WebkitBackdropFilter:\"blur(8px)\"},children:[/*#__PURE__*/_jsx(\"span\",{className:\"sb-pulse\",style:{width:7,height:7,borderRadius:\"50%\",background:ACCENT,animation:\"sbPulse 2s infinite\"}}),p.status]})]}),/*#__PURE__*/_jsx(\"h1\",{style:{margin:0,fontSize:titleSize,fontWeight:700,lineHeight:.88,letterSpacing:\"-0.045em\"},children:p.title}),p.description&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:mobile?18:22,lineHeight:1.5,color:MUTED,maxWidth:560},children:p.description}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:12,marginTop:6},children:[/*#__PURE__*/_jsx(Button,{text:p.primaryText,link:p.scrollTo?`#${p.scrollTo.replace(/^#/,\"\")}`:p.primaryLink,primary:true,onClick:e=>{if(p.scrollTo&&scrollToId(p.scrollTo,p.navOffset))e.preventDefault();}}),/*#__PURE__*/_jsx(Button,{text:p.secondaryText,link:p.secondaryLink})]}),p.points?.length>0&&/*#__PURE__*/_jsx(\"dl\",{style:{display:\"grid\",gridTemplateColumns:`repeat(${mobile?1:Math.min(3,p.points.length)}, minmax(0, 1fr))`,gap:mobile?16:32,margin:mobile?\"28px 0 0\":\"56px 0 0\",paddingTop:24,borderTop:`1px solid ${LINE}`,maxWidth:900},children:p.points.map((pt,i)=>/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column-reverse\",gap:4},children:[/*#__PURE__*/_jsx(\"dt\",{style:{fontSize:14,color:MUTED,lineHeight:1.45},children:pt.label}),/*#__PURE__*/_jsx(\"dd\",{style:{margin:0,fontSize:mobile?18:20,fontWeight:700},children:pt.value})]},i))})]})]});}const heroControls={label:{type:ControlType.String,title:\"Label\"},status:{type:ControlType.String,title:\"Status pill\"},title:{type:ControlType.String,title:\"Title\"},description:{type:ControlType.String,title:\"Description\",displayTextArea:true},points:{type:ControlType.Array,title:\"Key points\",maxCount:3,control:{type:ControlType.Object,controls:{value:{type:ControlType.String,title:\"Headline\"},label:{type:ControlType.String,title:\"Detail\"}}}},primaryText:{type:ControlType.String,title:\"Main button\"},scrollTo:{type:ControlType.String,title:\"Main button scrolls to (ID)\"},primaryLink:{type:ControlType.Link,title:\"Main link (if no scroll ID)\"},secondaryText:{type:ControlType.String,title:\"Second button\"},secondaryLink:{type:ControlType.Link,title:\"Second link\"},mediaType:{type:ControlType.Enum,title:\"Background\",options:[\"none\",\"video\",\"image\",\"scan\"],optionTitles:[\"Dots\",\"Video\",\"Image\",\"Lidar scan\"]},video:{type:ControlType.File,title:\"Video\",allowedFileTypes:[\"mp4\",\"webm\",\"mov\"],hidden:p=>p.mediaType!==\"video\"},image:{type:ControlType.ResponsiveImage,title:\"Image\",hidden:p=>p.mediaType!==\"image\"&&p.mediaType!==\"scan\"},mediaFit:{type:ControlType.Enum,title:\"Crop\",options:[\"cover\",\"contain\"],optionTitles:[\"Fill\",\"Fit whole\"],displaySegmentedControl:true,hidden:p=>p.mediaType===\"none\"||p.mediaType===\"scan\"},mediaScale:{type:ControlType.Number,title:\"Scale\",min:.3,max:3,step:.05,hidden:p=>p.mediaType===\"none\"},mediaX:{type:ControlType.Number,title:\"Shift X (%)\",min:-50,max:50,step:1,hidden:p=>p.mediaType===\"none\"},mediaY:{type:ControlType.Number,title:\"Shift Y (%)\",min:-50,max:50,step:1,hidden:p=>p.mediaType===\"none\"},videoSpeed:{type:ControlType.Number,title:\"Video speed\",min:.1,max:2,step:.05,hidden:p=>p.mediaType!==\"video\"},scanPosition:{type:ControlType.Number,title:\"Scan position (%)\",min:10,max:90,step:1,hidden:p=>p.mediaType!==\"scan\"},scanRange:{type:ControlType.Number,title:\"Scan sweep (dots)\",min:1,max:60,step:1,hidden:p=>p.mediaType!==\"scan\"},scanSpeed:{type:ControlType.Number,title:\"Scan speed (dots/s)\",min:1,max:80,step:1,hidden:p=>p.mediaType!==\"scan\"},scanSpread:{type:ControlType.Number,title:\"Edge waviness (dots)\",min:0,max:60,step:1,hidden:p=>p.mediaType!==\"scan\"},sparkle:{type:ControlType.Number,title:\"Re-scan sparkle\",min:0,max:2,step:.05,hidden:p=>p.mediaType!==\"scan\"},flicker:{type:ControlType.Number,title:\"Dot shimmer\",min:0,max:1,step:.05,hidden:p=>p.mediaType!==\"scan\"},dotSize:{type:ControlType.Number,title:\"Dot size\",min:.5,max:4,step:.1,hidden:p=>p.mediaType!==\"scan\"},dotGap:{type:ControlType.Number,title:\"Dot spacing\",min:3,max:16,step:1,hidden:p=>p.mediaType!==\"scan\"},dataZone:{type:ControlType.Number,title:\"Data colour reach\",min:0,max:1,step:.05,hidden:p=>p.mediaType!==\"scan\"},headColor:{type:ControlType.Color,title:\"Scan pixel\",hidden:p=>p.mediaType!==\"scan\"},dataLow:{type:ControlType.Color,title:\"Data: dark\",hidden:p=>p.mediaType!==\"scan\"},dataMid:{type:ControlType.Color,title:\"Data: mid\",hidden:p=>p.mediaType!==\"scan\"},dataHigh:{type:ControlType.Color,title:\"Data: bright\",hidden:p=>p.mediaType!==\"scan\"},dataPeak:{type:ControlType.Color,title:\"Data: peak\",hidden:p=>p.mediaType!==\"scan\"},overlay:{type:ControlType.Number,title:\"Text shade\",min:0,max:1,step:.05},minHeight:{type:ControlType.Number,title:\"Min height\",min:400,max:1200},navOffset:{type:ControlType.Number,title:\"Nav offset\",min:0,max:300},maxWidth:{type:ControlType.Number,title:\"Max width\",min:600,max:2e3},padDesktop:{type:ControlType.Number,title:\"Side inset (desktop)\",min:0,max:200},padMobile:{type:ControlType.Number,title:\"Side inset (mobile)\",min:0,max:80}};const heroBase={primaryLink:\"/contact\",mediaType:\"none\",mediaFit:\"cover\",mediaScale:1,mediaX:0,mediaY:0,videoSpeed:.6,overlay:.75,minHeight:760,navOffset:130,maxWidth:1280,padDesktop:64,padMobile:24,scanPosition:50,scanRange:10,scanSpeed:12,scanSpread:8,sparkle:.4,flicker:.3,dotSize:1.3,dotGap:5,dataZone:.6,headColor:\"#BFD6FF\",dataLow:\"#05070D\",dataMid:\"#1F4FD8\",dataHigh:\"#F2F5FA\",dataPeak:\"#E5383B\"};function Contact(p){useFonts();const[ref,W]=useWidth();const mobile=W<760;const pad=mobile?p.padMobile:p.padDesktop;const audiences=(p.audiences||\"\").split(\",\").map(s=>s.trim()).filter(Boolean);return /*#__PURE__*/_jsx(\"section\",{ref:ref,id:p.anchorId||undefined,\"aria-label\":p.title,style:{...p.style,width:\"100%\",boxSizing:\"border-box\",padding:`${mobile?Math.round(p.padY*.6):p.padY}px ${pad}px`,fontFamily:FONT,color:TEXT,lineHeight:1.4},children:/*#__PURE__*/_jsxs(\"div\",{style:{maxWidth:p.maxWidth,margin:\"0 auto\",display:\"grid\",gridTemplateColumns:mobile?\"1fr\":\"minmax(0, 1.2fr) minmax(0, 1fr)\",gap:mobile?32:80,alignItems:\"end\",borderTop:`1px solid ${LINE}`,paddingTop:mobile?40:64},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:18},children:[p.eyebrow&&/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:MONO,fontSize:13,fontWeight:700,color:ACCENT},children:p.eyebrow}),/*#__PURE__*/_jsx(\"h2\",{style:{margin:0,fontSize:mobile?40:64,fontWeight:700,lineHeight:.98,letterSpacing:\"-0.03em\"},children:p.title}),p.text&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:mobile?17:19,lineHeight:1.55,color:MUTED,maxWidth:560},children:p.text})]}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",gap:22},children:[audiences.length>0&&/*#__PURE__*/_jsx(\"ul\",{style:{listStyle:\"none\",margin:0,padding:0,display:\"flex\",flexWrap:\"wrap\",gap:8},children:audiences.map(a=>/*#__PURE__*/_jsx(\"li\",{style:{fontSize:14,padding:\"7px 13px\",borderRadius:999,border:`1px solid ${LINE}`,color:MUTED},children:a},a))}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexWrap:\"wrap\",gap:12},children:[/*#__PURE__*/_jsx(Button,{text:p.primaryText,link:p.primaryLink,primary:true}),/*#__PURE__*/_jsx(Button,{text:p.secondaryText,link:p.secondaryLink})]}),p.email&&/*#__PURE__*/_jsxs(\"a\",{href:`mailto:${p.email}`,style:{fontSize:15,color:MUTED,textDecoration:\"none\"},children:[\"or email\",\" \",/*#__PURE__*/_jsx(\"span\",{style:{color:TEXT,fontWeight:700},children:p.email})]})]})]})});}const contactControls={eyebrow:{type:ControlType.String,title:\"Label\"},title:{type:ControlType.String,title:\"Title\",displayTextArea:true},text:{type:ControlType.String,title:\"Text\",displayTextArea:true},audiences:{type:ControlType.String,title:\"Who it's for (comma sep.)\",displayTextArea:true},primaryText:{type:ControlType.String,title:\"Main button\"},primaryLink:{type:ControlType.Link,title:\"Main link\"},secondaryText:{type:ControlType.String,title:\"Second button\"},secondaryLink:{type:ControlType.Link,title:\"Second link\"},email:{type:ControlType.String,title:\"Email\"},anchorId:{type:ControlType.String,title:\"Section ID\"},padY:{type:ControlType.Number,title:\"Top/bottom space\",min:0,max:240},maxWidth:{type:ControlType.Number,title:\"Max width\",min:600,max:2e3},padDesktop:{type:ControlType.Number,title:\"Side inset (desktop)\",min:0,max:200},padMobile:{type:ControlType.Number,title:\"Side inset (mobile)\",min:0,max:80}};const contactBase={anchorId:\"register\",primaryLink:\"/contact\",secondaryLink:\"\",email:\"info@spiralblue.space\",padY:120,maxWidth:1280,padDesktop:64,padMobile:24};/* ================= Sapphire ================= *//**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export function SapphireHero(p){return /*#__PURE__*/_jsx(Hero,{...p});}SapphireHero.defaultProps={...heroBase,label:\"Space-to-space lidar\",status:\"In development\",title:\"Sapphire\",description:\"Lidar that sees other objects in orbit in 3D, for clearer awareness of what's around your spacecraft.\",points:[{value:\"Space-to-space lidar\",label:\"Measures objects in orbit, not the ground below\"},{value:\"3D, not just images\",label:\"Shape, size and movement of what's out there\"},{value:\"Built for awareness\",label:\"Space domain awareness and close-proximity work\"}],primaryText:\"Register interest\",scrollTo:\"register\",secondaryText:\"\",secondaryLink:\"\"};addPropertyControls(SapphireHero,heroControls);/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export function SapphireContact(p){return /*#__PURE__*/_jsx(Contact,{...p});}SapphireContact.defaultProps={...contactBase,eyebrow:\"Register interest\",title:\"Be first to fly Sapphire\",text:\"Sapphire is in development. Tell us about your mission and we'll keep you updated on availability, specs and early access.\",audiences:\"Defence & national security, Satellite operators, Space domain awareness\",primaryText:\"Register interest\",secondaryText:\"\"};addPropertyControls(SapphireContact,contactControls);/* ================= Teal ================= *//**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export function TealHero(p){return /*#__PURE__*/_jsx(Hero,{...p});}TealHero.defaultProps={...heroBase,label:\"Our satellite\",status:\"Mission in development\",title:\"Teal\",description:\"Spiral Blue's own Earth observation satellite, measuring forests, coasts and terrain in 3D from orbit.\",points:[{value:\"Our own mission\",label:\"Designed, built and flown by Spiral Blue\"},{value:\"Lidar from orbit\",label:\"3D measurements, not flat images\"},{value:\"Data, not hardware\",label:\"Access the results through our data and GIS\"}],primaryText:\"Follow the mission\",scrollTo:\"register\",secondaryText:\"Earth & Climate Intelligence\",secondaryLink:\"/earth-intelligence\"};addPropertyControls(TealHero,heroControls);/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export function TealContact(p){return /*#__PURE__*/_jsx(Contact,{...p});}TealContact.defaultProps={...contactBase,eyebrow:\"Get involved\",title:\"Interested in Teal data?\",text:\"Teal is Spiral Blue's own satellite. If you'd like early access to its data, or to partner on the mission, we'd love to hear from you.\",audiences:\"Government, Insurance, Carbon & forestry, Infrastructure, Research\",primaryText:\"Talk to us\",secondaryText:\"\"};addPropertyControls(TealContact,contactControls);/* ================= GIS ================= *//**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export function GISHero(p){return /*#__PURE__*/_jsx(Hero,{...p});}GISHero.defaultProps={...heroBase,mediaType:\"scan\",overlay:.6,label:\"3D geospatial data\",status:\"Coming soon\",title:\"GIS\",description:\"Turns lidar point clouds into maps and measurements your team can use, in the tools you already work with.\",points:[{value:\"From points to answers\",label:\"Lidar point clouds turned into usable layers\"},{value:\"Measure in 3D\",label:\"Heights, volumes and change over time\"},{value:\"Fits your workflow\",label:\"Delivered for the GIS tools your team uses\"}],primaryText:\"Register interest\",scrollTo:\"register\",secondaryText:\"\",secondaryLink:\"\"};addPropertyControls(GISHero,heroControls);/**\n * @framerSupportedLayoutWidth any\n * @framerSupportedLayoutHeight auto\n */export function GISContact(p){return /*#__PURE__*/_jsx(Contact,{...p});}GISContact.defaultProps={...contactBase,eyebrow:\"Register interest\",title:\"Want early access?\",text:\"GIS is coming soon. Tell us what you'd like to measure and we'll keep you updated as it develops.\",audiences:\"Government, Insurance, Carbon & forestry, Infrastructure, Research\",primaryText:\"Register interest\",secondaryText:\"\"};addPropertyControls(GISContact,contactControls);\nexport const __FramerMetadata__ = {\"exports\":{\"TealHero\":{\"type\":\"reactComponent\",\"name\":\"TealHero\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\"}},\"GISHero\":{\"type\":\"reactComponent\",\"name\":\"GISHero\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"auto\"}},\"TealContact\":{\"type\":\"reactComponent\",\"name\":\"TealContact\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"GISContact\":{\"type\":\"reactComponent\",\"name\":\"GISContact\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"any\"}},\"SapphireHero\":{\"type\":\"reactComponent\",\"name\":\"SapphireHero\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerSupportedLayoutHeight\":\"auto\",\"framerContractVersion\":\"1\"}},\"SapphireContact\":{\"type\":\"reactComponent\",\"name\":\"SapphireContact\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CommingSoon.map"],"mappings":"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"}