1import{a0 as O,p as D,u as W,U as K,Y as $,c as i,b as S,a as e,C as q,T as J,F as T,t as P,f as Q,r as u,o as r,A as Y,q as n,I as X,J as g,i as v,K as V,z,x as m,L as Z,a2 as ee,y as te,E as se,D as ne,$ as ae,_ as le}from"./DVhzBP7E.js";import{u as oe}from"./C451jUf2.js";import"./B5bxvvUv.js";const ie=O("/img/contact-masthead.jpg"),re={class:"contact-page min-h-screen"},ce={class:"relative z-10 max-w-[1080px] mx-auto px-6 sm:px-8 -mt-10 sm:-mt-16 lg:-mt-24 pb-24 sm:pb-32"},de={class:"grid grid-cols-1 lg:grid-cols-12 gap-8 lg:gap-12 items-start"},ue={class:"lg:col-span-7"},pe=["disabled"],me=["disabled"],he={class:"grid grid-cols-1 sm:grid-cols-2 gap-6"},fe=["disabled"],ge={class:"contact-select-wrap"},ve=["disabled"],be=["value"],xe=["disabled"],we={class:"contact-optin"},ye=["disabled"],ke={key:0,class:"text-[13px] text-rose-600"},_e={class:"pt-2 flex flex-col sm:flex-row sm:items-center gap-4"},Ce=["disabled"],Me={key:0},Se={key:1,class:"inline-flex items-center gap-2"},Te={key:"success",class:"contact-form-panel"},Pe={class:"mt-8"},Ve={class:"lg:col-span-5"},ze={class:"contact-info"},Le={class:"contact-info-block"},Be={class:"space-y-5"},je={class:"text-[13px] font-bold text-stripe-gray-900"},qe=["href"],Ee=["href"],Ue={class:"contact-info-block"},Ge={class:"space-y-5"},Ie={class:"text-[13px] font-bold text-stripe-gray-900"},Re=["href"],He={class:"contact-info-block contact-info-block--last"},Fe={class:"flex items-center gap-3"},Ae=["href","aria-label"],Ne={viewBox:"0 0 24 24",class:"w-[18px] h-[18px]",fill:"currentColor","aria-hidden":"true"},Oe=["d"],De=D({__name:"index",setup(We){const E=W(),{trackLead:U}=ae();oe({title:"Contact Us",description:"Get in touch with Global Vacation Rentals for booking help, property management inquiries, press, and partnership requests.",path:"/contact/"});const L=["General Inquiry","Booking Question","Property Management","Travel Agent / Tour Operator","Press / Partnership","Other"],G=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,w=u(""),y=u(""),k=u(""),b=u("General Inquiry"),_=u(""),C=u(!1),c=u(!1),B=u(!1),d=u(""),j=Q().public.turnstile?.siteKey||"",M=u();let p=null,h=null,x=null;function I(){return window.turnstile?Promise.resolve():new Promise((a,t)=>{const o=document.querySelector('script[src*="challenges.cloudflare.com/turnstile"]');if(o){o.addEventListener("load",()=>a(),{once:!0}),o.addEventListener("error",t,{once:!0});return}const l=document.createElement("script");l.src="https://challenges.cloudflare.com/turnstile/v0/api.js?render=explicit",l.async=!0,l.defer=!0,l.onload=()=>a(),l.onerror=t,document.head.appendChild(l)})}K(async()=>{if(!(!j||!M.value))try{if(await I(),!window.turnstile||!M.value)return;p=window.turnstile.render(M.value,{sitekey:j,callback:a=>{h?.(a),h=null,x=null},"error-callback":()=>{x?.(new Error("verification-failed")),h=null,x=null},"expired-callback":()=>{}})}catch{}}),$(()=>{if(p&&window.turnstile)try{window.turnstile.remove(p)}catch{}p=null});function R(){return new Promise((a,t)=>{if(!window.turnstile||!p){t(new Error("not-ready"));return}h=a,x=t,window.turnstile.reset(p),window.turnstile.execute(p),setTimeout(()=>{h===a&&(h=null,x=null,t(new Error("timeout")))},12e3)})}async function H(){d.value="";const a=w.value.trim(),t=y.value.trim(),o=k.value.trim(),l=_.value.trim();if(!a){d.value="Please enter your name.";return}if(!G.test(t)||t.length>254){d.value="Please enter a valid email address.";return}if(o&&(o.length<7||o.length>40)){d.value="Please enter a valid phone number (or leave it blank).";return}if(!L.includes(b.value)){d.value="Please choose a subject.";return}if(l.length<5||l.length>2e3){d.value="Please enter a message between 5 and 2000 characters.";return}c.value=!0;try{const f=await R().catch(()=>"");if(!f){d.value="Verification failed. Please refresh the page and try again.";return}await $fetch("/api/leads/contact",{method:"POST",body:{name:a,email:t,phone:o,subject:b.value,message:l,page:E.fullPath,turnstileToken:f,marketingOptIn:C.value}}),B.value=!0,U({source:"contact",email:t,phone:o||void 0,name:a})}catch(f){const s=f;d.value=s?.data?.message||s?.message||"Something went wrong. Please try again."}finally{c.value=!1}}const F=[{label:"Orlando",address:`12601 Avalon Road 2Winter Garden, FL 34787`,href:"https://g.co/kgs/pDbrzvb"},{label:"Southwest Florida",address:`307 Taylor St 3Punta Gorda, FL 33950`,href:"https://www.google.com/maps/search/?api=1&query=307+Taylor+St+Punta+Gorda+FL+33950"}],A=[{label:"Guest & Booking",email:{value:"[email protected]",href:"mailto:[email protected]"},phone:{value:"(407) 387-3030",href:"tel:+14073873030"}},{label:"Property Management",email:{value:"[email protected]",href:"mailto:[email protected]"},phone:{value:"(321) 250-6414",href:"tel:+13212506414"}}],N=[{label:"Instagram",href:"https://www.instagram.com/staygvr",path:"M12 2.163c3.204 0 3.584.012 4.85.07 3.252.148 4.771 1.691 4.919 4.919.058 1.265.069 1.645.069 4.849 0 3.205-.012 3.584-.069 4.849-.149 3.225-1.664 4.771-4.919 4.919-1.266.058-1.644.07-4.85.07-3.204 0-3.584-.012-4.849-.07-3.26-.149-4.771-1.699-4.919-4.92-.058-1.265-.07-1.644-.07-4.849 0-3.204.013-3.583.07-4.849.149-3.227 1.664-4.771 4.919-4.919 1.266-.057 1.645-.069 4.849-.069zM12 0C8.741 0 8.333.014 7.053.072 2.695.272.273 2.69.073 7.052.014 8.333 0 8.741 0 12c0 3.259.014 3.668.072 4.948.2 4.358 2.618 6.78 6.98 6.98C8.333 23.986 8.741 24 12 24c3.259 0 3.668-.014 4.948-.072 4.354-.2 6.782-2.618 6.979-6.98.059-1.28.073-1.689.073-4.948 0-3.259-.014-3.667-.072-4.947-.196-4.354-2.617-6.78-6.979-6.98C15.668.014 15.259 0 12 0zm0 5.838a6.162 6.162 0 100 12.324 6.162 6.162 0 000-12.324zM12 16a4 4 0 110-8 4 4 0 010 8zm6.406-11.845a1.44 1.44 0 100 2.881 1.44 1.44 0 000-2.881z"},{label:"Facebook",href:"https://facebook.com/StayGVR",path:"M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"},{label:"X",href:"https://x.com/staygvr/",path:"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"},{label:"LinkedIn",href:"https://www.linkedin.com/company/globalvacationrentals/",path:"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 01-2.063-2.065 2.064 2.064 0 112.063 2.065zm1.782 13.019H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"}];return(a,t)=>{const o=Y,l=se,f=ne;return r(),i("div",re,[S(o,{variant:"page"}),t[22]||(t[22]=e("section",{class:"contact-hero relative min-h-[520px] sm:min-h-[600px] lg:min-h-[650px] overflow-hidden"},[e("img",{src:ie,alt:"",class:"absolute inset-0 h-full w-full object-cover object-center",width:"2390",height:"1792",loading:"eager",fetchpriority:"high","aria-hidden":"true"}),e("div",{class:"absolute inset-0 bg-gradient-to-r from-[#071f34]/80 via-[#071f34]/45 to-[#071f34]/20"}),e("div",{class:"absolute inset-x-0 bottom-0 h-72 sm:h-80 bg-gradient-to-b from-transparent via-[#0f1012]/70 to-[#0f1012]"}),e("div",{class:"relative z-10 max-w-[1080px] mx-auto px-6 sm:px-8 min-h-[520px] sm:min-h-[600px] lg:min-h-[650px] flex items-center"},[e("div",{class:"max-w-2xl pt-14 sm:pt-10 pb-20"},[e("p",{class:"text-[11px] sm:text-xs font-bold uppercase tracking-[0.18em] text-white/75"},"Contact"),e("h1",{class:"mt-4 contact-display text-[48px] sm:text-[68px] lg:text-[82px] leading-[1.02]"}," Get in touch. "),e("p",{class:"mt-6 max-w-xl text-[18px] sm:text-[21px] text-white/90 leading-relaxed"}," Questions about a stay, a property, or a partnership? Send a note and the right team will reply within one business day. ")])])],-1)),e("section",ce,[e("div",de,[e("div",ue,[S(J,{name:"fade",mode:"out-in"},{default:q(()=>[n(B)?(r(),i("div",Te,[t[16]||(t[16]=e("div",{class:"w-14 h-14 roun
3ded-full bg-accent-500 text-white flex items-center justify-center mb-6"},[e("svg",{viewBox:"0 0 24 24",class:"w-6 h-6",fill:"none",stroke:"currentColor","stroke-width":"2.5","stroke-linecap":"round","stroke-linejoin":"round"},[e("polyline",{points:"20 6 9 17 4 12"})])],-1)),t[17]||(t[17]=e("h2",{class:"contact-display text-[32px] sm:text-[40px] leading-[1.1]"}," Thanks, we've got it. ",-1)),t[18]||(t[18]=e("p",{class:"mt-4 text-[17px] sm:text-[18px] text-stripe-gray-500 max-w-md leading-relaxed"}," We'll reply within one business day. In the meantime, feel free to keep exploring. ",-1)),e("div",Pe,[S(l,{to:"/listings/",class:"contact-quiet-link"},{default:q(()=>[...t[15]||(t[15]=[z(" Browse properties ",-1),e("svg",{viewBox:"0 0 16 16",class:"w-3.5 h-3.5",fill:"none",stroke:"currentColor","stroke-width":"1.75"},[e("path",{d:"M6 4l4 4-4 4","stroke-linecap":"round","stroke-linejoin":"round"})],-1)])]),_:1})])])):(r(),i("form",{key:"form",class:"contact-form-panel space-y-6",novalidate:"",onSubmit:X(H,["prevent"])},[e("div",null,[t[6]||(t[6]=e("label",{for:"contact-name",class:"contact-label"},"Name",-1)),g(e("input",{id:"contact-name","onUpdate:modelValue":t[0]||(t[0]=s=>v(w)?w.value=s:null),type:"text",autocomplete:"name",required:"",maxlength:"200",disabled:n(c),class:"contact-input",placeholder:"Your full name"},null,8,pe),[[V,n(w)]])]),e("div",null,[t[7]||(t[7]=e("label",{for:"contact-email",class:"contact-label"},"Email",-1)),g(e("input",{id:"contact-email","onUpdate:modelValue":t[1]||(t[1]=s=>v(y)?y.value=s:null),type:"email",autocomplete:"email",required:"",maxlength:"254",disabled:n(c),class:"contact-input",placeholder:"[email protected]"},null,8,me),[[V,n(y)]])]),e("div",he,[e("div",null,[t[8]||(t[8]=e("label",{for:"contact-phone",class:"contact-label"},[z(" Phone "),e("span",{class:"text-stripe-gray-500 font-normal normal-case tracking-normal ml-1"},"(optional)")],-1)),g(e("input",{id:"contact-phone","onUpdate:modelValue":t[2]||(t[2]=s=>v(k)?k.value=s:null),type:"tel",autocomplete:"tel",maxlength:"40",disabled:n(c),class:"contact-input",placeholder:"(555) 555-5555"},null,8,fe),[[V,n(k)]])]),e("div",null,[t[10]||(t[10]=e("label",{for:"contact-subject",class:"contact-label"},"Subject",-1)),e("div",ge,[g(e("select",{id:"contact-subject","onUpdate:modelValue":t[3]||(t[3]=s=>v(b)?b.value=s:null),required:"",disabled:n(c),class:"contact-input contact-select"},[(r(),i(T,null,P(L,s=>e("option",{key:s,value:s},m(s),9,be)),64))],8,ve),[[Z,n(b)]]),t[9]||(t[9]=e("svg",{class:"contact-select-chevron",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true"},[e("path",{d:"M4 6l4 4 4-4",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})],-1))])])]),e("div",null,[t[11]||(t[11]=e("label",{for:"contact-message",class:"contact-label"},"Message",-1)),g(e("textarea",{id:"contact-message","onUpdate:modelValue":t[4]||(t[4]=s=>v(_)?_.value=s:null),required:"",rows:"6",maxlength:"2000",disabled:n(c),class:"contact-input resize-y min-h-[160px]",placeholder:"Tell us a little about what you're after."},null,8,xe),[[V,n(_)]])]),e("label",we,[g(e("input",{"onUpdate:modelValue":t[5]||(t[5]=s=>v(C)?C.value=s:null),type:"checkbox",disabled:n(c),class:"contact-optin-checkbox"},null,8,ye),[[ee,n(C)]]),t[12]||(t[12]=e("span",{class:"contact-optin-text"}," Send me occasional trip ideas, seasonal deals, and travel tips from the GVR team. Unsubscribe anytime. ",-1))]),e("div",{ref_key:"turnstileMount",ref:M},null,512),n(d)?(r(),i("p",ke,m(n(d)),1)):te("",!0),e("div",_e,[e("button",{type:"submit",disabled:n(c),class:"gvr-cta contact-submit"},[n(c)?(r(),i("span",Se,[...t[13]||(t[13]=[e("svg",{class:"w-4 h-4 animate-spin",viewBox:"0 0 24 24",fill:"none"},[e("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"3",class:"opacity-25"}),e("path",{d:"M4 12a8 8 0 018-8",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round"})],-1),z(" Sending⦠",-1)])])):(r(),i("span",Me,"Send message"))],8,Ce),t[14]||(t[14]=e("p",{class:"text-[12.5px] text-stripe-gray-500"}," We'll reply within one business day. ",-1))])],32))]),_:1})]),e("aside",Ve,[e("div",ze,[e("div",Le,[t[19]||(t[19]=e("p",{class:"contact-info-eyebrow"},"Talk to us",-1)),e("div",Be,[(r(),i(T,null,P(A,s=>e("div",{key:s.label},[e("p",je,m(s.label),1),e("a",{href:s.email.href,class:"contact-info-link block mt-1"},m(s.email.value),9,qe),e("a",{href:s.phone.href,class:"contact-info-link contact-info-link--muted block mt-0.5"},m(s.phone.value),9,Ee)])),64))])]),e("div",Ue,[t[20]||(t[20]=e("p",{class:"contact-info-eyebrow"},"Visit us",-1)),e("div",Ge,[(r(),i(T,null,P(F,s=>e("div",{key:s.label},[e("p",Ie,m(s.label),1),e("a",{href:s.href,target:"_blank",rel:"noopener noreferrer",class:"contact-info-link block mt-1 whitespace-pre-line"},m(s.address),9,Re)])),64))])]),e("div",He,[t[21]||(t[21]=e("p",{class:"contact-info-eyebrow"},"Follow us",-1)),e("ul",Fe,[(r(),i(T,null,P(N,s=>e("li",{key:s.label},[e("a",{href:s.href,target:"_blank",rel:"noopener noreferrer","aria-label":s.label,class:"contact-social"},[(r(),i("svg",Ne,[e("path",{d:s.path},null,8,Oe)]))],8,Ae)])),64))])])])])])]),S(f)])}}}),Ye=le(De,[["__scopeId","data-v-ded075e1"]]);export{Ye as default};
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.