import{u as H,s as N,j as e,N as L,r as m,b as B,c as l,S as w,d as q,P as x,e as h,f as y,g as I,F as Q,A as S,R as g,h as k,L as C,M as T,C as O}from"./index-D-pl_72i.js";import{B as A}from"./Breadcrumb-ScqZT-gn.js";import{Q as p}from"./QuickContactForm-Rw1sr2sd.js";import{M as U}from"./MobileStickyBar-wwfYQOyp.js";import{s as z}from"./serviceAreaCombos-CHRZ7ft7.js";import"./file-text-CkYKoPR6.js";const W={"garage-door-spring-repair":"Torsion and extension spring replacement across Metro Orlando. Same-day service, free on-site estimates, 7 days a week.","garage-door-opener-repair":"Opener diagnostics, repair, and new installations for all major brands. Same-day service across Metro Orlando.","garage-door-off-track":"Off-track garage door repair for homes across Metro Orlando. We realign and restore your door the same day.","garage-door-installation":"New garage door installation and replacement across Metro Orlando. Hurricane-rated options available. Free on-site estimates.","garage-door-cable-repair":"Cable repair and replacement for garage doors across Metro Orlando. Same-day service, 7 days a week.","garage-door-maintenance":"Preventive maintenance and tune-ups for garage doors across Metro Orlando. Keep your door running smooth and extend its life.","emergency-garage-door-repair":"Emergency garage door repair across Metro Orlando. Available 24/7 with fast response times."};function X(){var u;const{serviceSlug:F}=H(),s=N.find(t=>t.slug===F);if(!s)return e.jsx(L,{to:"/404",replace:!0});const E=s.content.introParagraph!==null,c=s.slug==="emergency-garage-door-repair",b=[{label:"Home",path:"/"},{label:"Services",path:"/services"},{label:s.name}],j=m.filter(t=>t.service===s.slug).slice(0,2),n=j.length>0?j:m.slice(0,2),o=n[0]||m[0],f=s.relatedServices.map(t=>N.find(i=>i.slug===t)).filter(Boolean),v=s.relevantAreas.map(t=>B.find(i=>i.slug===t)).filter(Boolean),R=z.filter(t=>t.serviceSlug===s.slug).map(t=>t.areaSlug),M={"@context":"https://schema.org","@type":"Service",name:s.name,provider:{"@type":"HomeAndConstructionBusiness",name:l.companyName,telephone:l.phone},areaServed:{"@type":"City",name:"Orlando",addressRegion:"FL"},description:s.content.metaDescription},$=W[s.slug]||`Professional ${s.name.toLowerCase()} across Metro Orlando. Free on-site estimates, 7 days a week.`,P=c?"linear-gradient(to right, rgba(120,20,20,0.75) 0%, rgba(30,58,95,0.65) 50%, rgba(30,58,95,0.5) 100%)":"linear-gradient(to right, rgba(30,58,95,0.88) 0%, rgba(30,58,95,0.55) 70%, rgba(30,58,95,0.4) 100%)";if(E){const t=s.content.faqs?{"@context":"https://schema.org","@type":"FAQPage",mainEntity:s.content.faqs.map(a=>({"@type":"Question",name:a.question,acceptedAnswer:{"@type":"Answer",text:a.answer}}))}:null,i=[M];return t&&i.push(t),e.jsxs(e.Fragment,{children:[e.jsx(w,{title:s.content.metaTitle,metaDescription:s.content.metaDescription,canonicalUrl:`/services/${s.slug}`,ogUrl:`/services/${s.slug}`}),e.jsx(q,{schemas:i}),e.jsx(A,{items:b}),c?e.jsx("div",{className:"bg-vivid-red text-white",children:e.jsxs("div",{className:"container-width px-4 py-2.5 flex items-center justify-center gap-2 text-sm font-semibold",children:[e.jsx(x,{className:"w-4 h-4"}),e.jsx("span",{children:"Emergency? We Are Available Right Now"}),e.jsx("span",{className:"text-white/60 hidden sm:inline",children:"—"}),e.jsxs("a",{href:l.phoneHref,className:"underline underline-offset-2 hover:text-white/90",children:["Call ",l.phone]})]})}):e.jsx("div",{className:"bg-steel-blue text-white",children:e.jsxs("div",{className:"container-width px-4 py-2.5 flex items-center justify-center gap-2 text-sm font-semibold",children:[e.jsx(h,{className:"w-4 h-4"}),e.jsx("span",{children:"Same-Day Service Available"}),e.jsx("span",{className:"text-white/60 hidden sm:inline",children:"—"}),e.jsxs("a",{href:l.phoneHref,className:"underline underline-offset-2 hover:text-white/90",children:["Call ",l.phone," for a Free On-Site Estimate"]})]})}),e.jsxs("section",{className:"relative min-h-[260px] sm:min-h-[280px] lg:min-h-[300px]",id:"hero-sentinel",children:[e.jsxs("div",{className:"absolute inset-0 overflow-hidden",children:[e.jsx("img",{src:"/images/hero.webp",alt:`${s.name} in Orlando, FL`,width:"1920",height:"1080",fetchpriority:"high",className:"w-full h-full object-cover"}),e.jsx("div",{className:"absolute inset-0",style:{background:P}})]}),e.jsxs("div",{className:"relative z-10 container-width px-4 pt-8 pb-10 lg:pt-12 lg:pb-14",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-x-5 gap-y-1 mb-4 text-xs text-white/90 font-semibold",children:[e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(y,{className:"w-3.5 h-3.5 fill-gold text-gold"}),"5-Star Yelp Rated"]}),e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(I,{className:"w-3.5 h-3.5"}),"Licensed & Insured"]}),e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(h,{className:"w-3.5 h-3.5"}),"Same-Day Service"]}),e.jsxs("span",{className:"inline-flex items-center gap-1.5",children:[e.jsx(Q,{className:"w-3.5 h-3.5"}),"Locally Owned Since 2017"]})]}),e.jsxs("div",{className:"lg:max-w-[calc(100%-22rem)]",children:[e.jsxs("h1",{className:"text-2xl sm:text-3xl md:text-4xl font-bold text-white leading-tight mb-4",children:[s.content.h1,c&&e.jsx("span",{className:"ml-3 inline-block bg-vivid-red text-white text-xs font-bold px-2.5 py-1 rounded-full align-middle animate-pulse",children:"24/7"})]}),e.jsx("p",{className:"text-white/80 text-base lg:text-lg leading-relaxed mb-8 max-w-xl",children:$})]}),e.jsxs("div",{className:"flex flex-col sm:flex-row gap-3",children:[e.jsxs("a",{href:l.phoneHref,className:"btn-primary text-base px-6 py-3.5",children:[e.jsx(x,{className:"w-5 h-5"}),c?"Call Now — 24/7 Emergency Line":`Call ${l.phone} — Free Estimate`]}),e.jsxs("a",{href:"#service-form",className:"btn-outline text-base px-6 py-3.5",children:["Schedule Online",e.jsx(S,{className:"w-4 h-4"})]})]})]})]}),e.jsx("section",{className:"bg-white px-4 pt-8 pb-16 lg:pb-20",children:e.jsx("div",{className:"container-width",children:e.jsxs("div",{className:"lg:flex lg:gap-10",children:[e.jsxs("div",{className:"lg:flex-1",children:[e.jsxs("div",{className:"lg:hidden bg-warm-gray rounded-xl p-4 mb-6",children:[e.jsxs("div",{className:"flex items-center justify-between mb-2",children:[e.jsx("span",{className:"font-bold text-yelp-red text-sm tracking-tight",children:"yelp"}),e.jsx("div",{className:"flex items-center gap-0.5",children:Array.from({length:5}).map((a,r)=>e.jsx(y,{className:"w-3.5 h-3.5 fill-gold text-gold"},r))})]}),e.jsxs("p",{className:"text-xs text-graphite leading-relaxed line-clamp-2",children:["“",o.quote.substring(0,120),"...”"]}),e.jsxs("span",{className:"text-xs font-semibold text-steel-blue mt-1 block",children:["— ",o.firstName," ",o.lastInitial,"."]})]}),s.content.introParagraph&&e.jsx("p",{className:"text-graphite leading-relaxed text-lg mb-6",children:s.content.introParagraph}),(u=s.content.contentSections)==null?void 0:u.map((a,r)=>e.jsxs("div",{className:"mb-8",children:[e.jsx("h2",{className:"text-xl md:text-2xl font-bold text-steel-blue mb-3",children:a.heading}),a.paragraphs?a.paragraphs.map((d,D)=>e.jsx("p",{className:"text-graphite leading-relaxed mb-4",children:d},D)):a.body&&e.jsx("p",{className:"text-graphite leading-relaxed mb-4",children:a.body})]},r)),s.content.costNote&&e.jsxs("div",{className:"bg-warm-gray border-l-4 border-l-sky-accent rounded-r-xl p-6 mb-8",children:[e.jsx("h3",{className:"font-bold text-steel-blue mb-2",children:"About Pricing"}),e.jsx("p",{className:"text-graphite leading-relaxed text-sm",children:s.content.costNote})]}),n.length>0&&e.jsxs("div",{className:"mb-8",children:[e.jsx("h3",{className:"font-bold text-steel-blue mb-4",children:"Customer Reviews"}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:n.map(a=>e.jsx(g,{review:a},a.id))})]}),e.jsx(k,{inline:!0}),s.content.faqs&&e.jsxs("div",{className:"mb-8 mt-8",children:[e.jsx("h2",{className:"text-xl md:text-2xl font-bold text-steel-blue mb-6",children:"Frequently Asked Questions"}),e.jsx("div",{className:"space-y-5",children:s.content.faqs.map((a,r)=>e.jsxs("div",{children:[e.jsx("h3",{className:"font-bold text-graphite mb-1",children:a.question}),e.jsx("p",{className:"text-graphite leading-relaxed text-sm",children:a.answer})]},r))})]}),e.jsx("div",{className:"lg:hidden my-10",id:"service-form",children:e.jsx(p,{hiddenFields:{service:s.name}})}),v.length>0&&e.jsxs("div",{className:"mb-8",children:[e.jsxs("h3",{className:"font-bold text-steel-blue mb-4",children:[s.name," by Area"]}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3",children:v.map(a=>{const d=R.includes(a.slug)?`/services/${s.slug}/${a.slug}`:`/areas/${a.slug}`;return e.jsxs(C,{to:d,className:"flex items-center justify-between p-4 bg-warm-gray rounded-xl hover:bg-steel-blue hover:text-white text-graphite transition-all group",children:[e.jsxs("div",{children:[e.jsx("span",{className:"font-semibold text-sm group-hover:text-white",children:a.name}),e.jsx("span",{className:"block text-xs text-graphite/60 group-hover:text-white/70 mt-0.5",children:a.driveTime})]}),e.jsxs("div",{className:"flex items-center gap-1 text-xs font-semibold text-steel-blue group-hover:text-white",children:[e.jsx(T,{className:"w-3.5 h-3.5"}),"Get Estimate",e.jsx(S,{className:"w-3 h-3"})]})]},a.slug)})})]}),f.length>0&&e.jsxs("div",{className:"mb-8",children:[e.jsx("h3",{className:"font-bold text-steel-blue mb-3",children:"Related Services"}),e.jsx("div",{className:"flex flex-wrap gap-2",children:f.map(a=>e.jsx(C,{to:`/services/${a.slug}`,className:"px-4 py-2 bg-warm-gray rounded-lg text-sm font-medium text-graphite hover:bg-steel-blue hover:text-white transition-all",children:a.name},a.slug))})]})]}),e.jsx("div",{className:"hidden lg:block lg:w-80 flex-shrink-0 lg:-mt-64",children:e.jsxs("div",{className:"sticky top-28 space-y-5",children:[e.jsx(p,{hiddenFields:{service:s.name}}),e.jsx(g,{review:o})]})})]})})}),e.jsx(O,{}),e.jsx(U,{formAnchor:"#service-form"})]})}return e.jsxs(e.Fragment,{children:[e.jsx(w,{title:s.content.metaTitle,metaDescription:s.content.metaDescription,canonicalUrl:`/services/${s.slug}`,ogUrl:`/services/${s.slug}`,noIndex:!0}),e.jsx(A,{items:b}),e.jsx("div",{className:"bg-steel-blue text-white",children:e.jsxs("div",{className:"container-width px-4 py-2.5 flex items-center justify-center gap-2 text-sm font-semibold",children:[e.jsx(h,{className:"w-4 h-4"}),e.jsx("span",{children:"Same-Day Service Available"}),e.jsx("span",{className:"text-white/60 hidden sm:inline",children:"—"}),e.jsxs("a",{href:l.phoneHref,className:"underline underline-offset-2 hover:text-white/90",children:["Call ",l.phone," for a Free On-Site Estimate"]})]})}),e.jsx("section",{className:"section-padding bg-white",children:e.jsx("div",{className:"container-width",children:e.jsxs("div",{className:"lg:flex lg:gap-10",children:[e.jsxs("div",{className:"lg:flex-1",children:[e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4 mb-6",children:[e.jsx("h1",{className:"text-3xl md:text-4xl font-bold text-steel-blue",children:s.content.h1}),e.jsxs("a",{href:l.phoneHref,className:"btn-primary text-sm whitespace-nowrap flex-shrink-0",children:[e.jsx(x,{className:"w-4 h-4"}),"Free On-Site Estimate"]})]}),e.jsx("img",{src:`/images/${s.image}`,alt:`${s.name} in Orlando, FL`,width:"800",height:"600",loading:"lazy",className:"w-full rounded-xl mb-8 object-cover max-h-[400px]"}),e.jsx(k,{inline:!0}),e.jsxs("p",{className:"text-graphite leading-relaxed text-lg mt-8 mb-6",children:["Detailed information about ",s.name.toLowerCase()," in Orlando coming soon. Call"," ",e.jsx("a",{href:l.phoneHref,className:"text-vivid-red font-bold hover:underline",children:l.phone})," ","for a free on-site estimate."]}),n.length>0&&e.jsxs("div",{className:"mb-8",children:[e.jsx("h3",{className:"font-bold text-steel-blue mb-4",children:"Customer Reviews"}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:n.map(t=>e.jsx(g,{review:t},t.id))})]})]}),e.jsx("div",{className:"lg:w-80 flex-shrink-0 mt-8 lg:mt-0",children:e.jsx("div",{className:"lg:sticky lg:top-32",children:e.jsx(p,{})})})]})})}),e.jsx(O,{})]})}export{X as default};