PageSourceSearch

https://ssicevs.com/assets/ContactIsolated-DP4UWWNX.js

js ssicevs.com collected 2026-10-08 04:50:37 UTC 6,606 bytes, 1 lines download raw bytes

1import{r as o,j as t}from"./metal-fx-C6GZ_SKA.js";import{fj as _,fo as E,dc as A,cg as R,aG as I,c as $,eT as P,eN as T,ey as z,eU as O,f3 as B,fa as v,aV as D}from"./index-D1yBc__G.js";import{C as F}from"./ContactForm-7E2MVUQw.js";import{j as M,R as W,D as q}from"./dotm-square-4-B8-cbXWR.js";const y="15min",U="savva-sicevs-ajw0sn/15min",u="1rem",c="[email protected]",X=[{label:c,href:`mailto:${c}`,Icon:T},{label:"LinkedIn",href:"https://www.linkedin.com/in/savvasicevsdesign/",Icon:z},{label:"X",href:"https://x.com/savvasicevs",Icon:O},{label:"GitHub",href:"https://github.com/savvasicevs",Icon:B}],G={audit:"Product review (from $1,000)",engagement:"Design project (from $3,000)",partner:"Ongoing support (from $5,000/month)"};function j(){const m=_(),[x]=E(),i=x.get("plan")??void 0,w=i?G[i]:void 0,h=o.useRef(null),[k,p]=o.useState(!1),[N,S]=o.useState(!1),[r,C]=o.useState(x.get("tab")==="message"?"message":"call"),g=o.useRef(null),b=o.useRef({call:null,message:null}),d=o.useRef(!1);return o.useLayoutEffect(()=>{var n;const e=g.current;if(!e)return;const a=f=>{const l=b.current[r];if(l)if(f)e.style.transform=`translateX(${l.offsetLeft}px)`,e.style.width=`${l.offsetWidth}px`;else{const L=e.style.transition;e.style.transition="none",e.style.transform=`translateX(${l.offsetLeft}px)`,e.style.width=`${l.offsetWidth}px`,e.offsetWidth,e.style.transition=L}};a(d.current),d.current||(n=document.fonts)==null||n.ready.then(()=>a(!1)),d.current=!0;const s=()=>a(!1);return window.addEventListener("resize",s),()=>window.removeEventListener("resize",s)},[r]),o.useEffect(()=>{const e=h.current;if(!e)return;const a=()=>{e.querySelectorAll("iframe").forEach(n=>{n.getAttribute("scrolling")!=="no"&&n.setAttribute("scrolling","no")})};a();const s=new MutationObserver(a);return s.observe(e,{childList:!0,subtree:!0}),()=>s.disconnect()},[]),o.useEffect(()=>{let e;const a=()=>{v("booking_completed"),m("/cal-thankyou")},s=()=>p(!0),n=()=>{p(!0),S(!0)};(async()=>(e=await M({namespace:y}),e("ui",{theme:"dark",hideEventTypeDetails:!0,layout:"month_view",cssVarsPerTheme:{dark:{"cal-brand":"#ffffff","cal-bg":"#000000","cal-bg-emphasis":"#000000","cal-bg-subtle":"#000000","cal-bg-muted":"#000000","cal-border":"rgba(255,255,255,0.14)","cal-border-subtle":"rgba(255,255,255,0.08)","cal-border-emphasis":"rgba(255,255,255,0.24)","cal-text":"#ffffff","cal-text-emphasis":"#ffffff","cal-text-subtle":"rgba(255,255,255,0.6)","cal-text-muted":"rgba(255,255,255,0.45)","cal-radius":u,"cal-radius-md":u,"cal-radius-lg":u},light:{"cal-brand":"#ffffff"}}}),e("on",{action:"bookingSuccessful",callback:a}),e("on",{action:"linkReady",callback:s}),e("on",{action:"linkFailed",callback:n})))();const f=window.setTimeout(s,8e3);return()=>{window.clearTimeout(f),e==null||e("off",{action:"bookingSuccessful",callback:a}),e==null||e("off",{action:"linkReady",callback:s}),e==null||e("off",{action:"linkFailed",callback:n})}},[m]),t.jsxs("div",{className:"relative min-h-screen bg-background",children:[t.jsx(A,{title:"Book a 15-Minute Project Discovery Call · Savva Sicevs",description:"Book a 15-minute call with Savva Sicevs to align on your AI product or dashboard, agent UI patterns, readability audits, or design system requirements.",path:"/contact"}),t.jsxs("div",{className:"relative z-10",children:[t.jsx(R,{}),t.jsxs("main",{"aria-label":"Book a discovery call",className:"flex min-h-screen flex-col px-5 pt-[180px] pb-10 sm:px-8 md:px-12",children:[t.jsx("h1",{className:"sr-only",children:"Book a 15-minute project discovery call with Savva Sicevs"}),t.jsxs("div",{className:"mx-auto w-full max-w-5xl",children:[t.jsx("p",{className:"mx-auto mb-8 max-w-[520px] text-center text-[16px] leading-[1.55] font-medium text-foreground/60",children:"Show me the part of your product that’s getting hard to use. We’ll talk through the problem and whether I can help."}),t.jsxs("div",{className:"t-tabs relative mx-auto mb-10 flex w-fit items-center gap-1 rounded-full p-1",children:[t.jsx("span",{ref:g,"aria-hidden":!0,className:"t-tabs-pill",style:I}),["call","message"].map(e=>t.jsx("button",{ref:a=>{b.current[e]=a},type:"button",onClick:()=>C(e),"aria-pressed":r===e,className:`t-tab rounded-full px-5 py-2.5 font-display text-[14px] font-semibold ${r===e?"text-foreground":"text-foreground
1/50 hover:text-foreground/80"}`,children:e==="call"?"Book a call":"Send a message"},e))]}),t.jsx("div",{className:r==="call"?"":"hidden",children:t.jsxs("div",{ref:h,className:"relative -mx-5 overflow-hidden sm:mx-0",children:[t.jsx(W,{namespace:y,calLink:U,style:{width:"100%",height:"100%",minHeight:"640px",overflow:"hidden"},config:{layout:"month_view",theme:"dark",...i?{notes:`Interested in: ${w??i}`}:{}}}),t.jsx($,{children:!k&&t.jsxs(P.div,{initial:{opacity:1},exit:{opacity:0},transition:{duration:.45,ease:"easeOut"},className:"pointer-events-none absolute inset-0 z-10 flex flex-col items-center justify-center gap-4 bg-background",children:[t.jsx(q,{size:30,className:"text-foreground"}),t.jsx("span",{className:"label text-faint",children:"Loading availability"})]},"cal-loader")}),N&&t.jsxs("div",{className:"absolute inset-0 z-20 flex flex-col items-center justify-center gap-3 bg-background px-6 text-center",children:[t.jsx("p",{className:"label text-faint",children:"Couldn’t load the calendar"}),t.jsxs("p",{className:"text-sm text-muted",children:["Email me at"," ",t.jsx("a",{href:`mailto:${c}`,className:"text-foreground underline-offset-2 hover:underline",children:c})]})]})]})}),r==="message"&&t.jsx(F,{})]}),t.jsx("div",{className:"mx-auto mt-auto flex w-full max-w-2xl flex-col gap-3 pt-16 sm:flex-row sm:flex-wrap sm:justify-center",children:X.map(({label:e,href:a,Icon:s})=>{const n=a.startsWith("http");return t.jsxs("a",{href:a,target:n?"_blank":void 0,rel:n?"noreferrer":void 0,onClick:()=>v("contact_click",{method:e}),"aria-label":a.startsWith("mailto:")?"Email me":`Contact via ${e}`,className:"group inline-flex w-full items-center justify-center gap-2.5 rounded-full bg-transparent px-5 py-3 transition-colors hover:bg-foreground
1/[0.04] sm:w-auto",children:[t.jsx(s,{size:20,weight:"fill",className:"text-faint transition-colors group-hover:text-foreground"}),t.jsx("span",{className:"text-sm font-medium text-foreground/80 transition-colors group-hover:text-foreground",children:e})]},e)})})]}),t.jsx(D,{hideCta:!0,hidePortrait:!0})]})]})}const Y=Object.freeze(Object.defineProperty({__proto__:null,default:j},Symbol.toStringTag,{value:"Module"})),J=Object.freeze(Object.defineProperty({__proto__:null,default:j},Symbol.toStringTag,{value:"Module"}));export{Y as C,J as a};

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.