1import{a as n,j as e}from"./react-vendor-Cj4cBEvf.js";import{b as se}from"./router-BMgApeuJ.js";import{a as ae}from"./query-DuA8FwnC.js";import{u as le}from"./use-seo-DQxU_M65.js";import{u as ie,B as p,a as S,b as V,e as J,s as re}from"./index-BqvpdcJu.js";import{C as M}from"./card-CoFigNgP.js";import{I as y}from"./input-B7jeI0zG.js";import{T as ne}from"./textarea-Cov8tLiM.js";import{B as oe}from"./badge-DsmPSQk4.js";import{t as ce}from"./trade-descriptor-p3lhtYAy.js";import{L as de}from"./landing-page-quiz-Cr8XFMoZ.js";import{d as _,P as B,f as W,S as $,n as A,a$ as z,g as F,m as me,N as I,V as Y,k as H,O as he,A as K,X as xe,a1 as ge}from"./icons-BolBVcAj.js";import"./fullcalendar-DxFl_for.js";import"./radix-Cu77hBNh.js";import"./charts-C3VUr0cJ.js";import"./trade-type-aliases-C9Kqch3y.js";import"./progress-DNNJr37m.js";const ue={kitchen_remodel:"kitchen",bathroom_remodel:"bathroom",adu:"adu",room_addition:"room-addition",full_remodel:"full-home"},pe={kitchen_remodel:"Kitchen Remodeling",bathroom_remodel:"Bathroom Remodeling",adu:"ADU Construction",room_addition:"Room Addition",full_remodel:"Full Home Remodel"};function be(){let a=localStorage.getItem("oria_lp_visitor");return a||(a="v_"+Math.random().toString(36).substring(2)+Date.now().toString(36),localStorage.setItem("oria_lp_visitor",a)),a}const D=["A","B"];function q(){const c=new URLSearchParams(window.location.search).get("ab")?.toUpperCase();if(c&&D.includes(c))return c;let t=localStorage.getItem("oria_lp_variant");return(!t||!D.includes(t))&&(t=D[Math.floor(Math.random()*D.length)],localStorage.setItem("oria_lp_variant",t)),t}function R(){const a=new URLSearchParams(window.location.search);return{utmSource:a.get("utm_source"),utmMedium:a.get("utm_medium"),utmCampaign:a.get("utm_campaign")}}async function f(a,c,t){try{await S(`/api/landing-page/${a}/event`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({eventType:c,eventData:{...t,variant:q()},visitorId:be(),...R()})})}catch(g){console.error("Failed to track campaign event:",g)}}function fe({slug:a,service:c,meetingType:t,onClose:g}){const[j,d]=n.useState("dates"),[m,i]=n.useState([]),[N,T]=n.useState([]),[o,w]=n.useState(null),[r,u]=n.useState(null),[v,k]=n.useState(!0),[l,h]=n.useState(!1),[C,b]=n.useState(!1),[x,E]=n.useState({name:"",email:"",phone:"",smsConsent:!1}),[U,Q]=n.useState(null),{toast:P}=V();n.useEffect(()=>{S("/api/booking/dates").then(s=>s.json()).then(s=>i(s.dates||[])).catch(()=>P({title:"Error",description:"Could not load dates",variant:"destructive"})).finally(()=>k(!1))},[]);const X=async s=>{w(s),u(null),h(!0);try{const te=await(await S(`/api/booking/slots?date=${s}`)).json();T(te.slots||[])}catch{P({title:"Error",description:"Could not load slots",variant:"destructive"})}h(!1)},Z=s=>{u(s),d("form")},ee=async()=>{if(!x.name||!x.email||!x.phone||!r){P({title:"Missing info",description:"Please fill all fields",variant:"destructive"});return}b(!0);try{const s=await S("/api/booking/create",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:x.name,email:x.email,phone:x.phone,smsConsent:x.smsConsent,projectType:ue[c]||c,meetingType:t==="google_meet"?"zoom":"onsite",startTime:r.start,endTime:r.end,...R()})}),L=await s.json();if(!s.ok)throw new Error(L.error||"Booking failed");Q({meetLink:L.meetLink}),d("success"),J("landing_page_booking"),f(a,"booking_click",{ctaType:t==="google_meet"?"google_meet":"walkthrough",date:o})}catch(s){P({title:"Error",description:s.message,variant:"destructive"})}b(!1)},G=s=>new Date(s+"T12:00:00").toLocaleDateString("en-US",{weekday:"short",month:"short",day:"numeric"}),O=s=>new Date(s).toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0,timeZone:"America/Los_Angeles"});return e.jsxs(M,{className:"p-6 border-2 border-[hsl(174,62%,47%)]/20 bg-white shadow-xl rounded-2xl","data-testid":"booking-widget",children:[e.jsxs("div",{className:"flex items-center justify-between mb-4",children:[e.jsxs("h3",{className:"text-lg font-bold text-gray-900 flex items-center gap-2",children:[t==="google_meet"?e.jsx(Y,{className:"w-5 h-5 text-[hsl(174,62%,47%)]"}):e.jsx(H,{className:"w-5 h-5 text-[hsl(174,62%,47%)]"}),t==="google_meet"?"Book a Google Meet":"Schedule a Walkthrough"]}),e.jsx("button",{onClick:g,className:"text-gray-400 hover:text-gray-600","data-testid":"button-close-booking",children:e.jsx(xe,{className:"w-5 h-5"})})]}),j==="dates"&&e.jsxs("div",{children:[e.jsx("p",{className:"text-sm text-gray-500 mb-4",children:"Pick a date that works for you:"}),v?e.jsx("div",{className:"flex items-center justify-center py-8",children:e.jsx(_,{className:"w-6 h-6 animate-spin text-[hsl(174,62%,47%)]"})}):m.length===0?e.jsx("p",{className:"text-gray-500 text-center py-8",children:"No available dates. Please call us instead."}
1):e.jsx("div",{className:"grid grid-cols-3 sm:grid-cols-5 gap-2 max-h-64 overflow-y-auto",children:m.map(s=>e.jsxs("button",{onClick:()=>{w(s),X(s)},className:`p-3 rounded-lg border-2 text-center transition-all ${o===s?"border-[hsl(174,62%,47%)] bg-[hsl(174,62%,47%)]/10":"border-gray-200 hover:border-gray-300"}`,"data-testid":`button-booking-date-${s}`,children:[e.jsx("div",{className:"text-xs text-gray-500",children:new Date(s+"T12:00:00").toLocaleDateString("en-US",{weekday:"short"})}),e.jsx("div",{className:"font-bold text-lg",children:new Date(s+"T12:00:00").getDate()}),e.jsx("div",{className:"text-xs text-gray-500",children:new Date(s+"T12:00:00").toLocaleDateString("en-US",{month:"short"})})]},s))}),o&&!l&&e.jsxs("div",{className:"mt-4",children:[e.jsxs("p",{className:"text-sm font-medium text-gray-700 mb-2 flex items-center gap-1",children:[e.jsx(F,{className:"w-4 h-4 text-[hsl(174,62%,47%)]"}),"Available times for ",G(o)]}),N.length===0?e.jsx("p",{className:"text-sm text-gray-500",children:"No slots available. Try another date."}):e.jsx("div",{className:"grid grid-cols-3 sm:grid-cols-4 gap-2",children:N.map(s=>e.jsx("button",{onClick:()=>Z(s),className:"p-2 rounded-lg border-2 border-gray-200 hover:border-[hsl(174,62%,47%)] hover:bg-[hsl(174,62%,47%)]/5 text-sm font-medium transition-all","data-testid":`button-booking-slot-${s.start}`,children:O(s.start)},s.start))})]}),l&&e.jsx("div",{className:"flex items-center justify-center py-4 mt-4",children:e.jsx(_,{className:"w-5 h-5 animate-spin text-[hsl(174,62%,47%)]"})})]}),j==="form"&&e.jsxs("div",{className:"space-y-4",children:[e.jsxs("button",{onClick:()=>d("dates"),className:"text-sm text-gray-500 hover:text-gray-700 flex items-center gap-1","data-testid":"button-booking-back",children:[e.jsx(ge,{className:"w-4 h-4"})," Back to dates"]}),e.jsxs("div",{className:"bg-[hsl(174,62%,47%)]/5 rounded-lg p-3 text-sm",children:[e.jsx("span",{className:"font-medium",children:G(o)})," at ",e.jsx("span",{className:"font-medium",children:O(r.start)})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Full Name *"}),e.jsx(y,{value:x.name,onChange:s=>E({...x,name:s.target.value}),placeholder:"John Smith",autoComplete:"name","data-testid":"input-booking-name"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Email *"}),e.jsx(y,{type:"email",value:x.email,onChange:s=>E({...x,email:s.target.value}),placeholder:"[email protected]",autoComplete:"email",inputMode:"email","data-testid":"input-booking-email"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Phone *"}),e.jsx(y,{type:"tel",value:x.phone,onChange:s=>E({...x,phone:s.target.value}),placeholder:"(310) 555-0123",autoComplete:"tel",inputMode:"tel","data-testid":"input-booking-phone"})]})]}),e.jsx(p,{className:"w-full h-12 bg-[hsl(174,62%,47%)] hover:bg-[hsl(174,62%,42%)] text-white font-semibold text-base",onClick:ee,disabled:C,"data-testid":"button-booking-submit",children:C?e.jsx(_,{className:"w-5 h-5 animate-spin"}):"Confirm Booking"}),e.jsxs("p",{className:"text-[10px] text-gray-400 text-center leading-tight pt-1",children:["By booking, you agree to be contacted about your appointment."," ",e.jsx("a",{href:"/terms-of-service",target:"_blank",rel:"noopener noreferrer",className:"underline",children:"Terms"})," · ",e.jsx("a",{href:"/privacy-policy",target:"_blank",rel:"noopener noreferrer",className:"underline",children:"Privacy"})]})]}),j==="success"&&e.jsxs("div",{className:"text-center py-6 space-y-4","data-testid":"booking-success",children:[e.jsx("div",{className:"w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mx-auto",children:e.jsx(I,{className:"w-8 h-8 text-green-600"})}),e.jsx("h4",{className:"text-xl font-bold text-gray-900",children:"You're Booked!"}),e.jsxs("p",{className:"text-gray-600 text-sm",children:["A confirmation email with all the details has been sent to ",e.jsx("strong",{children:x.email}),"."]}),U?.meetLink&&e.jsx("a",{href:U.meetLink,target:"_blank",rel:"noopener noreferrer",className:"text-[hsl(174,62%,47%)] underline text-sm","data-testid":"link-meet",children:"Join Google Meet â"})]})]})}function je({slug:a,service:c}
1){const[t,g]=n.useState({name:"",email:"",phone:"",address:"",description:"",smsConsent:!1}),[j,d]=n.useState(!1),[m,i]=n.useState(!1),{toast:N}=V(),o={kitchen_remodel:"Get My Kitchen Design + Price",bathroom_remodel:"Get My Bathroom Design + Price",adu:"Get My ADU Design + Price",room_addition:"Get My Addition Design + Price",full_remodel:"Get My Home Design + Price"}[c]||"Get My Design + Price",w=async r=>{if(r.preventDefault(),!t.name||!t.email||!t.phone||!t.address){N({title:"Missing info",description:"Please fill all required fields",variant:"destructive"});return}d(!0);try{f(a,"form_submit",{ctaType:"estimate_form"}).catch(()=>{}),await re("/api/leads",{name:t.name,email:t.email,phone:t.phone,address:t.address,smsConsent:t.smsConsent,source:"landing_page",projectType:c,message:t.description,...R()}),J("landing_page"),i(!0)}catch(u){N({title:"Couldn't submit",description:u?.message||"Unable to submit. Please try again or contact support at [email protected]",variant:"destructive"})}d(!1)};return m?e.jsxs("div",{className:"text-center py-8 space-y-3","data-testid":"estimate-success",children:[e.jsx("div",{className:"w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mx-auto",children:e.jsx(I,{className:"w-8 h-8 text-green-600"})}),e.jsx("h4",{className:"text-xl font-bold text-gray-900",children:"You're in. We'll call within 1 hour."}),e.jsx("p",{className:"text-gray-600 text-sm",children:"A real designer will call your phone to talk through your project and send your custom estimate."}),e.jsx("p",{className:"text-xs text-gray-400",children:"Check your spam folder â first email may go there."})]}):e.jsxs("form",{onSubmit:w,className:"space-y-4","data-testid":"estimate-form",children:[e.jsxs("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Full Name *"}),e.jsx(y,{value:t.name,onChange:r=>g({...t,name:r.target.value}),placeholder:"John Smith",autoComplete:"name","data-testid":"input-estimate-name"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Email *"}),e.jsx(y,{type:"email",value:t.email,onChange:r=>g({...t,email:r.target.value}),placeholder:"[email protected]",autoComplete:"email",inputMode:"email","data-testid":"input-estimate-email"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Phone *"}),e.jsx(y,{type:"tel",value:t.phone,onChange:r=>g({...t,phone:r.target.value}),placeholder:"(310) 555-0123",autoComplete:"tel",inputMode:"tel","data-testid":"input-estimate-phone"})]}),e.jsxs("div",{className:"sm:col-span-2",children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Property Address *"}),e.jsx(y,{value:t.address,onChange:r=>g({...t,address:r.target.value}),placeholder:"123 Main St, City, CA 90210",autoComplete:"street-address","data-testid":"input-estimate-address"})]})]}),e.jsxs("div",{children:[e.jsx("label",{className:"text-sm font-medium text-gray-700",children:"Project Description (optional)"}),e.jsx(ne,{value:t.description,onChange:r=>g({...t,description:r.target.value}),placeholder:"Square footage? Specific features you want? Anything we should know?",rows:3,"data-testid":"input-estimate-description"})]}),e.jsx(p,{type:"submit",className:"w-full h-14 bg-[hsl(30,80%,52%)] hover:bg-[hsl(30,80%,45%)] text-white font-bold text-base shadow-lg shadow-[hsl(30,80%,52%)]/30",disabled:j,"data-testid":"button-estimate-submit",children:j?e.jsx(_,{className:"w-5 h-5 animate-spin"}):e.jsxs(e.Fragment,{children:[o,e.jsx(K,{className:"w-5 h-5 ml-2"})]})}),e.jsxs("div",{className:"flex items-center justify-center gap-3 text-xs text-gray-500 pt-1",children:[e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(F,{className:"w-3 h-3"})," Reply within 1 hour"]}),e.jsx("span",{children:"â¢"}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx($,{className:"w-3 h-3"})," No spam, no obligation"]})]}),e.jsxs("p",{className:"text-[10px] text-gray-400 text-center leading-tight",children:["By submitting, you agree to be contacted about your project."," ",e.jsx("a",{href:"/terms-of-service",target:"_blank",rel:"noopener noreferrer",className:"underline",children:"Terms"})," · ",e.jsx("a",{href:"/privacy-policy",target:"_blank",rel:"noopener noreferrer",className:"underline",children:"Privacy"})]})]})}function Fe(){const{slug:a}=se(),[c,t]=n.useState(null),g=n.useRef(new Set),[j]=n.useState(()=>q()),{branding:d}=ie(),m=d?.companyName||"Our Company";le(`${m} | Special Offer`,`Exclusive offer from ${m} â premium ${ce(d?.tradeType).servicesLabel} in California.`,{canonicalPath:a?`/landing/${a}`:"/landing"},[a,m]);const{data:i,isLoading:N,error:T}=ae({queryKey:["landing-page",a],queryFn:async()=>{const l=await S(`/api/landing-page/${a}`);if(!l.ok)throw new Error("Page not found");return l.json()},enabled:!!a});n.useEffect(()=>{if(!a)return;const l=()=>{const h=Math.round(window.scrollY/(document.body.scrollHeight-window.innerHeight)*100),C=[25,50,75,100];for(const b of C)h>=b&&!g.current.has(b)&&(g.current.add(b),f(a,"scroll_depth",{depth:b}))};return window.addEventListener("scroll",l,{passive:!0}),()=>window.removeEventListener("scroll",l)},[a]);const o=l=>{a&&f(a,"cta_click",{ctaType:l})};if(N)return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-white",children:e.jsx(_,{className:"w-8 h-8 animate-spin text-[hsl(174,62%,47%)]"})});if(T||!i)return e.jsx("div",{className:"min-h-screen flex items-center justify-center bg-white",children:e.jsxs("div",{className:"text-center",children:[e.jsx("h1",{className:"text-2xl font-bold text-gray-900 mb-2",children:"Page Not Found"}),e.jsx("p",{className:"text-gray-500",children:"This landing page doesn't exist or has been removed."})]})});const w=(()=>{try{return JSON.parse(i.benefits||"[]")}catch{return[]}})(),r=(()=>{try{return JSON.parse(i.testimonials||"[]")}catch{return[]}})(),u=i.phoneNumber||d?.phone||"",v=u.replace(/^\+1/,"").replace(/(\d{3})(\d{3})(\d{4})/,"($1) $2-$3"),k=pe[i.service]||i.service;return e.jsxs("div",{className:"min-h-screen bg-white",children:[e.jsx("header",{className:"bg-white border-b border-gray-100 py-3 px-4",children:e.jsxs("div",{className:"max-w-6xl mx-auto flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-2","data-testid":"text-logo",children:[e.jsx("div",{className:"w-8 h-8 bg-[hsl(174,62%,47%)] rounded-lg flex items-center justify-center",children:e.jsx("span",{className:"text-white font-bold text-sm",children:"O"})}),e.jsx("span",{className:"text-lg font-bold tracking-tight text-gray-900",children:m})]}),i.showCallNow&&e.jsxs("a",{href:`tel:${u}`,className:"flex items-center gap-2 text-sm font-semibold text-[hsl(174,62%,47%)] hover:text-[hsl(174,62%,42%)]",onClick:()=>{o("call"),f(a,"call_click",{ctaType:"call"})},"data-testid":"link-header-call",children:[e.jsx(B,{className:"w-4 h-4"}),e.jsx("span",{className:"hidden sm:inline",children:v})]})]})}),e.jsxs("section",{className:"relative bg-gradient-to-br from-gray-900 via-gray-800 to-gray-900 text-white overflow-hidden","data-testid":"section-hero",children:[i.heroImageUrl&&e.jsx("div",{className:"absolute inset-0",children:e.jsx("img",{src:i.heroImageUrl,alt:"",className:"w-full h-full object-cover opacity-30"})}),e.jsxs("div",{className:"relative max-w-6xl mx-auto px-4 sm:px-6 py-16 sm:py-24",children:[e.jsx(oe,{className:"bg-[hsl(30,80%,52%)] text-white border-0 mb-4 text-sm px-3 py-1","data-testid":"badge-service",children:k}),e.jsx("h1",{className:"text-3xl sm:text-4xl lg:text-5xl xl:text-6xl font-extrabold leading-tight max-w-3xl","data-testid":"text-headline",children:i.headline}),i.subheadline&&e.jsx("p",{className:"mt-4 text-lg sm:text-xl text-white/80 max-w-2xl","data-testid":"text-subheadline",children:i.subheadline}),e.jsxs("div",{className:"mt-8 flex flex-col sm:flex-row gap-3",children:[i.showBookWalkthrough&&e.jsxs(p,{size:"lg",className:"h-14 px-8 bg-[hsl(174,62%,47%)] hover:bg-[hsl(174,62%,42%)] text-white font-bold text-base shadow-lg shadow-[hsl(174,62%,47%)]/30",onClick:()=>{o("walkthrough"),t("walkthrough")},"data-testid":"button-hero-walkthrough",children:[e.jsx(W,{className:"w-5 h-5 mr-2"}),"Schedule a Free Walkthrough"]}),i.showCallNow&&e.jsx("a",{href:`tel:${u}`,onClick:()=>{o("call"),f(a,"call_click",{ctaType:"call"})},children:e.jsxs(p,{size:"lg",variant:"outline",className:"h-14 px-8 border-white/30 text-white hover:bg-white/10 font-bold text-base w-full","data-testid":"button-hero-call",children:[e.jsx(B,{className:"w-5 h-5 mr-2"}),"Call Now: ",v]})})]}),e.jsxs("div",{className:"mt-6 flex items-center gap-4 text-sm text-white/60",children:[e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx($,{className:"w-4 h-4"})," Licensed & Insured"]}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(A,{className:"w-4 h-4 text-yellow-400"})," 5-Star Rated"]}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(z,{className:"w-4 h-4"})," Free Estimates"]})]}),e.jsxs("div",{className:"mt-4 inline-flex items-center gap-2 bg-[hsl(30,80%,52%)]/20 border border-[hsl(30,80%,52%)]/40 rounded-full px-4 py-2 text-sm text-white/90","data-testid":"urgency-badge",children:[e.jsx(F,{className:"w-4 h-4 text-[hsl(30,80%,52%)]"}),e.jsxs("span",{children:["Only ",e.jsx("strong",{children:"3 consultation spots"})," left this week"]})]})]})]}),c&&e.jsx("section",{className:"max-w-2xl mx-auto px-4 -mt-8 relative z-10 mb-8",id:"booking","data-testid":"section-booking",children:e.jsx(fe,{slug:a,service:i.service,meetingType:c==="google_meet"?"google_meet":"onsite",onClose:()=>t(null)})}),e.jsx("section",{className:"bg-white py-6 border-b border-gray-100","data-testid":"section-stats",children:e.jsx("div",{className:"max-w-6xl mx-auto px-4 grid grid-cols-2 sm:grid-cols-4 gap-6 text-center",children:[{value:"350+",label:"Projects Completed"},{value:"9+",label:"Years in Business"},{value:"100+",label:"Kitchens Transformed"},{value:"4.9",label:"Google Rating"}].map(l=>e.jsxs("div",{"data-testid":`stat-${l.label}`,children:[e.jsx("div",{className:"text-2xl sm:text-3xl font-extrabold text-[hsl(174,62%,47%)]",children:l.value}),e.jsx("div",{className:"text-xs sm:text-sm text-gray-500 mt-1",children:l.label})]},l.label))})}),e.jsx("section",{className:"bg-gray-50 py-8 border-b border-gray-100","data-testid":"section-trust-badges",children:e.jsx("div",{className:"max-w-6xl mx-auto px-4 grid grid-cols-2 sm:grid-cols-4 gap-6 text-center",children:[{icon:$,label:"Licensed & Insured",sub:d?.licenseNumber?`CSLB #${d.licenseNumber}`:"Verified"},{icon:me,label:"Top CA Contractor",sub:"2017â2025"},{icon:A,label:"5-Star Reviews",sub:"Google Verified"},{icon:z,label:"Free Estimates",sub:"No Obligation"}].map(l=>e.jsxs("div",{className:"flex flex-col items-center gap-2",children:[e.jsx("div",{className:"w-12 h-12 bg-[hsl(174,62%,47%)]/10 rounded-full flex items-center justify-center",children:e.jsx(l.icon,{className:"w-6 h-6 text-[hsl(174,62%,47%)]"})}),e.jsx("span",{className:"font-semibold text-sm text-gray-900",children:l.label}),e.jsx("span",{className:"text-xs text-gray-500",children:l.sub})]},l.label))})}),w.length>0&&e.jsx("section",{className:"py-16 px-4","data-testid":"section-benefits",children:e.jsxs("div",{className:"max-w-4xl mx-auto",children:[e.jsxs("h2",{className:"text-2xl sm:text-3xl font-bold text-gray-900 text-center mb-2",children:["Why Choose ",m]}),e.jsxs("p",{className:"text-gray-500 text-center mb-10",children:["Here's what sets our ",k.toLowerCase()," apart"]}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:w.map((l,h)=>e.jsxs("div",{className:"flex items-start gap-3 p-4 rounded-xl bg-gray-50 border border-gray-100","data-testid":`benefit-item-${h}`,children:[e.jsx(I,{className:"w-5 h-5 text-[hsl(174,62%,47%)] mt-0.5 flex-shrink-0"}),e.jsx("span",{className:"text-gray-700 font-medium",children:l})]},h))})]})}),e.jsx("section",{className:"bg-[hsl(174,62%,47%)] py-12 px-4","data-testid":"section-mid-cta",children:e.jsxs("div",{className:"max-w-4xl mx-auto text-center text-white",children:[e.jsx("h2",{className:"text-2xl sm:text-3xl font-bold mb-3",children:"Your Dream Kitchen Is Closer Than You Think"}),e.jsx("p",{className:"text-white/80 mb-6 max-w-xl mx-auto",children:"Most of our projects book out 4-6 weeks in advance. Lock in your free consultation now and get on our schedule before spring fills up."}),e.jsxs("div",{className:"flex flex-col sm:flex-row gap-3 justify-center",children:[i.showBookGoogleMeet&&e.jsxs(p,{size:"lg",className:"h-14 px-8 bg-white text-[hsl(174,62%,47%)] hover:bg-white/90 font-bold text-base",onClick:()=>{o("google_meet"),t("google_meet"),window.scrollTo({top:0,behavior:"smooth"})},"data-testid":"button-mid-google-meet",children:[e.jsx(Y,{className:"w-5 h-5 mr-2"}),"Book a Google Meet Consultation"]}),i.showBookWalkthrough&&e.jsxs(p,{size:"lg",variant:"outline",className:"h-14 px-8 border-white/30 text-white hover:bg-white/10 font-bold text-base",onClick:()=>{o("walkthrough"),t("walkthrough"),window.scrollTo({top:0,behavior:"smooth"})},"data-testid":"button-mid-walkthrough",children:[e.jsx(H,{className:"w-5 h-5 mr-2"}),"Schedule In-Person Walkthrough"]})]})]})}),i.bodyContent&&e.jsx("section",{className:"py-16 px-4","data-testid":"section-body-content",children:e.jsx("div",{className:"max-w-3xl mx-auto prose prose-gray prose-lg",children:i.bodyContent.split(` 2 3`).map((l,h)=>e.jsx("p",{className:"text-gray-600 leading-relaxed",children:l},h))})}),r.length>0&&e.jsx("section",{className:"py-16 px-4 bg-gray-50","data-testid":"section-testimonials",children:e.jsxs("div",{className:"max-w-5xl mx-auto",children:[e.jsx("h2",{className:"text-2xl sm:text-3xl font-bold text-gray-900 text-center mb-2",children:"What Our Clients Say"}),e.jsx("p",{className:"text-gray-500 text-center mb-10",children:"Real reviews from real homeowners"}),e.jsx("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6",children:r.map((l,h)=>e.jsxs(M,{className:"p-6 bg-white border-gray-200","data-testid":`testimonial-card-${h}`,children:[e.jsx("div",{className:"flex items-center gap-1 mb-3",children:Array.from({length:l.rating||5}).map((C,b)=>e.jsx(A,{className:"w-4 h-4 fill-yellow-400 text-yellow-400"},b))}),e.jsxs("p",{className:"text-gray-600 italic mb-4",children:['"',l.text,'"']}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"w-8 h-8 bg-[hsl(174,62%,47%)]/10 rounded-full flex items-center justify-center",children:e.jsx(he,{className:"w-4 h-4 text-[hsl(174,62%,47%)]"})}),e.jsxs("div",{children:[e.jsx("p",{className:"font-semibold text-sm text-gray-900",children:l.name}),e.jsx("p",{className:"text-xs text-gray-500",children:l.service})]})]})]},h))})]})}),i.showFreeEstimate&&e.jsx("section",{className:"py-16 px-4",id:"estimate","data-testid":"section-estimate",children:e.jsx("div",{className:"max-w-2xl mx-auto",children:j==="B"?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"text-center mb-6",children:e.jsx("p",{className:"inline-block bg-[hsl(30,80%,52%)]/10 text-[hsl(30,80%,40%)] px-4 py-2 rounded-full text-sm font-semibold",children:"Most contractors take 3-7 days to send pricing. We show yours in 60 seconds."})}),e.jsx(de,{slug:a,service:i.service,serviceLabel:k,trackEvent:(l,h)=>f(a,l,h)})]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"text-center mb-8",children:[e.jsx("h2",{className:"text-2xl sm:text-3xl font-bold text-gray-900 mb-2",children:"See your design + price â in under 24 hours"}),e.jsx("p",{className:"text-gray-600",children:"Tell us about your project. A real designer reviews it personally and calls within 1 hour during business hours."})]}),e.jsx(M,{className:"p-6 sm:p-8 border-2 border-[hsl(30,80%,52%)]/20 shadow-lg",children:e.jsx(je,{slug:a,service:i.service})})]})})}),e.jsx("section",{className:"bg-gray-900 py-16 px-4","data-testid":"section-final-cta",children:e.jsxs("div",{className:"max-w-4xl mx-auto text-center text-white",children:[e.jsx("h2",{className:"text-2xl sm:text-3xl font-bold mb-3",children:"Don't Wait â Your Neighbors Already Started"}),e.jsxs("p",{className:"text-white/70 mb-8 max-w-xl mx-auto",children:["Get your free estimate
3 and see why homeowners trust ",m," with their biggest investment."]}),e.jsxs("div",{className:"flex flex-col sm:flex-row gap-3 justify-center",children:[i.showCallNow&&e.jsx("a",{href:`tel:${u}`,onClick:()=>{o("call"),f(a,"call_click",{ctaType:"call"})},children:e.jsxs(p,{size:"lg",className:"h-14 px-8 bg-[hsl(30,80%,52%)] hover:bg-[hsl(30,80%,45%)] text-white font-bold text-base w-full","data-testid":"button-final-call",children:[e.jsx(B,{className:"w-5 h-5 mr-2"}),"Call Us: ",v]})}),i.showFreeEstimate&&e.jsxs(p,{size:"lg",variant:"outline",className:"h-14 px-8 border-white/30 text-white hover:bg-white/10 font-bold text-base",onClick:()=>{o("estimate_form"),document.getElementById("estimate")?.scrollIntoView({behavior:"smooth"})},"data-testid":"button-final-estimate",children:[e.jsx(K,{className:"w-5 h-5 mr-2"}),"Get a Free Estimate"]})]})]})}),e.jsx("footer",{className:"bg-gray-950 text-gray-400 py-8 px-4","data-testid":"section-footer",children:e.jsxs("div",{className:"max-w-6xl mx-auto text-center space-y-3",children:[e.jsxs("div",{className:"flex items-center justify-center gap-2",children:[e.jsx("div",{className:"w-6 h-6 bg-[hsl(174,62%,47%)] rounded flex items-center justify-center",children:e.jsx("span",{className:"text-white font-bold text-xs",children:"O"})}),e.jsx("span",{className:"font-bold text-white tracking-tight",children:m.toUpperCase()})]}),e.jsx("p",{className:"text-sm",children:"Licensed General Contractor â Serving California Homeowners"}),e.jsxs("p",{className:"text-xs text-gray-500",children:["© ",new Date().getFullYear()," ",m,". All rights reserved.",d?.licenseNumber?` CA License #${d.licenseNumber}.`:"","By submitting your information, you agree to receive communications from ",m,"."]})]})}),e.jsxs("div",{className:"fixed bottom-0 left-0 right-0 bg-white border-t border-gray-200 p-3 flex gap-2 sm:hidden z-50 shadow-[0_-4px_6px_-1px_rgba(0,0,0,0.1)]","data-testid":"sticky-mobile-cta",children:[i.showCallNow&&e.jsx("a",{href:`tel:${u}`,className:"flex-1",onClick:()=>{o("call"),f(a,"call_click",{ctaType:"call"})},children:e.jsxs(p,{className:"w-full h-12 bg-[hsl(30,80%,52%)] hover:bg-[hsl(30,80%,45%)] text-white font-bold","data-testid":"button-mobile-call",children:[e.jsx(B,{className:"w-4 h-4 mr-1"})," Call Now"]})}),i.showBookWalkthrough&&e.jsxs(p,{className:"flex-1 h-12 bg-[hsl(174,62%,47%)] hover:bg-[hsl(174,62%,42%)] text-white font-bold",onClick:()=>{o("walkthrough"),t("walkthrough"),window.scrollTo({top:0,behavior:"smooth"})},"data-testid":"button-mobile-book",children:[e.jsx(W,{className:"w-4 h-4 mr-1"})," Book Now"]})]}),e.jsx("div",{className:"h-16 sm:hidden"})]})}export{Fe 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.