1import{j as e,P as r,L as t,b as a,M as i}from"./index-CLsmn16M.js";import{C as o}from"./CTABanner-CZfGuiv8.js";import{A as n}from"./arrow-right-Bud-GFJV.js";function d(){return e.jsxs(e.Fragment,{children:[e.jsx(r,{eyebrow:"Service Area",title:"Local roofers for the Sioux Falls metro.",subtitle:"Trucks staged in Hartford, crews on-call across the metro, response times measured in minutes â not days.",crumbs:[{label:"Home",to:"/"},{label:"Service Area"}]}),e.jsx("section",{className:"container-prose py-16 md:py-20 grid gap-6 md:grid-cols-3",children:t.map(s=>e.jsxs(a,{to:"/service-area/$city",params:{city:s.slug},className:"group rounded-2xl border border-border p-6 bg-card hover:border-accent hover:shadow-lg transition",children:[e.jsxs("div",{className:"flex items-center gap-2 text-accent",children:[e.jsx(i,{className:"size-5"}),e.jsx("span",{className:"text-xs font-semibold uppercase tracking-wider",children:s.stateCode})]}),e.jsxs("h2",{className:"mt-3 text-2xl font-bold",children:[s.city," Roofing"]}),e.jsx("p",{className:"mt-2 text-sm text-muted-foreground",children:s.driveTime}),e.jsx("p",{className:"mt-3 text-sm text-muted-foreground line-clamp-3",children:s.intro}),e.jsxs("span",{className:"mt-5 inline-flex items-center gap-1 text-sm font-semibold text-accent group-hover:gap-2 transition-all",children:["See ",s.city," roofing services ",e.jsx(n,{className:"size-4"})]})]},s.slug))}),e.jsx(o,{title:"Storm just moved through? We're already rolling.",subtitle:"Call for same-day emergency tarping and free inspections anywhere in our service area."})]})}
1export{d 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.