1import{r as u,j as e}from"./index-qTe1CkDf.js";import{S as b}from"./SiteShell-DeSzKZ-z.js";import{P as g}from"./PixelHero-KGPsGeZQ.js";import{P as j}from"./PixelCluster-BH32a46K.js";import{a as y,c as v}from"./cio-DZDwGAAX.js";import{o as w,s as l}from"./schemas-D-CVpMp7.js";const N="/assets/connect-hero-Dvlp1Sny.png",k=w({name:l().trim().min(1,"Name is required").max(120),company:l().trim().min(1,"Company is required").max(160),email:l().trim().email("Enter a valid email").max(255),phone:l().trim().max(40).optional(),message:l().trim().min(20,"Please give us at least 20 characters").max(2e3)});function F(){const[s,r]=u.useState("idle"),[a,o]=u.useState({});async function m(n){n.preventDefault();const p=n.currentTarget,x=new FormData(p),h=k.safeParse(Object.fromEntries(x.entries()));if(!h.success){const t={};for(const i of h.error.issues)t[String(i.path[0])]=i.message;o(t),r("error");return}o({}),r("submitting");try{const t=h.data,i=await fetch("/api/public/connect-submit",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t.name,company:t.company,email:t.email,phone:t.phone??"",message:t.message,website:x.get("website")??""})});if(!i.ok){const f=await i.json().catch(()=>null);throw new Error(f?.error??"submit failed")}y({id:t.email.toLowerCase(),email:t.email.toLowerCase(),first_name:t.name.split(" ")[0]??"",last_name:t.name.split(" ").slice(1).join(" "),name:t.name,company:t.company,phone:t.phone??"",source:"stitchtech_connect_form",created_at:Math.floor(Date.now()/1e3)}),v("connect_form_submitted",{company:t.company,message_length:t.message.length}),r("ok"),p.reset()}catch{r("error")}}return e.jsxs(b,{accent:"lavender",hidePreFooter:!0,children:[e.jsxs(g,{eyebrow:"Connect",notch:"br",graphic:e.jsxs("div",{className:"relative w-full max-w-[560px] aspect-[4/5]",children:[e.jsx("svg",{className:"absolute inset-0 w-full h-full pointer-events-none",viewBox:"0 0 400 500",fill:"none","aria-hidden":"true",preserveAspectRatio:"xMidYMid slice",style:{maskImage:"radial-gradient(ellipse 60% 55% at 55% 70%, #000 65%, transparent 100%)",WebkitMaskImage:"radial-gradient(ellipse 60% 55% at 55% 70%, #000 65%, transparent 100%)"},children:[55,105,160,220,285,355,425].map(n=>e.jsx("circle",{cx:"200",cy:"320",r:n,stroke:"#ffffff",strokeOpacity:"0.9",strokeWidth:"1.25",strokeDasharray:"4 7"},n))}),e.jsx("img",{src:N,alt:"","aria-hidden":"true",width:800,height:1024,className:"relative w-full h-full object-contain object-bottom scale-110 origin-bottom",style:{maskImage:"radial-gradient(ellipse 75% 80% at 55% 60%, #000 55%, transparent 92%)",WebkitMaskImage:"radial-gradient(ellipse 75% 80% at 55% 60%, #000 55%, transparent 92%)"}})]}),children:[e.jsx("h1",{className:"font-display mb-6 text-left",style:{fontSize:"clamp(2rem, 4.2vw, 3.25rem)",lineHeight:1.05,letterSpacing:"-0.02em",fontWeight:500},children:"Let's connect the dots."}),e.jsx("p",{className:"text-[0.95rem] md:text-base leading-snug text-[#1a1a1a]/80 mb-6",children:"Tell us about the brief, the platform, the audience, or the metric you have stopped trusting. We will come back fast, and we will come back with a point of view."})]}),e.jsx("section",{className:"container-x py-24 md:py-32",children:e.jsxs("div",{className:"grid gap-16 lg:grid-cols-2",children:[e.jsxs("form",{onSubmit:m,noValidate:!0,className:"space-y-6",children:[e.jsx("input",{type:"text",name:"website",tabIndex:-1,autoComplete:"off","aria-hidden":"true",style:{position:"absolute",left:"-10000px",width:0,height:0,opacity:0}}),e.jsx("p",{className:"text-body-lg text-[color:var(--foreground)]/85 max-w-xl",children:"A few details and we will route the conversation to the right person. Discovery sessions are obligation-free and usually take thirty minutes."}),s==="ok"&&e.jsx("p",{className:"rounded-xl border border-[color:var(--accent)] p-4 text-[color:var(--accent)]",children:"Thanks. We will come back fast, usually within one business day."}),s==="error"&&Object.keys(a).length===0&&e.jsx("p",{className:"rounded-xl border border-[color:var(--accent)] p-4 text-[color:var(--accent)]",children:"Something went wrong. Email us directly at [email protected]."}),e.jsx(d,{label:"Name",name:"name",required:!0,error:a.name}),e.jsx(d,{label:"Company",name:"company",required:!0,error:a.company}
1),e.jsx(d,{label:"Email",name:"email",type:"email",required:!0,error:a.email}),e.jsx(d,{label:"Phone (optional)",name:"phone",error:a.phone}),e.jsxs("div",{children:[e.jsx("label",{htmlFor:"message",className:"block text-xs uppercase tracking-[0.2em] text-[color:var(--muted-foreground)] mb-2",children:"Tell us about your project *"}),e.jsx("textarea",{id:"message",name:"message",required:!0,rows:5,className:"w-full bg-transparent border-b border-[color:var(--border)] focus:border-[color:var(--accent)] outline-none py-2 text-[color:var(--foreground)]"}),a.message&&e.jsx("p",{className:"mt-1 text-sm text-[color:var(--accent)]",children:a.message})]}),e.jsx("button",{type:"submit",disabled:s==="submitting",className:"inline-flex items-center gap-3 rounded-full px-6 py-3 font-medium bg-[color:var(--accent)] text-[#1a1a1a] hover:-translate-y-0.5 transition-transform disabled:opacity-60 disabled:cursor-not-allowed disabled:hover:translate-y-0",children:s==="submitting"?"Sendingâ¦":e.jsxs(e.Fragment,{children:["Send ",e.jsx("span",{"aria-hidden":!0,children:"â"})]})}),e.jsxs("ul",{className:"mt-10 pt-8 border-t border-[color:var(--border)] space-y-3 text-sm text-[color:var(--muted-foreground)]",children:[e.jsx("li",{children:"Supreme Award, TVNZ-NZ Marketing Awards 2022"}),e.jsx("li",{children:"2x Gold Effies, Aotearoa Effie Awards 2022"}),e.jsx("li",{children:"Global Effie Finalist, 2023"}),e.jsx("li",{children:"Industry roles: Chair MA NZ Digital SIG, IAB NZ AI Working Group lead, IMANZ founding member"})]})]}),e.jsxs("div",{className:"space-y-10",children:[e.jsx(j,{variant:1,size:120,fill:"var(--accent)"}),e.jsxs(c,{title:"Office",children:[e.jsx("p",{children:"Ground Floor, 295 Parnell Road"}),e.jsx("p",{children:"Parnell, Auckland 1052"}),e.jsx("p",{children:"New Zealand"})]}),e.jsx(c,{title:"Email",children:e.jsx("a",{href:"mailto:[email protected]",className:"hover:text-[color:var(--accent)]",children:"[email protected]"})}),e.jsx(c,{title:"Phone",children:e.jsx("a",{href:"tel:+64275130110",className:"hover:text-[color:var(--accent)]",children:"+64 27 513 0110"})}),e.jsx(c,{title:"Hours",children:e.jsx("p",{children:"Monday to Friday, 9am to 6pm NZT"})}),e.jsx(c,{title:"LinkedIn",children:e.jsx("a",{href:"https://www.linkedin.com/company/stitchtechnology/",target:"_blank",rel:"noopener noreferrer",className:"hover:text-[color:var(--accent)]",children:"linkedin.com/company/stitchtechnology"})})]})]})})]})}function d({label:s,name:r,type:a="text",required:o,error:m}){return e.jsxs("div",{children:[e.jsxs("label",{htmlFor:r,className:"block text-xs uppercase tracking-[0.2em] text-[color:var(--muted-foreground)] mb-2",children:[s,o&&" *"]}),e.jsx("input",{id:r,name:r,type:a,required:o,className:"w-full bg-transparent border-b border-[color:var(--border)] focus:border-[color:var(--accent)] outline-none py-2 text-[color:var(--foreground)]"}),m&&e.jsx("p",{className:"mt-1 text-sm text-[color:var(--accent)]",children:m})]})}function c({title:s,children:r}){return e.jsxs("div",{children:[e.jsx("p",{className:"text-xs uppercase tracking-[0.2em] text-[color:var(--muted-foreground)] mb-2",children:s}),e.jsx("div",{className:"text-base md:text-body-lg text-[color:var(--foreground)]/90 space-y-1",children:r})]})}export{F as component};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.