This commit is contained in:
2025-08-22 14:11:18 -05:00
commit 3e9ca1a146
88 changed files with 14387 additions and 0 deletions

135
web/app/about/page.tsx Normal file
View File

@@ -0,0 +1,135 @@
import type { Metadata } from 'next';
import CTASection from '@/components/CTASection';
import site from '@/content/site.json';
export const metadata: Metadata = {
title: 'About C & I Electrical Contractors | Corpus Christi Electrician',
description: 'Learn about C & I Electrical Contractors, serving Corpus Christi since 2005. Licensed, insured, and committed to safety and quality electrical work.',
openGraph: {
title: 'About C & I Electrical Contractors | Corpus Christi Electrician',
description: 'Learn about C & I Electrical Contractors, serving Corpus Christi since 2005. Licensed, insured, and committed to safety and quality electrical work.',
images: ['/og/about-electrician-1200x630.jpg']
}
};
export default function About() {
return (
<>
{/* HERO */}
<section className="bg-gradient-to-br from-brand-dark to-slate-800 text-white">
<div className="container-custom py-24">
<div className="inline-flex items-center gap-2 bg-brand-danger px-4 py-2 rounded-full text-sm font-semibold mb-6 text-black">
<span></span>
24/7 Emergency Electrician Average response under 60 minutes in Corpus Christi
</div>
<h1 className="font-heading font-bold text-4xl md:text-5xl mb-6 leading-tight">
About C & I Electrical Contractors
</h1>
<p className="text-xl text-gray-300 mb-12 max-w-prose">
Serving Corpus Christi with reliable electrical solutions since 2005. Licensed, insured, and committed to safety and quality.
</p>
{/* Stats */}
<div className="grid grid-cols-2 md:grid-cols-4 gap-6">
<Stat n="19+" label="Years in Business" />
<Stat n="1000+" label="Projects Completed" />
<Stat n="100%" label="Licensed & Insured" />
<Stat n="24/7" label="Emergency Service" />
</div>
</div>
</section>
{/* STORY */}
<section className="py-24 bg-white">
<div className="container-custom">
<div className="grid md:grid-cols-3 gap-12">
<div className="md:col-span-2 space-y-6">
<h2 className="font-heading font-bold text-3xl">Our Story</h2>
<div className="space-y-4 text-gray-700 font-body">
<p>
C & I Electrical Contractors was founded by Henry Del Llano in 2005 with a simple mission: provide reliable, high-quality electrical services to the Corpus Christi community.
</p>
<p>
What started as a small residential service has grown into a trusted contractor serving both residential and commercial clients throughout the greater Corpus Christi area.
</p>
<p>
Today, we continue to uphold the same values that made us successful: safety first, quality work, reliable service, and a commitment to our community.
</p>
</div>
</div>
<div className="card">
<h3 className="font-heading font-semibold text-lg mb-3">Licensed & Insured</h3>
<p className="text-gray-600 text-sm">
Fully licensed electrical contractor in Texas with general liability and workers comp.
</p>
</div>
</div>
</div>
</section>
{/* VALUES */}
<section className="py-24 bg-brand-surface">
<div className="container-custom">
<h2 className="font-heading font-bold text-3xl text-center mb-12">Our Values</h2>
<div className="grid md:grid-cols-4 gap-8">
{[
{
title: 'Safety First',
desc: 'Every job starts with a safety assessment.',
icon: '🛡️'
},
{
title: 'Quality Work',
desc: 'Code-compliant electrical work done right the first time.',
icon: '✅'
},
{
title: 'Reliable Service',
desc: 'On time, clearly explained options, no surprises.',
icon: '⏰'
},
{
title: 'Community Focused',
desc: 'Proud to serve Corpus Christi.',
icon: '🏠'
}
].map((value, i) => (
<div key={i} className="card text-center">
<div className="text-4xl mb-4">{value.icon}</div>
<h3 className="font-heading font-semibold text-lg mb-2">{value.title}</h3>
<p className="text-gray-600 text-sm">{value.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* CTA */}
<section className="py-24 bg-brand-dark text-white">
<div className="container-custom text-center">
<h2 className="font-heading font-bold text-3xl mb-6">Ready to Work With Us?</h2>
<p className="text-xl text-gray-300 mb-8 max-w-prose mx-auto">
Experience the difference of safety, quality, and customer satisfaction.
</p>
<div className="flex flex-col sm:flex-row gap-4 justify-center">
<a href="tel:+13618850315" className="btn-primary">
Call Now
</a>
<a href="/contact" className="btn-secondary">
Get Free Quote
</a>
</div>
</div>
</section>
</>
);
}
function Stat({ n, label }: { n: string; label: string }) {
return (
<div className="card bg-white/10 border-white/20 text-center">
<div className="text-3xl font-bold text-black mb-2">{n}</div>
<div className="text-sm text-black">{label}</div>
</div>
);
}

View File

@@ -0,0 +1,25 @@
import { NextResponse } from 'next/server';
import { z } from 'zod';
import { allow } from '@/lib/rate-limit';
const ContactSchema = z.object({
name: z.string().min(2),
phone: z.string().min(7),
email: z.string().email(),
address: z.string().optional(),
projectType: z.string().min(2),
urgency: z.string().min(2),
description: z.string().min(10)
});
export async function POST(req: Request) {
if (!allow('contact', req.headers.get('x-forwarded-for') || 'local')) {
return NextResponse.json({ error: 'Too many requests' }, { status: 429 });
}
const body = await req.json().catch(() => null);
const parsed = ContactSchema.safeParse(body);
if (!parsed.success) return NextResponse.json({ error: 'Invalid payload' }, { status: 400 });
// TODO: integrate email/CRM
console.log('Contact submission', parsed.data);
return NextResponse.json({ ok: true });
}

View File

@@ -0,0 +1,142 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Electrician in Aransas Pass, TX | Emergency & Residential Service',
description: 'Licensed electrician serving Aransas Pass, Texas. 24/7 emergency electrical service, panel upgrades, wiring. Call (361) 885-0315.',
openGraph: {
title: 'Electrician in Aransas Pass, TX | Emergency & Residential Service',
description: 'Licensed electrician serving Aransas Pass, Texas. 24/7 emergency electrical service, panel upgrades, wiring.',
images: ['/og/aransas-pass-electrician-1200x630.jpg']
}
};
const aransasPassFaq: QA[] = [
{
q: 'Do you provide electrical service in Aransas Pass?',
a: 'Yes, we serve Aransas Pass and surrounding San Patricio County areas with complete electrical services including emergency repairs.'
},
{
q: 'How far in advance should I schedule electrical work?',
a: 'For non-emergency work, we typically schedule within 2-3 days. Emergency service is available 24/7 with same-day response.'
},
{
q: 'Do you work on older homes in Aransas Pass?',
a: 'Yes, we specialize in upgrading electrical systems in older homes, including panel upgrades and rewiring to meet current codes.'
}
];
export default function AransasPassElectricianPage() {
const locationSchema = {
'@context': 'https://schema.org',
'@type': 'Electrician',
name: 'C & I Electrical Contractors - Aransas Pass',
telephone: '+1-361-885-0315',
address: {
'@type': 'PostalAddress',
streetAddress: '2801 S Port Ave',
addressLocality: 'Corpus Christi',
addressRegion: 'TX',
postalCode: '78405',
addressCountry: 'US'
},
areaServed: 'Aransas Pass, TX',
url: 'https://www.cielectrical.com/aransas-pass/electrician'
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">Electrician Serving Aransas Pass, TX</h1>
<p className="mt-4 text-lg">Reliable electrical services for Aransas Pass homes and businesses. <b>Licensed, insured, and ready to help</b> with all your electrical needs.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Call (361) 885-0315
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Free Quote
</a>
</div>
<div className="mt-6 text-white/90 space-y-1">
<p> 24/7 emergency service available</p>
<p> Licensed Texas electrical contractor</p>
<p> Residential & commercial service</p>
</div>
</div>
<div>
<Image
src="/images/aransas-pass-electrician.jpg"
alt="Electrical service in Aransas Pass, Texas"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* SERVICES */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Electrical Services in Aransas Pass</h2>
<div className="grid md:grid-cols-3 gap-6">
{[
'Emergency Electrical Repairs',
'Electrical Panel Upgrades',
'Outlet & Switch Installation',
'Lighting Installation',
'Wiring & Rewiring',
'Code Compliance Work'
].map((service, i) => (
<div key={i} className="bg-white border rounded-lg p-6 shadow-card">
<h3 className="font-semibold mb-2">{service}</h3>
<p className="text-gray-600 text-sm">Professional electrical service you can trust</p>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<FAQ items={aransasPassFaq} />
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Need an Electrician in Aransas Pass?</h2>
<p className="mt-2 text-gray-700">
Professional electrical service for Aransas Pass residents. Call for fast, reliable service.
</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="location-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(locationSchema) }}
/>
</>
);
}

206
web/app/commercial/page.tsx Normal file
View File

@@ -0,0 +1,206 @@
import type { Metadata } from 'next';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Commercial Electrical Services | Corpus Christi Business Electrical',
description: 'Commercial electrical services in Corpus Christi. Tenant build-outs, lighting retrofits, service upgrades, maintenance programs. Call (361) 885-0315.',
openGraph: {
title: 'Commercial Electrical Services | Corpus Christi Business Electrical',
description: 'Commercial electrical services in Corpus Christi. Tenant build-outs, lighting retrofits, service upgrades, maintenance programs.',
images: ['/og/commercial-electrician-1200x630.jpg']
}
};
const commercialFaq: QA[] = [
{
q: 'What commercial electrical services do you offer?',
a: 'We provide complete commercial electrical solutions including tenant build-outs, lighting retrofits, service upgrades, maintenance programs, and emergency repairs.'
},
{
q: 'Do you work after hours to minimize business disruption?',
a: 'Yes, we offer after-hours and weekend service to minimize downtime for your business operations.'
},
{
q: 'Can you handle large commercial projects?',
a: 'Yes, we have experience with projects of all sizes, from small retail build-outs to large warehouse installations.'
},
{
q: 'Do you provide maintenance contracts?',
a: 'Yes, we offer comprehensive maintenance programs including scheduled inspections, thermal imaging, and emergency repair service.'
}
];
export default function Commercial() {
return (
<>
{/* HERO */}
<section className="bg-gradient-to-br from-brand-dark to-slate-800 text-white">
<div className="container-custom py-24 grid md:grid-cols-2 gap-12 items-center">
<div>
<h1 className="font-heading font-bold text-4xl md:text-5xl mb-6 leading-tight">
Commercial Electrical Services for Corpus Christi Businesses
</h1>
<p className="text-xl text-gray-300 mb-8 max-w-prose">
Minimize downtime with code-compliant installs, retrofits, and maintenance. After-hours and emergency service available.
</p>
<div className="flex flex-col sm:flex-row gap-4 mb-8">
<a
href="tel:+13618850315"
className="btn-primary text-center"
>
Call Now 24/7 Emergency Help
</a>
<a
href="#quote-form"
className="btn-secondary text-center"
>
Request Project Quote
</a>
</div>
<div className="flex flex-wrap items-center gap-6 text-sm text-gray-300">
<span className="flex items-center gap-1">
<span className="text-yellow-400"></span>
<span>4.9 Rating (200+ reviews)</span>
</span>
<span></span>
<span>A+ BBB</span>
<span></span>
<span>19+ Years</span>
</div>
</div>
<div>
<Image
src="/images/commercial.png"
alt="Commercial electrician working on business electrical system in Corpus Christi"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
priority
className="rounded-card shadow-2xl"
/>
</div>
</div>
</section>
{/* SERVICES */}
<section className="py-24 bg-white">
<div className="container-custom">
<h2 className="font-heading font-bold text-3xl text-center mb-12">Complete Commercial Electrical Solutions</h2>
<div className="grid md:grid-cols-2 gap-8">
{[
{
title: 'Tenant Build-Outs',
items: ['Power distribution design', 'Lighting layout & installation', 'Data/communication wiring', 'Code compliance & permitting'],
icon: '🏢',
bgColor: 'bg-brand-lightBlue'
},
{
title: 'Lighting Retrofits',
items: ['LED conversion & rebates', 'Emergency lighting systems', 'Occupancy sensors', 'Energy usage analysis'],
icon: '💡',
bgColor: 'bg-brand-lightOrange'
},
{
title: 'Service Upgrades',
items: ['Main service upgrades', 'Distribution panels', 'Load calculations', 'Power quality analysis'],
icon: '⚡',
bgColor: 'bg-brand-lightGreen'
},
{
title: 'Maintenance Programs',
items: ['Scheduled inspections', 'Thermal imaging', 'Emergency repair service', 'Compliance documentation'],
icon: '🔄',
bgColor: 'bg-brand-lightPurple'
}
].map((service, i) => (
<div key={i} className="card group hover:shadow-lg transition-all duration-200">
<div className="flex items-start gap-4">
<div className={`w-12 h-12 ${service.bgColor} rounded-full flex items-center justify-center flex-shrink-0`}>
<span className="text-2xl">{service.icon}</span>
</div>
<div>
<h3 className="font-heading font-semibold text-lg mb-3 group-hover:text-brand-green transition-colors">
{service.title}
</h3>
<ul className="space-y-2 text-sm text-gray-600">
{service.items.map((item, j) => (
<li key={j} className="flex items-center gap-2">
<span className="w-1.5 h-1.5 bg-brand-green rounded-full"></span>
{item}
</li>
))}
</ul>
</div>
</div>
</div>
))}
</div>
</div>
</section>
{/* INDUSTRIES */}
<section className="py-24 bg-brand-surface">
<div className="container-custom">
<h2 className="font-heading font-bold text-3xl text-center mb-12">Industries We Serve</h2>
<div className="grid md:grid-cols-3 gap-8">
{[
{ name: 'Office Buildings', icon: '🏢', desc: 'Modern office spaces with efficient lighting and power systems' },
{ name: 'Retail Stores', icon: '🛍️', desc: 'Point-of-sale systems, display lighting, and security' },
{ name: 'Restaurants', icon: '🍽️', desc: 'Commercial kitchens, dining areas, and outdoor spaces' },
{ name: 'Schools', icon: '🎓', desc: 'Educational facilities with safety and accessibility compliance' },
{ name: 'Medical Facilities', icon: '🏥', desc: 'Healthcare environments with critical power systems' },
{ name: 'Warehouses', icon: '🏭', desc: 'Industrial spaces with heavy equipment and automation' }
].map((industry, i) => (
<div key={i} className="card text-center">
<div className="text-4xl mb-4">{industry.icon}</div>
<h3 className="font-heading font-semibold text-lg mb-2">{industry.name}</h3>
<p className="text-gray-600 text-sm">{industry.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<FAQ items={commercialFaq} />
{/* CTA */}
<section className="py-24 bg-brand-dark text-white">
<div className="container-custom">
<div className="grid md:grid-cols-2 gap-12 items-center">
<div>
<h2 className="font-heading font-bold text-3xl mb-6">Ready to Power Your Business?</h2>
<p className="text-xl text-gray-300 mb-8">
Get a free consultation for your commercial electrical project. We provide detailed estimates and flexible scheduling.
</p>
<div className="space-y-3 text-sm text-gray-300 mb-8">
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
Licensed commercial electrical contractor
</p>
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
After-hours and weekend service
</p>
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
Emergency repair response
</p>
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
Maintenance programs available
</p>
</div>
<p className="text-xl font-semibold">Call: (361) 885-0315</p>
</div>
<div id="quote-form">
<ContactForm variant="dark" />
</div>
</div>
</div>
</section>
</>
);
}

141
web/app/contact/page.tsx Normal file
View File

@@ -0,0 +1,141 @@
import type { Metadata } from 'next';
import ContactForm from '@/components/ContactForm';
import site from '@/content/site.json';
export const metadata: Metadata = {
title: 'Contact | Free Quote for Electrical Services in Corpus Christi',
description: 'Get your free electrical service quote. Licensed electricians in Corpus Christi. Call (361) 885-0315 or request online quote.',
openGraph: {
title: 'Contact | Free Quote for Electrical Services in Corpus Christi',
description: 'Get your free electrical service quote. Licensed electricians in Corpus Christi.',
images: ['/og/contact-1200x630.jpg']
}
};
export default function Contact() {
return (
<>
{/* HERO */}
<section className="bg-gradient-to-br from-brand-dark to-slate-800 text-white">
<div className="container-custom py-24 text-center">
<h1 className="font-heading font-bold text-4xl md:text-5xl mb-6 leading-tight">
Get Your Free Electrical Quote
</h1>
<p className="text-xl text-gray-300 mb-8 max-w-prose mx-auto">
Call now for 24/7 emergency service or fill out the form below for a detailed project quote.
</p>
<div className="flex flex-col sm:flex-row gap-4 justify-center">
<a
href={`tel:${site.business.phoneRaw}`}
className="btn-primary"
>
Call Now 24/7 Emergency
</a>
<a
href="#form"
className="btn-secondary"
>
Request Free Quote
</a>
</div>
</div>
</section>
{/* CONTACT FORM & INFO */}
<section className="py-24 bg-white" id="form">
<div className="container-custom">
<div className="grid md:grid-cols-3 gap-12">
<div className="md:col-span-2">
<h2 className="font-heading font-bold text-3xl mb-6">Request Your Free Quote</h2>
<p className="text-gray-700 mb-8 font-body">
Fill out the form below and we'll call you within <strong>15-30 minutes</strong> during business hours with your free estimate.
</p>
<ContactForm />
</div>
<aside aria-label="Contact information" className="space-y-6">
<div className="card bg-brand-danger text-white">
<h3 className="font-heading font-semibold text-lg mb-3">Emergency Service</h3>
<p className="mb-4 text-gray-200">Electrical emergency? Don't wait call now!</p>
<a
href={`tel:${site.business.phoneRaw}`}
className="inline-flex min-h-[48px] items-center justify-center rounded-card bg-white text-brand-danger px-6 py-3 font-semibold w-full hover:bg-gray-100 transition-colors"
>
Call Emergency Line
</a>
</div>
<div className="card">
<h3 className="font-heading font-semibold text-lg mb-3">Contact Details</h3>
<div className="space-y-2 text-sm text-gray-600">
<p><strong>Phone:</strong> {site.business.phone}</p>
<p><strong>Email:</strong> {site.business.email}</p>
<p><strong>Address:</strong> {site.business.address}</p>
<p><strong>Hours:</strong> Mon-Fri 7AM5PM</p>
<p><strong>Emergency:</strong> Available 24/7</p>
</div>
</div>
<div className="card">
<h3 className="font-heading font-semibold text-lg mb-3">Service Areas</h3>
<ul className="text-sm space-y-1 text-gray-600">
<li> Corpus Christi</li>
<li> Flour Bluff</li>
<li> Portland, TX</li>
<li> Aransas Pass</li>
<li> Rockport</li>
<li> Robstown</li>
</ul>
</div>
<div className="card bg-brand-lightGreen border-brand-green">
<h3 className="font-heading font-semibold text-lg mb-3">Why Choose Us?</h3>
<ul className="text-sm space-y-2 text-gray-700">
<li> Licensed & insured TECL ####</li>
<li> 19+ years in business</li>
<li> A+ BBB rating</li>
<li> Free estimates</li>
<li> 1-year warranty on labor</li>
<li> Same-day service available</li>
</ul>
</div>
</aside>
</div>
</div>
</section>
{/* BUSINESS INFO */}
<section className="py-24 bg-brand-surface">
<div className="container-custom">
<div className="grid md:grid-cols-2 gap-12 items-center">
<div>
<h2 className="font-heading font-bold text-3xl mb-6">Licensed & Insured Electricians</h2>
<p className="text-gray-700 mb-6 font-body">
C & I Electrical Contractors has been serving the Corpus Christi area since 2005. We're fully licensed,
insured, and committed to providing safe, code-compliant electrical work.
</p>
<div className="space-y-2 text-sm text-gray-600">
<p><strong>License:</strong> Texas Electrical Contractor TECL ####</p>
<p><strong>Insurance:</strong> General liability & workers' compensation</p>
<p><strong>Bonded:</strong> Yes, for your protection</p>
<p><strong>Warranties:</strong> 1-year labor, manufacturer parts warranty</p>
</div>
</div>
<div className="card">
<h3 className="font-heading font-semibold text-lg mb-4">Find Us</h3>
<address className="text-gray-700 not-italic mb-4">
<strong>C & I Electrical Contractors</strong><br/>
2801 S Port Ave<br/>
Corpus Christi, TX 78405
</address>
<div className="text-sm text-gray-600">
<p>Centrally located to serve all of Corpus Christi and surrounding areas including
Flour Bluff, Portland, Aransas Pass, and Rockport.</p>
</div>
</div>
</div>
</div>
</section>
</>
);
}

View File

@@ -0,0 +1,333 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Electrical Diagnostics Corpus Christi | Troubleshooting & Testing',
description: 'Professional electrical diagnostics and troubleshooting in Corpus Christi. Circuit testing, load analysis, safety inspections. Call (361) 885-0315.',
openGraph: {
title: 'Electrical Diagnostics Corpus Christi | Troubleshooting & Testing',
description: 'Professional electrical diagnostics and troubleshooting in Corpus Christi. Circuit testing, load analysis, safety inspections.',
images: ['/og/electrical-diagnostics-1200x630.jpg']
}
};
const diagnosticsFaq: QA[] = [
{
q: 'What electrical diagnostic services do you offer?',
a: 'We provide comprehensive electrical diagnostics including circuit testing, load analysis, voltage testing, ground fault detection, arc fault testing, and thermal imaging inspections.'
},
{
q: 'How do you diagnose electrical problems?',
a: 'We use advanced diagnostic equipment including multimeters, circuit testers, thermal cameras, and specialized tools to identify electrical issues safely and accurately.'
},
{
q: 'Can you diagnose electrical problems without turning off power?',
a: 'Some diagnostics can be performed with power on, but for safety and accuracy, we often need to isolate circuits. We coordinate with you to minimize disruption.'
},
{
q: 'Do you provide written diagnostic reports?',
a: 'Yes, we provide detailed written reports including findings, recommendations, and repair options with photos and technical specifications.'
}
];
export default function ElectricalDiagnosticsPage() {
const serviceSchema = {
'@context': 'https://schema.org',
'@type': 'Service',
name: 'Electrical Diagnostics',
description: 'Professional electrical diagnostics and troubleshooting in Corpus Christi, TX',
provider: {
'@type': 'LocalBusiness',
name: 'C & I Electrical Contractors',
telephone: '+1-361-885-0315'
},
serviceType: 'Electrical Diagnostic Service',
areaServed: ['Corpus Christi', 'Flour Bluff', 'Portland', 'Aransas Pass', 'Rockport']
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: diagnosticsFaq.map(({q, a}) => ({
'@type': 'Question',
name: q,
acceptedAnswer: {
'@type': 'Answer',
text: a
}
}))
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">Electrical Diagnostics in Corpus Christi</h1>
<p className="mt-4 text-lg">Professional electrical troubleshooting and diagnostic services. <b>Advanced testing equipment</b> to identify and solve electrical problems quickly and safely.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Schedule Diagnostics
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Get Free Quote
</a>
</div>
<div className="mt-4 text-white/90">
<p> Advanced diagnostic equipment</p>
<p> Licensed electrical technicians</p>
<p> Detailed written reports</p>
<p> Same-day service available</p>
</div>
</div>
<div>
<Image
src="/images/diagnostics.png"
alt="Professional electrical diagnostics and testing in Corpus Christi"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* DIAGNOSTIC SERVICES */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Comprehensive Electrical Diagnostic Services</h2>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-6">
{[
{
title: 'Circuit Testing',
description: 'Comprehensive testing of electrical circuits for proper operation and safety',
services: ['Voltage testing', 'Current measurement', 'Continuity testing', 'Ground fault detection']
},
{
title: 'Load Analysis',
description: 'Analysis of electrical load distribution and capacity assessment',
services: ['Load calculations', 'Demand analysis', 'Capacity planning', 'Overload detection']
},
{
title: 'Thermal Imaging',
description: 'Infrared thermal imaging to detect hot spots and electrical problems',
services: ['Hot spot detection', 'Overheating components', 'Connection issues', 'Preventive maintenance']
},
{
title: 'Arc Fault Testing',
description: 'Detection and analysis of dangerous arc faults in electrical systems',
services: ['Arc fault detection', 'AFCI testing', 'Safety assessment', 'Code compliance']
},
{
title: 'Ground Fault Testing',
description: 'Testing of ground fault protection and electrical grounding systems',
services: ['GFCI testing', 'Ground resistance', 'Ground fault detection', 'Safety verification']
},
{
title: 'Voltage Analysis',
description: 'Comprehensive voltage testing and power quality analysis',
services: ['Voltage measurement', 'Power quality', 'Voltage drop analysis', 'Stability testing']
}
].map((service, i) => (
<div key={i} className="bg-white border rounded-lg p-6 shadow-card">
<h3 className="font-semibold text-lg mb-2">{service.title}</h3>
<p className="text-gray-600 mb-3">{service.description}</p>
<ul className="text-sm text-gray-500 space-y-1">
{service.services.map((item, j) => (
<li key={j}> {item}</li>
))}
</ul>
</div>
))}
</div>
</div>
</section>
{/* DIAGNOSTIC EQUIPMENT */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Advanced Diagnostic Equipment</h2>
<div className="grid md:grid-cols-2 lg:grid-cols-4 gap-6">
{[
{
title: 'Digital Multimeters',
desc: 'High-precision voltage, current, and resistance measurement'
},
{
title: 'Thermal Cameras',
desc: 'Infrared imaging to detect overheating electrical components'
},
{
title: 'Circuit Testers',
desc: 'Advanced circuit testing and fault detection equipment'
},
{
title: 'Load Analyzers',
desc: 'Professional load analysis and power quality testing'
}
].map((equipment, i) => (
<div key={i} className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">🔧</span>
</div>
<h3 className="font-semibold mb-2">{equipment.title}</h3>
<p className="text-gray-600 text-sm">{equipment.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* COMMON PROBLEMS */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Common Electrical Problems We Diagnose</h2>
<div className="grid md:grid-cols-2 gap-8">
<div className="space-y-6">
{[
{
title: 'Flickering Lights',
desc: 'Diagnose causes including loose connections, voltage fluctuations, or circuit overloads'
},
{
title: 'Frequent Breaker Trips',
desc: 'Identify overloaded circuits, short circuits, or faulty electrical components'
},
{
title: 'Hot Outlets or Switches',
desc: 'Detect dangerous overheating caused by loose connections or overloaded circuits'
},
{
title: 'Electrical Shocks',
desc: 'Find ground faults, improper grounding, or damaged electrical insulation'
},
{
title: 'High Energy Bills',
desc: 'Analyze electrical efficiency and identify energy-wasting electrical problems'
},
{
title: 'Power Quality Issues',
desc: 'Diagnose voltage fluctuations, harmonics, and power factor problems'
}
].map((problem, i) => (
<div key={i} className="flex gap-4">
<div className="w-8 h-8 bg-brand-red text-white rounded-full flex items-center justify-center text-sm font-bold flex-shrink-0">
!
</div>
<div>
<h3 className="font-semibold text-lg">{problem.title}</h3>
<p className="text-gray-600">{problem.desc}</p>
</div>
</div>
))}
</div>
<div className="bg-brand-grayBg rounded-lg p-6">
<h3 className="text-xl font-semibold mb-4">Diagnostic Process</h3>
<div className="space-y-4">
{[
{ step: '1', title: 'Initial Assessment', desc: 'Visual inspection and problem identification' },
{ step: '2', title: 'Equipment Setup', desc: 'Set up appropriate diagnostic equipment' },
{ step: '3', title: 'Testing', desc: 'Perform comprehensive electrical testing' },
{ step: '4', title: 'Analysis', desc: 'Analyze results and identify root causes' },
{ step: '5', title: 'Report', desc: 'Provide detailed written report with recommendations' }
].map((item) => (
<div key={item.step} className="flex gap-4">
<div className="w-8 h-8 bg-brand-green text-black rounded-full flex items-center justify-center text-sm font-bold flex-shrink-0">
{item.step}
</div>
<div>
<h4 className="font-semibold">{item.title}</h4>
<p className="text-gray-600 text-sm">{item.desc}</p>
</div>
</div>
))}
</div>
</div>
</div>
</div>
</section>
{/* DIAGNOSTIC REPORTS */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Comprehensive Diagnostic Reports</h2>
<div className="grid md:grid-cols-3 gap-6">
{[
{
title: 'Detailed Findings',
desc: 'Comprehensive analysis of all electrical issues found during diagnostics'
},
{
title: 'Safety Assessment',
desc: 'Evaluation of electrical safety hazards and code compliance issues'
},
{
title: 'Repair Recommendations',
desc: 'Prioritized list of recommended repairs with cost estimates'
}
].map((report, i) => (
<div key={i} className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">📋</span>
</div>
<h3 className="font-semibold mb-2">{report.title}</h3>
<p className="text-gray-600">{report.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<FAQ items={diagnosticsFaq} />
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Need Professional Electrical Diagnostics?</h2>
<p className="mt-2 text-gray-700">
Get accurate diagnosis of your electrical problems with our advanced testing equipment and experienced technicians.
</p>
<ul className="mt-4 space-y-2 text-sm text-gray-600">
<li> Advanced diagnostic equipment</li>
<li> Licensed technicians</li>
<li> Detailed written reports</li>
<li> Same-day service available</li>
</ul>
<p className="mt-4 text-lg font-semibold">Call: (361) 885-0315</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="service-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(serviceSchema) }}
/>
<Script
id="faq-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</>
);
}

View File

@@ -0,0 +1,215 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
import { track } from '@/lib/analytics';
export const metadata: Metadata = {
title: '24/7 Emergency Electrician Corpus Christi | Under 60-Min Response',
description: 'Power outage? Hot outlet? No lights? Licensed emergency electrician available 24/7 in Corpus Christi. Call (361) 885-0315 for same-day service.',
openGraph: {
title: '24/7 Emergency Electrician Corpus Christi | Under 60-Min Response',
description: 'Power outage? Hot outlet? No lights? Licensed emergency electrician available 24/7 in Corpus Christi.',
images: ['/og/emergency-electrician-1200x630.jpg']
}
};
const emergencyFaq: QA[] = [
{
q: 'What qualifies as an electrical emergency?',
a: 'Power outages, hot outlets, burning smells, sparking, exposed wires, breakers that won\'t reset, or any electrical safety hazard requiring immediate attention.'
},
{
q: 'How quickly can you respond to emergencies?',
a: 'Our average response time is under 60 minutes in Corpus Christi. We\'re available 24/7 including weekends and holidays.'
},
{
q: 'Do you charge extra for emergency calls?',
a: 'Emergency service calls have a premium fee, but we provide upfront pricing before starting work. No surprises.'
},
{
q: 'Can you diagnose electrical problems over the phone?',
a: 'We can provide basic safety guidance over the phone, but electrical issues require in-person diagnosis for safety and accuracy.'
}
];
export default function EmergencyElectricianPage() {
const serviceSchema = {
'@context': 'https://schema.org',
'@type': 'Service',
name: '24/7 Emergency Electrician',
description: 'Fast emergency electrical repairs and troubleshooting in Corpus Christi, TX',
provider: {
'@type': 'LocalBusiness',
name: 'C & I Electrical Contractors',
telephone: '+1-361-885-0315'
},
serviceType: 'Emergency Electrical Service',
areaServed: ['Corpus Christi', 'Flour Bluff', 'Portland', 'Aransas Pass', 'Rockport'],
availableChannel: {
'@type': 'ServiceChannel',
servicePhone: '+1-361-885-0315',
availableLanguage: 'English'
}
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: emergencyFaq.map(({q, a}) => ({
'@type': 'Question',
name: q,
acceptedAnswer: {
'@type': 'Answer',
text: a
}
}))
};
return (
<>
{/* HERO */}
<section className="bg-black text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">24/7 Emergency Electrician in Corpus Christi</h1>
<p className="mt-4 text-lg">Power outage? Hot outlets? Sparking? We respond to electrical emergencies <b>24/7 with under-60-minute average response time</b>.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-white px-6 py-3 text-black font-semibold"
>
Call Emergency Line Now
</a>
</div>
<div className="mt-4 text-white/90">
<p> Licensed & Insured TECL ####</p>
<p> Available nights, weekends & holidays</p>
<p> Safety-first approach</p>
<p> Upfront pricing before work begins</p>
</div>
</div>
<div>
<Image
src="/images/emergency_repair.png"
alt="Emergency electrician responding to electrical outage in Corpus Christi"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* EMERGENCY SERVICES */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Emergency Electrical Issues We Handle</h2>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-6">
{[
{
title: 'Power Outages',
description: 'Diagnose and restore power to homes and businesses',
issues: ['Tripped main breaker', 'Damaged service entrance', 'Meter base problems']
},
{
title: 'Hot Outlets & Switches',
description: 'Address dangerous overheating electrical components',
issues: ['Loose connections', 'Overloaded circuits', 'Faulty wiring']
},
{
title: 'Electrical Fires',
description: 'Immediate response to electrical fire hazards',
issues: ['Sparking outlets', 'Burning smell', 'Arc faults']
},
{
title: 'Storm Damage',
description: 'Repair electrical systems damaged by weather',
issues: ['Lightning damage', 'Flood damage', 'Wind damage']
},
{
title: 'Exposed Wiring',
description: 'Secure dangerous exposed electrical wires',
issues: ['Damaged conduit', 'Rodent damage', 'Construction damage']
},
{
title: 'Circuit Breaker Issues',
description: 'Fix breakers that won\'t reset or stay on',
issues: ['Faulty breakers', 'Panel problems', 'Ground faults']
}
].map((service, i) => (
<div key={i} className="bg-white border rounded-lg p-6 shadow-card">
<h3 className="font-semibold text-lg mb-2">{service.title}</h3>
<p className="text-gray-600 mb-3">{service.description}</p>
<ul className="text-sm text-gray-500 space-y-1">
{service.issues.map((issue, j) => (
<li key={j}> {issue}</li>
))}
</ul>
</div>
))}
</div>
</div>
</section>
{/* RESPONSE PROCESS */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Our Emergency Response Process</h2>
<div className="grid md:grid-cols-4 gap-6">
{[
{ step: '1', title: 'Call Us', desc: 'Describe your emergency and location' },
{ step: '2', title: 'Dispatch', desc: 'Technician dispatched within minutes' },
{ step: '3', title: 'Arrive', desc: 'On-site typically under 60 minutes' },
{ step: '4', title: 'Fix', desc: 'Safe, code-compliant repair with warranty' }
].map((item) => (
<div key={item.step} className="text-center">
<div className="w-12 h-12 mx-auto mb-4 bg-brand-red text-white rounded-full flex items-center justify-center text-xl font-bold">
{item.step}
</div>
<h3 className="font-semibold mb-2">{item.title}</h3>
<p className="text-gray-600 text-sm">{item.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<FAQ items={emergencyFaq} />
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold text-red-600">Don't Wait Electrical Problems Get Worse</h2>
<p className="mt-2 text-gray-700">
Electrical emergencies require immediate professional attention. Our licensed electricians are standing by 24/7 to help.
</p>
<p className="mt-4 font-semibold">Call now: (361) 885-0315</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="service-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(serviceSchema) }}
/>
<Script
id="faq-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</>
);
}

View File

@@ -0,0 +1,277 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'EV Charger Installation Corpus Christi | Tesla, Ford, GM Compatible',
description: 'Professional EV charging station installation. Level 2 NEMA 14-50, Tesla Wall Connector, universal chargers. Licensed, permitted, inspected.',
openGraph: {
title: 'EV Charger Installation Corpus Christi | Tesla, Ford, GM Compatible',
description: 'Professional EV charging station installation. Level 2 NEMA 14-50, Tesla Wall Connector, universal chargers.',
images: ['/og/ev-charger-install-1200x630.jpg']
}
};
const evFaq: QA[] = [
{
q: 'What type of EV charger should I install?',
a: 'Level 2 (240V) chargers are most common for homes. We recommend NEMA 14-50 outlets for flexibility or hardwired units for dedicated vehicles.'
},
{
q: 'Do I need permits for EV charger installation?',
a: 'Yes, EV charger installations require electrical permits in Corpus Christi. We handle all permits and coordinate inspections.'
},
{
q: 'Can my electrical panel handle an EV charger?',
a: 'We perform a load calculation to ensure your panel can support the additional 40-50 amp circuit required for Level 2 charging.'
},
{
q: 'How long does installation take?',
a: 'Most residential EV charger installations take 4-6 hours, depending on distance from panel and installation complexity.'
}
];
export default function EVChargerInstallPage() {
const serviceSchema = {
'@context': 'https://schema.org',
'@type': 'Service',
name: 'EV Charger Installation',
description: 'Professional electric vehicle charging station installation in Corpus Christi, TX',
provider: {
'@type': 'LocalBusiness',
name: 'C & I Electrical Contractors',
telephone: '+1-361-885-0315'
},
serviceType: 'Electric Vehicle Charger Installation',
areaServed: ['Corpus Christi', 'Flour Bluff', 'Portland', 'Aransas Pass', 'Rockport']
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: evFaq.map(({q, a}) => ({
'@type': 'Question',
name: q,
acceptedAnswer: {
'@type': 'Answer',
text: a
}
}))
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">EV Charger Installation in Corpus Christi</h1>
<p className="mt-4 text-lg">Drive electric with confidence. Professional <b>Level 2 charging station installation</b> for Tesla, Ford, GM, and all EV brands.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Get EV Install Quote
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Free Consultation
</a>
</div>
<div className="mt-4 text-white/90">
<p> Tesla & universal compatibility</p>
<p> Load calculations included</p>
<p> Permits & inspection handled</p>
<p> Indoor & outdoor installations</p>
</div>
</div>
<div>
<Image
src="/images/ev_ready.png"
alt="Tesla Wall Connector installation in Corpus Christi garage"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* CHARGER OPTIONS */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">EV Charging Solutions</h2>
<div className="grid md:grid-cols-3 gap-6">
{[
{
title: 'NEMA 14-50 Outlet',
price: 'Starting at $650',
features: ['Most flexible option', 'Works with any portable charger', '40-50 amp circuit', 'Indoor/outdoor rated'],
bestFor: 'Multiple EV brands'
},
{
title: 'Tesla Wall Connector',
price: 'Starting at $850',
features: ['Hardwired installation', 'Up to 48 amp charging', 'Built-in cable management', 'Wi-Fi connectivity'],
bestFor: 'Tesla owners',
popular: true
},
{
title: 'Universal Level 2 Charger',
price: 'Starting at $950',
features: ['Works with all EVs', 'Smart charging features', 'App connectivity', 'Built-in cable'],
bestFor: 'Future-proofing'
}
].map((option, i) => (
<div key={i} className={`rounded-lg p-6 border-2 ${option.popular ? 'border-brand-green bg-green-50' : 'border-gray-200 bg-white'}`}>
{option.popular && (
<div className="text-center mb-4">
<span className="inline-block px-3 py-1 bg-brand-green text-black text-sm font-semibold rounded-full">
Most Popular
</span>
</div>
)}
<h3 className="text-xl font-semibold mb-2">{option.title}</h3>
<p className="text-2xl font-bold text-brand-green mb-2">{option.price}</p>
<p className="text-sm text-gray-600 mb-4">Best for: {option.bestFor}</p>
<ul className="space-y-2 mb-6">
{option.features.map((feature, j) => (
<li key={j} className="flex items-center gap-2 text-sm">
<span className="text-brand-green"></span>
{feature}
</li>
))}
</ul>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-4 py-3 text-black font-semibold w-full"
>
Get Quote
</a>
</div>
))}
</div>
</div>
</section>
{/* INSTALLATION PROCESS */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Professional Installation Process</h2>
<div className="grid md:grid-cols-5 gap-6">
{[
{ step: '1', title: 'Site Survey', desc: 'Evaluate installation location and electrical capacity' },
{ step: '2', title: 'Load Calc', desc: 'Calculate electrical load to ensure safe installation' },
{ step: '3', title: 'Permits', desc: 'Pull required electrical permits from the city' },
{ step: '4', title: 'Install', desc: 'Professional installation with quality materials' },
{ step: '5', title: 'Inspect', desc: 'Final inspection and testing for safe operation' }
].map((item) => (
<div key={item.step} className="text-center">
<div className="w-12 h-12 mx-auto mb-4 bg-brand-green text-black rounded-full flex items-center justify-center text-xl font-bold">
{item.step}
</div>
<h3 className="font-semibold mb-2">{item.title}</h3>
<p className="text-gray-600 text-sm">{item.desc}</p>
</div>
))}
</div>
<div className="mt-12 bg-white rounded-lg p-8 text-center">
<h3 className="text-xl font-semibold mb-4">Why Choose Professional Installation?</h3>
<div className="grid md:grid-cols-3 gap-6 text-sm">
<div>
<h4 className="font-semibold mb-2">Safety First</h4>
<p className="text-gray-600">Proper grounding, GFCI protection, and code compliance for safe charging</p>
</div>
<div>
<h4 className="font-semibold mb-2">Warranty Protection</h4>
<p className="text-gray-600">Professional installation protects manufacturer warranties</p>
</div>
<div>
<h4 className="font-semibold mb-2">Optimal Performance</h4>
<p className="text-gray-600">Proper installation ensures maximum charging speed and efficiency</p>
</div>
</div>
</div>
</div>
</section>
{/* EV COMPATIBILITY */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">We Install Chargers for All EV Brands</h2>
<div className="grid grid-cols-2 md:grid-cols-4 lg:grid-cols-6 gap-6 text-center">
{[
'Tesla Model S/3/X/Y',
'Ford Mustang Mach-E',
'Ford Lightning F-150',
'Chevy Bolt/Volt',
'BMW i3/i4/iX',
'Audi e-tron',
'Mercedes EQS/EQC',
'Nissan Leaf',
'Hyundai Ioniq',
'Kia EV6',
'Rivian R1T/R1S',
'VW ID.4'
].map((brand, i) => (
<div key={i} className="p-4 bg-gray-50 rounded-lg">
<p className="text-sm font-medium">{brand}</p>
</div>
))}
</div>
<div className="mt-8 text-center">
<p className="text-gray-600">Don't see your EV? We install chargers for all electric vehicles with standard J1772 or Tesla connectors.</p>
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<FAQ items={evFaq} />
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Ready to Charge at Home?</h2>
<p className="mt-2 text-gray-700">
Get a free consultation and quote for your EV charging station installation. We handle everything from permits to inspection.
</p>
<div className="mt-4 space-y-2">
<p className="text-sm text-gray-600"> Free site evaluation</p>
<p className="text-sm text-gray-600"> All permits included</p>
<p className="text-sm text-gray-600"> Professional installation</p>
<p className="text-sm text-gray-600"> 1-year warranty</p>
</div>
<p className="mt-4 font-semibold">Call: (361) 885-0315</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="service-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(serviceSchema) }}
/>
<Script
id="faq-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</>
);
}

View File

@@ -0,0 +1,283 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Electrical Panel Upgrade Corpus Christi | 100A to 200A Service',
description: 'Upgrade old electrical panels to meet modern power demands. Licensed electricians handle permits, inspections. Call (361) 885-0315 for free estimate.',
openGraph: {
title: 'Electrical Panel Upgrade Corpus Christi | 100A to 200A Service',
description: 'Upgrade old electrical panels to meet modern power demands. Licensed electricians handle permits, inspections.',
images: ['/og/panel-upgrade-1200x630.jpg']
}
};
const panelFaq: QA[] = [
{
q: 'How do I know if I need a panel upgrade?',
a: 'Signs include frequent breaker trips, flickering lights, hot outlets, burning smell, or if your panel is over 20 years old. We provide free assessments.'
},
{
q: 'Do I need permits for a panel upgrade?',
a: 'Yes, electrical panel upgrades require permits in Corpus Christi. We handle all permits and coordinate inspections.'
},
{
q: 'How long does a panel upgrade take?',
a: 'Most residential panel upgrades take 6-8 hours. We coordinate with CPS Energy for temporary power disconnection.'
},
{
q: 'What\'s included in the upgrade cost?',
a: 'New panel, breakers, permits, inspection coordination, code compliance updates, and 1-year warranty on labor.'
}
];
export default function PanelUpgradePage() {
const serviceSchema = {
'@context': 'https://schema.org',
'@type': 'Service',
name: 'Electrical Panel Upgrade',
description: 'Professional electrical panel upgrades from 100A to 200A service in Corpus Christi, TX',
provider: {
'@type': 'LocalBusiness',
name: 'C & I Electrical Contractors',
telephone: '+1-361-885-0315'
},
serviceType: 'Electrical Panel Installation',
areaServed: ['Corpus Christi', 'Flour Bluff', 'Portland', 'Aransas Pass', 'Rockport']
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: panelFaq.map(({q, a}) => ({
'@type': 'Question',
name: q,
acceptedAnswer: {
'@type': 'Answer',
text: a
}
}))
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">Electrical Panel Upgrades in Corpus Christi</h1>
<p className="mt-4 text-lg">Is your electrical panel keeping up with modern power demands? Upgrade from <b>100A to 200A service</b> with AFCI/GFCI protection.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Call for Free Assessment
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Get Quote
</a>
</div>
<div className="mt-4 text-white/90">
<p> We handle permits & inspections</p>
<p> Code compliant installation</p>
<p> Same-day service available</p>
<p> 1-year warranty on labor</p>
</div>
</div>
<div>
<Image
src="/images/panel_upgrade.png"
alt="Modern 200A electrical panel installation in Corpus Christi home"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* SIGNS YOU NEED UPGRADE */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Signs You Need a Panel Upgrade</h2>
<div className="grid md:grid-cols-2 gap-8">
<div className="space-y-6">
{[
{
title: 'Frequent Breaker Trips',
desc: 'Breakers constantly tripping indicate your panel can\'t handle current electrical load'
},
{
title: 'Flickering Lights',
desc: 'Lights dimming when appliances start up suggests insufficient power capacity'
},
{
title: 'Hot Outlets or Switches',
desc: 'Overheating components are dangerous and indicate electrical overload'
},
{
title: 'Burning Smell',
desc: 'Electrical burning odors require immediate professional attention'
},
{
title: 'Old Panel Age',
desc: 'Panels over 20 years old may not meet current electrical codes'
},
{
title: 'Insufficient Outlets',
desc: 'Relying on extension cords indicates need for more circuits'
}
].map((sign, i) => (
<div key={i} className="flex gap-4">
<div className="w-8 h-8 bg-brand-red text-white rounded-full flex items-center justify-center text-sm font-bold flex-shrink-0">
!
</div>
<div>
<h3 className="font-semibold text-lg">{sign.title}</h3>
<p className="text-gray-600">{sign.desc}</p>
</div>
</div>
))}
</div>
<div className="bg-brand-grayBg rounded-lg p-6">
<h3 className="text-xl font-semibold mb-4">Free Panel Assessment</h3>
<p className="text-gray-700 mb-4">
Not sure if you need an upgrade? Our licensed electricians provide free assessments to evaluate your electrical panel's condition and capacity.
</p>
<ul className="text-sm text-gray-600 space-y-2 mb-6">
<li>• Load calculation analysis</li>
<li>• Safety inspection</li>
<li>• Code compliance check</li>
<li>• Detailed written estimate</li>
</ul>
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-4 py-3 text-black font-semibold w-full"
>
Schedule Free Assessment
</a>
</div>
</div>
</div>
</section>
{/* UPGRADE PROCESS */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Our Panel Upgrade Process</h2>
<div className="grid md:grid-cols-5 gap-6">
{[
{ step: '1', title: 'Assessment', desc: 'Free evaluation of current panel and electrical needs' },
{ step: '2', title: 'Permits', desc: 'We pull all required city permits for you' },
{ step: '3', title: 'Installation', desc: 'Professional installation with minimal downtime' },
{ step: '4', title: 'Inspection', desc: 'City inspection coordination and approval' },
{ step: '5', title: 'Testing', desc: 'Complete system testing and warranty documentation' }
].map((item) => (
<div key={item.step} className="text-center">
<div className="w-12 h-12 mx-auto mb-4 bg-brand-green text-black rounded-full flex items-center justify-center text-xl font-bold">
{item.step}
</div>
<h3 className="font-semibold mb-2">{item.title}</h3>
<p className="text-gray-600 text-sm">{item.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* PANEL TYPES */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Panel Upgrade Options</h2>
<div className="grid md:grid-cols-3 gap-6">
{[
{
title: '100A to 150A Upgrade',
price: 'Starting at $2,200',
features: ['Suitable for smaller homes', '20-24 circuit capacity', 'Standard GFCI protection', 'Permits included']
},
{
title: '100A to 200A Upgrade',
price: 'Starting at $2,800',
features: ['Most popular choice', '40-42 circuit capacity', 'AFCI/GFCI protection', 'Future expansion ready'],
popular: true
},
{
title: '200A to 400A Upgrade',
price: 'Custom Quote',
features: ['Large homes/shops', 'Maximum capacity', 'Smart panel options', 'EV charging ready']
}
].map((option, i) => (
<div key={i} className={`rounded-lg p-6 border-2 ${option.popular ? 'border-brand-green bg-green-50' : 'border-gray-200 bg-white'}`}>
{option.popular && (
<div className="text-center mb-4">
<span className="inline-block px-3 py-1 bg-brand-green text-black text-sm font-semibold rounded-full">
Most Popular
</span>
</div>
)}
<h3 className="text-xl font-semibold mb-2">{option.title}</h3>
<p className="text-2xl font-bold text-brand-green mb-4">{option.price}</p>
<ul className="space-y-2 mb-6">
{option.features.map((feature, j) => (
<li key={j} className="flex items-center gap-2 text-sm">
<span className="text-brand-green">✓</span>
{feature}
</li>
))}
</ul>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-4 py-3 text-black font-semibold w-full"
>
Get Quote
</a>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<FAQ items={panelFaq} />
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Ready to Upgrade Your Electrical Panel?</h2>
<p className="mt-2 text-gray-700">
Get a free assessment and detailed quote. We handle permits, installation, and inspection coordination.
</p>
<p className="mt-4 font-semibold">Call: (361) 885-0315</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="service-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(serviceSchema) }}
/>
<Script
id="faq-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</>
);
}

View File

@@ -0,0 +1,293 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Residential Electrician Corpus Christi | Home Electrical Services',
description: 'Professional residential electrical services in Corpus Christi. Wiring, lighting, panel upgrades, safety inspections. Licensed & insured. Call (361) 885-0315.',
openGraph: {
title: 'Residential Electrician Corpus Christi | Home Electrical Services',
description: 'Professional residential electrical services in Corpus Christi. Wiring, lighting, panel upgrades, safety inspections.',
images: ['/og/residential-electrician-1200x630.jpg']
}
};
const residentialFaq: QA[] = [
{
q: 'What residential electrical services do you offer?',
a: 'We provide complete residential electrical services including wiring, lighting, panel upgrades, outlet installation, ceiling fans, safety inspections, and emergency repairs.'
},
{
q: 'Do you handle electrical permits for residential work?',
a: 'Yes, we handle all necessary permits and coordinate inspections with the City of Corpus Christi for residential electrical work.'
},
{
q: 'How quickly can you respond to residential electrical emergencies?',
a: 'We respond to residential electrical emergencies within 60 minutes in Corpus Christi, available 24/7 including weekends and holidays.'
},
{
q: 'Do you offer free estimates for residential work?',
a: 'Yes, we provide free estimates for all residential electrical work. We\'ll assess your needs and provide detailed pricing before starting any work.'
}
];
export default function ResidentialElectricianPage() {
const serviceSchema = {
'@context': 'https://schema.org',
'@type': 'Service',
name: 'Residential Electrical Services',
description: 'Professional residential electrical services in Corpus Christi, TX',
provider: {
'@type': 'LocalBusiness',
name: 'C & I Electrical Contractors',
telephone: '+1-361-885-0315'
},
serviceType: 'Residential Electrical Service',
areaServed: ['Corpus Christi', 'Flour Bluff', 'Portland', 'Aransas Pass', 'Rockport']
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: residentialFaq.map(({q, a}) => ({
'@type': 'Question',
name: q,
acceptedAnswer: {
'@type': 'Answer',
text: a
}
}))
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">Residential Electrician in Corpus Christi</h1>
<p className="mt-4 text-lg">Professional electrical services for your home. From <b>wiring and lighting to panel upgrades and safety inspections</b>, we keep your family safe and comfortable.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Call for Free Estimate
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Schedule Service
</a>
</div>
<div className="mt-4 text-white/90">
<p> Licensed & insured residential electricians</p>
<p> Free estimates & upfront pricing</p>
<p> Same-day service available</p>
<p> 1-year warranty on all work</p>
</div>
</div>
<div>
<Image
src="/images/residential.png"
alt="Professional residential electrician working in Corpus Christi home"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* SERVICES */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Complete Residential Electrical Services</h2>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-6">
{[
{
title: 'Electrical Wiring',
description: 'New wiring, rewiring, circuit installation, and electrical system upgrades',
services: ['New construction wiring', 'Rewiring old homes', 'Circuit installation', 'GFCI/AFCI protection']
},
{
title: 'Lighting Installation',
description: 'Interior and exterior lighting, ceiling fans, and smart lighting systems',
services: ['Recessed lighting', 'Ceiling fan installation', 'Exterior lighting', 'LED upgrades']
},
{
title: 'Outlet & Switch Installation',
description: 'New outlets, switches, USB outlets, and electrical device installation',
services: ['USB outlets', 'Smart switches', 'GFCI outlets', 'Outlet upgrades']
},
{
title: 'Panel Upgrades',
description: 'Electrical panel upgrades from 100A to 200A service capacity',
services: ['100A to 200A upgrades', 'New panel installation', 'Breaker replacement', 'Load calculations']
},
{
title: 'Safety Inspections',
description: 'Electrical safety inspections and code compliance assessments',
services: ['Home safety inspections', 'Code compliance', 'Hazard identification', 'Safety recommendations']
},
{
title: 'Emergency Repairs',
description: '24/7 emergency electrical repairs and troubleshooting',
services: ['Power outages', 'Hot outlets', 'Electrical fires', 'Storm damage']
}
].map((service, i) => (
<div key={i} className="bg-white border rounded-lg p-6 shadow-card">
<h3 className="font-semibold text-lg mb-2">{service.title}</h3>
<p className="text-gray-600 mb-3">{service.description}</p>
<ul className="text-sm text-gray-500 space-y-1">
{service.services.map((item, j) => (
<li key={j}> {item}</li>
))}
</ul>
</div>
))}
</div>
</div>
</section>
{/* WHY CHOOSE US */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Why Corpus Christi Homeowners Choose Us</h2>
<div className="grid md:grid-cols-3 gap-8">
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">🛡</span>
</div>
<h3 className="text-lg font-semibold mb-2">Safety First</h3>
<p className="text-gray-600">All work meets Texas electrical codes. We prioritize safety for your family with proper installation and testing.</p>
</div>
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">💰</span>
</div>
<h3 className="text-lg font-semibold mb-2">Fair Pricing</h3>
<p className="text-gray-600">Transparent, upfront pricing with no hidden fees. We provide detailed estimates before starting any work.</p>
</div>
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">🔧</span>
</div>
<h3 className="text-lg font-semibold mb-2">Quality Work</h3>
<p className="text-gray-600">Professional installation using quality materials. All work backed by our warranty and guaranteed to pass inspection.</p>
</div>
</div>
</div>
</section>
{/* COMMON PROJECTS */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Common Residential Projects</h2>
<div className="grid md:grid-cols-2 gap-8">
<div className="space-y-6">
{[
{
title: 'Kitchen Remodeling',
desc: 'Electrical work for kitchen renovations including new outlets, lighting, and appliance circuits'
},
{
title: 'Bathroom Upgrades',
desc: 'GFCI outlets, lighting, exhaust fans, and electrical safety upgrades for bathrooms'
},
{
title: 'Garage Electrical',
desc: 'Garage outlets, lighting, EV charger installation, and workshop electrical needs'
},
{
title: 'Outdoor Lighting',
desc: 'Landscape lighting, security lighting, and outdoor electrical installations'
},
{
title: 'Smart Home Integration',
desc: 'Smart switches, outlets, lighting controls, and home automation electrical work'
},
{
title: 'Electrical Troubleshooting',
desc: 'Diagnosis and repair of electrical problems, flickering lights, and circuit issues'
}
].map((project, i) => (
<div key={i} className="flex gap-4">
<div className="w-8 h-8 bg-brand-green text-black rounded-full flex items-center justify-center text-sm font-bold flex-shrink-0">
</div>
<div>
<h3 className="font-semibold text-lg">{project.title}</h3>
<p className="text-gray-600">{project.desc}</p>
</div>
</div>
))}
</div>
<div className="bg-brand-grayBg rounded-lg p-6">
<h3 className="text-xl font-semibold mb-4">Free Home Electrical Assessment</h3>
<p className="text-gray-700 mb-4">
Not sure what electrical work your home needs? Our licensed electricians provide free assessments to evaluate your electrical system.
</p>
<ul className="text-sm text-gray-600 space-y-2 mb-6">
<li> Safety inspection</li>
<li> Code compliance check</li>
<li> Upgrade recommendations</li>
<li> Detailed written estimate</li>
</ul>
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-4 py-3 text-black font-semibold w-full"
>
Schedule Free Assessment
</a>
</div>
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<FAQ items={residentialFaq} />
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Ready to Upgrade Your Home's Electrical System?</h2>
<p className="mt-2 text-gray-700">
Get professional residential electrical service from Corpus Christi's trusted electricians. Free estimates and same-day service available.
</p>
<ul className="mt-4 space-y-2 text-sm text-gray-600">
<li> Licensed & insured</li>
<li> Free estimates</li>
<li> Warranty on all work</li>
<li> Emergency service available</li>
</ul>
<p className="mt-4 text-lg font-semibold">Call: (361) 885-0315</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="service-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(serviceSchema) }}
/>
<Script
id="faq-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</>
);
}

View File

@@ -0,0 +1,276 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Electrician in Flour Bluff, TX | 24/7 Emergency Service',
description: 'Licensed electrician serving Flour Bluff, Texas. Emergency repairs, panel upgrades, lighting. Fast response times. Call (361) 885-0315.',
openGraph: {
title: 'Electrician in Flour Bluff, TX | 24/7 Emergency Service',
description: 'Licensed electrician serving Flour Bluff, Texas. Emergency repairs, panel upgrades, lighting. Fast response times.',
images: ['/og/flour-bluff-electrician-1200x630.jpg']
}
};
const flourBluffFaq: QA[] = [
{
q: 'Do you provide emergency electrical service in Flour Bluff?',
a: 'Yes, we offer 24/7 emergency electrical service throughout Flour Bluff with typical response times under 60 minutes.'
},
{
q: 'Are you licensed to work in Flour Bluff?',
a: 'Yes, we\'re licensed Texas electrical contractors (TECL ####) and fully insured to work throughout Nueces County including Flour Bluff.'
},
{
q: 'What electrical services do you offer in Flour Bluff?',
a: 'We provide complete electrical services including emergency repairs, panel upgrades, lighting installation, outlet installation, and code compliance work.'
}
];
export default function FlourBluffElectricianPage() {
const locationSchema = {
'@context': 'https://schema.org',
'@type': 'Electrician',
name: 'C & I Electrical Contractors - Flour Bluff',
telephone: '+1-361-885-0315',
address: {
'@type': 'PostalAddress',
streetAddress: '2801 S Port Ave',
addressLocality: 'Corpus Christi',
addressRegion: 'TX',
postalCode: '78405',
addressCountry: 'US'
},
areaServed: 'Flour Bluff, TX',
url: 'https://www.cielectrical.com/flour-bluff/electrician',
serviceArea: {
'@type': 'GeoCircle',
geoMidpoint: {
'@type': 'GeoCoordinates',
latitude: 27.6648,
longitude: -97.2316
},
geoRadius: '15'
}
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: flourBluffFaq.map(({q, a}) => ({
'@type': 'Question',
name: q,
acceptedAnswer: {
'@type': 'Answer',
text: a
}
}))
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">Trusted Electrician in Flour Bluff, TX</h1>
<p className="mt-4 text-lg">Serving Flour Bluff residents with <b>reliable electrical services since 2005</b>. Emergency repairs, panel upgrades, and more.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Call Now 24/7
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Free Quote
</a>
</div>
<div className="mt-6 grid grid-cols-3 gap-4 text-sm">
<div className="text-center">
<div className="text-2xl font-bold text-brand-green">24/7</div>
<div className="text-white/80">Emergency Service</div>
</div>
<div className="text-center">
<div className="text-2xl font-bold text-brand-green">&lt;60min</div>
<div className="text-white/80">Average Response</div>
</div>
<div className="text-center">
<div className="text-2xl font-bold text-brand-green">19+</div>
<div className="text-white/80">Years Experience</div>
</div>
</div>
</div>
<div>
<Image
src="/images/flour-bluff-electrician.jpg"
alt="Licensed electrician working in Flour Bluff, Texas home"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* KEY BENEFITS */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Why Flour Bluff Residents Choose Us</h2>
<div className="grid md:grid-cols-3 gap-8">
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">🏠</span>
</div>
<h3 className="text-lg font-semibold mb-2">Local Knowledge</h3>
<p className="text-gray-600">We know Flour Bluff homes and common electrical issues in the area. From older homes near the water to newer developments.</p>
</div>
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black"></span>
</div>
<h3 className="text-lg font-semibold mb-2">Fast Response</h3>
<p className="text-gray-600">Close proximity means faster response times for Flour Bluff emergency calls. We're typically on-site within 45 minutes.</p>
</div>
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">✓</span>
</div>
<h3 className="text-lg font-semibold mb-2">Code Compliant</h3>
<p className="text-gray-600">All work meets or exceeds Texas electrical codes. We handle permits and inspections for your peace of mind.</p>
</div>
</div>
</div>
</section>
{/* SERVICES */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Electrical Services in Flour Bluff</h2>
<div className="grid md:grid-cols-2 gap-6">
{[
{
title: 'Emergency Electrical Repair',
desc: 'Power outages, tripped breakers, hot outlets, electrical hazards',
link: '/corpus-christi/emergency-electrician'
},
{
title: 'Panel Upgrades',
desc: '100A to 200A service upgrades, AFCI/GFCI installation',
link: '/corpus-christi/panel-upgrades'
},
{
title: 'Lighting Installation',
desc: 'Indoor/outdoor lighting, ceiling fans, LED retrofits',
link: '/residential'
},
{
title: 'Outlet & Switch Work',
desc: 'GFCI outlets, USB outlets, dimmer switches, new circuits',
link: '/residential'
},
{
title: 'EV Charging Stations',
desc: 'Tesla Wall Connector, NEMA 14-50 outlets, Level 2 chargers',
link: '/corpus-christi/ev-charger-install'
},
{
title: 'Safety Inspections',
desc: 'Home electrical inspections, code compliance, insurance requirements',
link: '/residential'
}
].map((service, i) => (
<a
key={i}
href={service.link}
className="bg-white rounded-lg p-6 shadow-card hover:shadow-md transition-shadow"
>
<h3 className="font-semibold text-lg mb-2">{service.title}</h3>
<p className="text-gray-600">{service.desc}</p>
<span className="text-brand-green text-sm font-medium mt-2 inline-block">Learn more </span>
</a>
))}
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<FAQ items={flourBluffFaq} />
</div>
</section>
{/* CONTACT INFO */}
<section className="py-16 bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 text-center">
<h2 className="text-2xl font-semibold mb-4">Serving Flour Bluff & Surrounding Areas</h2>
<p className="text-white/90 mb-8">Licensed, insured, and ready to help with all your electrical needs.</p>
<div className="grid md:grid-cols-3 gap-8 mb-12">
<div>
<h3 className="font-semibold mb-2">Address</h3>
<p className="text-white/80">2801 S Port Ave<br/>Corpus Christi, TX 78405</p>
</div>
<div>
<h3 className="font-semibold mb-2">Phone</h3>
<p className="text-white/80">(361) 885-0315</p>
</div>
<div>
<h3 className="font-semibold mb-2">Hours</h3>
<p className="text-white/80">24/7 Emergency<br/>Mon-Fri 7AM-5PM Regular</p>
</div>
</div>
<div className="flex flex-wrap justify-center gap-4">
<a
href="/residential"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-4 py-3 text-black font-semibold"
>
Residential Services
</a>
<a
href="/commercial"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-4 py-3 font-semibold"
>
Commercial Services
</a>
</div>
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Need an Electrician in Flour Bluff?</h2>
<p className="mt-2 text-gray-700">
Get fast, professional electrical service from your local Flour Bluff electricians. Call now or request a free quote.
</p>
<p className="mt-4 font-semibold">Call: (361) 885-0315</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="location-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(locationSchema) }}
/>
<Script
id="faq-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</>
);
}

222
web/app/globals.css Normal file
View File

@@ -0,0 +1,222 @@
@import "../styles/fonts.css";
@tailwind base;
@tailwind components;
@tailwind utilities;
/* Font imports */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap');
/* Screen reader only utility - hidden unless focused */
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
.focus\:not-sr-only:focus {
position: static;
width: auto;
height: auto;
padding: 0.5rem 0.75rem;
margin: 0;
overflow: visible;
clip: auto;
white-space: normal;
}
/* Ensure focus indicators are visible */
*:focus {
outline: 2px solid #16A34A;
outline-offset: 2px;
}
/* Hide focus outline when using mouse */
:focus:not(:focus-visible) {
outline: none;
}
/* Visible focus for keyboard navigation */
:focus-visible {
outline: 2px solid #16A34A;
outline-offset: 2px;
}
/* Enhanced Button System */
.btn-primary {
@apply bg-gradient-to-r from-brand-green to-green-600 text-white font-semibold px-8 py-4 rounded-button
hover:from-green-600 hover:to-green-700 hover:shadow-lg hover:-translate-y-0.5
focus:ring-4 focus:ring-green-200 focus:shadow-lg
active:from-green-700 active:to-green-800 active:translate-y-0
transition-all duration-300 ease-out;
}
.btn-secondary {
@apply bg-white border-2 border-brand-orange text-brand-orange font-semibold px-8 py-4 rounded-button
hover:bg-gradient-to-r hover:from-brand-orange hover:to-orange-600 hover:text-white hover:border-transparent
hover:shadow-lg hover:-translate-y-0.5
focus:ring-4 focus:ring-orange-200 focus:shadow-lg
active:from-orange-600 active:to-orange-700 active:translate-y-0
transition-all duration-300 ease-out;
}
.btn-outline {
@apply bg-transparent border-2 border-brand-green text-brand-green font-semibold px-8 py-4 rounded-button
hover:bg-brand-green hover:text-white hover:shadow-lg hover:-translate-y-0.5
focus:ring-4 focus:ring-green-200 focus:shadow-lg
active:bg-green-700 active:translate-y-0
transition-all duration-300 ease-out;
}
.btn-ghost {
@apply bg-transparent text-brand-green font-semibold px-8 py-4 rounded-button
hover:bg-green-50 hover:text-green-700 hover:shadow-md
focus:ring-4 focus:ring-green-200
active:bg-green-100
transition-all duration-200 ease-out;
}
.btn-danger {
@apply bg-gradient-to-r from-brand-danger to-red-600 text-white font-semibold px-8 py-4 rounded-button
hover:from-red-600 hover:to-red-700 hover:shadow-lg hover:-translate-y-0.5
focus:ring-4 focus:ring-red-200 focus:shadow-lg
active:from-red-700 active:to-red-800 active:translate-y-0
transition-all duration-300 ease-out;
}
.btn-sm {
@apply px-6 py-3 text-sm;
}
.btn-lg {
@apply px-10 py-5 text-lg;
}
/* Enhanced Card System */
.card {
@apply bg-white rounded-card shadow-card p-6 border border-gray-100
hover:shadow-xl hover:-translate-y-1 hover:border-gray-200
transition-all duration-300 ease-out;
}
.card-elevated {
@apply bg-white rounded-card shadow-lg p-8 border border-gray-100
hover:shadow-2xl hover:-translate-y-2 hover:border-gray-200
transition-all duration-300 ease-out;
}
.card-gradient {
@apply bg-gradient-to-br from-white to-gray-50 rounded-card shadow-card p-6 border border-gray-100
hover:shadow-xl hover:-translate-y-1 hover:from-gray-50 hover:to-gray-100
transition-all duration-300 ease-out;
}
.card-dark {
@apply bg-gradient-to-br from-brand-dark to-slate-800 text-white rounded-card shadow-lg p-6
hover:shadow-xl hover:-translate-y-1 hover:from-slate-800 hover:to-brand-dark
transition-all duration-300 ease-out;
}
/* Gradient Utilities */
.gradient-primary {
@apply bg-gradient-to-r from-brand-green to-green-600;
}
.gradient-secondary {
@apply bg-gradient-to-r from-brand-orange to-orange-600;
}
.gradient-dark {
@apply bg-gradient-to-br from-brand-dark to-slate-800;
}
.gradient-light {
@apply bg-gradient-to-br from-gray-50 to-white;
}
.gradient-text {
@apply bg-gradient-to-r from-brand-green to-green-600 bg-clip-text text-transparent;
}
.gradient-text-orange {
@apply bg-gradient-to-r from-brand-orange to-orange-600 bg-clip-text text-transparent;
}
/* Enhanced Typography */
.text-gradient {
@apply bg-gradient-to-r from-brand-green to-green-600 bg-clip-text text-transparent;
}
.text-gradient-orange {
@apply bg-gradient-to-r from-brand-orange to-orange-600 bg-clip-text text-transparent;
}
.font-light {
font-weight: 300;
}
.font-medium {
font-weight: 500;
}
.font-semibold {
font-weight: 600;
}
.font-bold {
font-weight: 700;
}
.font-extrabold {
font-weight: 800;
}
/* Container */
.container-custom {
@apply max-w-container mx-auto px-6 md:px-8;
}
/* Animation Utilities */
.animate-fade-in {
animation: fadeIn 0.6s ease-out;
}
.animate-slide-up {
animation: slideUp 0.6s ease-out;
}
.animate-scale-in {
animation: scaleIn 0.4s ease-out;
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
@keyframes slideUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes scaleIn {
from {
opacity: 0;
transform: scale(0.95);
}
to {
opacity: 1;
transform: scale(1);
}
}

319
web/app/layout.tsx Normal file
View File

@@ -0,0 +1,319 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import './globals.css';
import SkipLink from '@/components/SkipLink';
import StickyEmergencyRibbon from '@/components/StickyEmergencyRibbon';
import Header from '@/components/Header';
import StickyCallButton from '@/components/StickyCallButton';
import Footer from '@/components/Footer';
export const metadata: Metadata = {
title: '24/7 Electricians in Corpus Christi | C & I Electrical Contractors',
description: 'Licensed & insured electricians in Corpus Christi. Emergency repairs, panel upgrades, lighting. Under-60-minute response. Call (361) 885-0315 for 24/7 service.',
metadataBase: new URL(process.env.NEXT_PUBLIC_SITE_URL || 'http://localhost:3000'),
icons: {
icon: '/images/favicon.png',
shortcut: '/images/favicon.png',
apple: '/images/favicon.png',
},
openGraph: {
title: '24/7 Electricians in Corpus Christi | C & I Electrical Contractors',
description: 'Licensed & insured electricians in Corpus Christi. Emergency repairs, panel upgrades, lighting. Under-60-minute response.',
images: ['/og/home-1200x630.jpg'],
type: 'website',
locale: 'en_US',
siteName: 'C & I Electrical Contractors',
},
twitter: {
card: 'summary_large_image',
title: '24/7 Electricians in Corpus Christi | C & I Electrical Contractors',
description: 'Licensed & insured electricians in Corpus Christi. Emergency repairs, panel upgrades, lighting. Under-60-minute response.',
images: ['/og/home-1200x630.jpg'],
},
alternates: {
canonical: 'https://www.cielectrical.com',
},
robots: {
index: true,
follow: true,
googleBot: {
index: true,
follow: true,
'max-video-preview': -1,
'max-image-preview': 'large',
'max-snippet': -1,
},
},
};
export default function RootLayout({ children }: { children: React.ReactNode }) {
const localBusinessSchema = {
'@context': 'https://schema.org',
'@type': 'LocalBusiness',
'@id': 'https://www.cielectrical.com/#localbusiness',
name: 'C & I Electrical Contractors',
alternateName: 'C&I Electrical Constructor',
description: 'Licensed electrical contractors serving Corpus Christi and surrounding areas with 24/7 emergency electrical services, panel upgrades, EV charger installation, and commercial electrical solutions.',
url: 'https://www.cielectrical.com',
telephone: '+1-361-885-0315',
email: 'info@cielectrical.com',
address: {
'@type': 'PostalAddress',
streetAddress: '2801 S Port Ave',
addressLocality: 'Corpus Christi',
addressRegion: 'TX',
postalCode: '78405',
addressCountry: 'US'
},
geo: {
'@type': 'GeoCoordinates',
latitude: 27.8006,
longitude: -97.3964
},
areaServed: [
{
'@type': 'City',
name: 'Corpus Christi'
},
{
'@type': 'City',
name: 'Flour Bluff'
},
{
'@type': 'City',
name: 'Portland'
},
{
'@type': 'City',
name: 'Aransas Pass'
},
{
'@type': 'City',
name: 'Rockport'
}
],
serviceArea: {
'@type': 'GeoCircle',
geoMidpoint: {
'@type': 'GeoCoordinates',
latitude: 27.8006,
longitude: -97.3964
},
geoRadius: '50000'
},
image: [
'https://www.cielectrical.com/og/home-1200x630.jpg',
'https://www.cielectrical.com/public/images/hero-electrician.jpg'
],
logo: 'https://www.cielectrical.com/public/logo.svg',
foundingDate: '2005',
openingHoursSpecification: [
{
'@type': 'OpeningHoursSpecification',
dayOfWeek: ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'],
opens: '07:00',
closes: '17:00'
},
{
'@type': 'OpeningHoursSpecification',
dayOfWeek: ['Saturday', 'Sunday'],
opens: '00:00',
closes: '23:59',
description: '24/7 Emergency Service Available'
}
],
priceRange: '$$',
paymentAccepted: ['Cash', 'Check', 'Credit Card', 'Debit Card'],
hasOfferCatalog: {
'@type': 'OfferCatalog',
name: 'Electrical Services',
itemListElement: [
{
'@type': 'Offer',
itemOffered: {
'@type': 'Service',
name: 'Emergency Electrical Repair',
description: '24/7 emergency electrical services with under 60-minute response time'
}
},
{
'@type': 'Offer',
itemOffered: {
'@type': 'Service',
name: 'Panel Upgrades',
description: 'Electrical panel upgrades from 100A to 200A'
}
},
{
'@type': 'Offer',
itemOffered: {
'@type': 'Service',
name: 'EV Charger Installation',
description: 'Electric vehicle charger installation and setup'
}
}
]
},
aggregateRating: {
'@type': 'AggregateRating',
ratingValue: '4.9',
reviewCount: '200',
bestRating: '5',
worstRating: '1'
},
review: [
{
'@type': 'Review',
author: {
'@type': 'Person',
name: 'Sarah Johnson'
},
reviewRating: {
'@type': 'Rating',
ratingValue: '5',
bestRating: '5'
},
reviewBody: 'Excellent emergency service! They arrived within 30 minutes and fixed our electrical issue quickly and professionally.'
},
{
'@type': 'Review',
author: {
'@type': 'Person',
name: 'Mike Rodriguez'
},
reviewRating: {
'@type': 'Rating',
ratingValue: '5',
bestRating: '5'
},
reviewBody: 'Great work on our panel upgrade. Professional, clean, and completed on time. Highly recommend!'
}
],
hasCredential: [
{
'@type': 'EducationalOccupationalCredential',
credentialCategory: 'License',
name: 'Texas Electrical Contractor License',
recognizedBy: {
'@type': 'Organization',
name: 'Texas Department of Licensing and Regulation'
}
}
],
knowsAbout: [
'Electrical Panel Upgrades',
'Emergency Electrical Repair',
'EV Charger Installation',
'Commercial Electrical Services',
'Residential Electrical Services',
'Electrical Code Compliance',
'Electrical Permitting'
],
makesOffer: [
{
'@type': 'Offer',
description: 'Free estimates for electrical work',
priceSpecification: {
'@type': 'PriceSpecification',
price: '0',
priceCurrency: 'USD'
}
}
]
};
const organizationSchema = {
'@context': 'https://schema.org',
'@type': 'Organization',
'@id': 'https://www.cielectrical.com/#organization',
name: 'C & I Electrical Contractors',
url: 'https://www.cielectrical.com',
logo: 'https://www.cielectrical.com/public/logo.svg',
contactPoint: {
'@type': 'ContactPoint',
telephone: '+1-361-885-0315',
contactType: 'customer service',
areaServed: 'US',
availableLanguage: 'English'
},
sameAs: [
'https://www.facebook.com/cielectrical',
'https://www.google.com/maps?cid=1234567890'
]
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: [
{
'@type': 'Question',
name: 'Do you offer 24/7 emergency electrical services?',
acceptedAnswer: {
'@type': 'Answer',
text: 'Yes, we provide 24/7 emergency electrical services with a response time of under 60 minutes in the Corpus Christi area.'
}
},
{
'@type': 'Question',
name: 'What areas do you serve?',
acceptedAnswer: {
'@type': 'Answer',
text: 'We serve Corpus Christi, Flour Bluff, Portland, Aransas Pass, Rockport, and surrounding areas in Texas.'
}
},
{
'@type': 'Question',
name: 'Are you licensed and insured?',
acceptedAnswer: {
'@type': 'Answer',
text: 'Yes, we are fully licensed electrical contractors in Texas and carry comprehensive insurance for your protection.'
}
},
{
'@type': 'Question',
name: 'Do you offer free estimates?',
acceptedAnswer: {
'@type': 'Answer',
text: 'Yes, we provide free estimates for all electrical work. Contact us at (361) 885-0315 to schedule your free consultation.'
}
}
]
};
return (
<html lang="en">
<head>
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossOrigin="anonymous" />
<link rel="dns-prefetch" href="https://www.google-analytics.com" />
<link rel="dns-prefetch" href="https://www.googletagmanager.com" />
</head>
<body className="bg-white text-black">
<SkipLink />
<StickyEmergencyRibbon />
<Header />
<main id="main">{children}</main>
<Footer />
<StickyCallButton />
{/* Schema.org Structured Data */}
<Script
id="schema-localbusiness"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(localBusinessSchema) }}
/>
<Script
id="schema-organization"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(organizationSchema) }}
/>
<Script
id="schema-faq"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</body>
</html>
);
}

227
web/app/page.tsx Normal file
View File

@@ -0,0 +1,227 @@
'use client';
import Image from 'next/image';
import TrustStrip from '@/components/TrustStrip';
import ServiceCards from '@/components/ServiceCards';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
import { track } from '@/lib/analytics';
import { useVariant } from '@/lib/ab';
const faq: QA[] = [
{
q: 'Do you offer 24/7 emergency service?',
a: 'Yes—dispatch evenings/weekends; average response under 60 minutes.'
},
{
q: 'What areas do you serve?',
a: 'Corpus Christi, Flour Bluff, Portland, Aransas Pass, Rockport.'
},
{
q: 'Are you licensed and insured?',
a: 'Yes—Texas electrical contractor TECL ####; liability & workers\' comp.'
},
{
q: 'Do you handle permits and inspections?',
a: 'Yes. We pull permits and pass final inspection.'
},
{
q: 'What warranty do you provide?',
a: '1-year labor; manufacturer warranty on parts.'
},
];
export default function Home() {
const { variant: abVariant, mounted } = useVariant();
return (
<>
{/* HERO */}
<section className="bg-gradient-dark text-white relative overflow-hidden">
<div className="absolute inset-0 bg-gradient-to-br from-brand-dark/90 to-slate-800/90"></div>
<div className="container-custom py-32 grid md:grid-cols-12 gap-12 items-center relative z-10">
{/* Left Column */}
<div className="md:col-span-6 animate-slide-up">
{/* Eyebrow pill */}
<div className="inline-flex items-center gap-2 bg-gradient-to-r from-red-500 to-red-600 px-6 py-3 rounded-full text-sm font-bold mb-8 shadow-lg">
<span className="text-lg"></span>
24/7 Emergency Available Now
</div>
{/* H1 */}
<h1 className="font-heading font-extrabold text-5xl md:text-6xl mb-8 leading-tight">
24/7 Emergency Electricians in{' '}
<span className="text-gradient">Corpus Christi</span>
</h1>
{/* Subcopy */}
<p className="text-xl text-gray-300 mb-10 max-w-prose leading-relaxed">
Licensed & insured. Code-compliant fixes with{' '}
<strong className="text-gradient font-bold">under-60-minute</strong> average response.
</p>
{/* Primary CTAs */}
<div className="flex flex-col sm:flex-row gap-6 mb-10">
<a
href="tel:+13618850315"
onClick={() => mounted && track('cta_click', { cta: 'call_now_hero', variant: abVariant })}
className="btn-primary btn-lg text-center"
>
📞 Call Now 24/7
</a>
<a
href="#quote-form"
onClick={() => mounted && track('cta_click', { cta: 'quote_hero', variant: abVariant })}
className="btn-outline btn-lg text-center"
>
Get My Free Quote
</a>
</div>
{/* Trust row */}
<div className="flex flex-wrap items-center gap-8 text-sm text-gray-300">
<span className="flex items-center gap-2">
<span className="text-yellow-400 text-lg"></span>
<span className="font-semibold">4.9 Rating (200+ locals)</span>
</span>
<span className="hidden sm:inline text-gray-500"></span>
<span className="font-semibold">A+ BBB</span>
<span className="hidden sm:inline text-gray-500"></span>
<span className="font-semibold">19+ Years</span>
</div>
</div>
{/* Right Column */}
<div className="md:col-span-6 animate-scale-in">
<div className="relative">
<div className="absolute -inset-4 bg-gradient-to-r from-brand-green/20 to-green-600/20 rounded-3xl blur-xl"></div>
<Image
src="/images/banner.png"
alt="Professional electrical services in Corpus Christi - licensed electricians at work"
width={600}
height={450}
sizes="(max-width: 768px) 100vw, 50vw"
priority
className="rounded-3xl shadow-2xl relative z-10"
/>
</div>
</div>
</div>
</section>
{/* TRUST STRIP */}
<TrustStrip />
{/* SERVICES */}
<ServiceCards />
{/* COVERAGE / LOCAL MAP */}
<section className="py-32 bg-white">
<div className="container-custom">
<div className="grid md:grid-cols-2 gap-16 items-center">
{/* Map Placeholder */}
<div className="relative animate-fade-in">
<div className="bg-gradient-to-br from-blue-50 to-blue-100 rounded-3xl h-96 relative overflow-hidden shadow-xl flex items-center justify-center">
<div className="text-center">
<div className="text-6xl mb-4">🗺</div>
<h3 className="font-semibold text-gray-800 mb-2">Service Coverage Area</h3>
<p className="text-gray-600">Interactive map coming soon</p>
</div>
</div>
</div>
{/* Coverage Info */}
<div className="animate-slide-up">
<h2 className="font-heading font-bold text-4xl md:text-5xl mb-8 text-gradient">
Serving Corpus Christi & Nearby
</h2>
<p className="text-xl text-gray-600 mb-10 leading-relaxed">
We provide comprehensive electrical services throughout the greater Corpus Christi area with rapid response times.
</p>
<div className="grid grid-cols-2 gap-6">
<ul className="space-y-4">
<li className="flex items-center gap-3">
<span className="w-3 h-3 bg-gradient-to-r from-brand-green to-green-600 rounded-full"></span>
<span className="font-semibold text-gray-800">Flour Bluff</span>
</li>
<li className="flex items-center gap-3">
<span className="w-3 h-3 bg-gradient-to-r from-brand-green to-green-600 rounded-full"></span>
<span className="font-semibold text-gray-800">Portland</span>
</li>
<li className="flex items-center gap-3">
<span className="w-3 h-3 bg-gradient-to-r from-brand-green to-green-600 rounded-full"></span>
<span className="font-semibold text-gray-800">Aransas Pass</span>
</li>
</ul>
<ul className="space-y-4">
<li className="flex items-center gap-3">
<span className="w-3 h-3 bg-gradient-to-r from-brand-green to-green-600 rounded-full"></span>
<span className="font-semibold text-gray-800">Rockport</span>
</li>
<li className="flex items-center gap-3">
<span className="w-3 h-3 bg-gradient-to-r from-brand-green to-green-600 rounded-full"></span>
<span className="font-semibold text-gray-800">Calallen</span>
</li>
<li className="flex items-center gap-3">
<span className="w-3 h-3 bg-gradient-to-r from-brand-green to-green-600 rounded-full"></span>
<span className="font-semibold text-gray-800">Robstown</span>
</li>
</ul>
</div>
</div>
</div>
</div>
</section>
{/* LEAD BLOCK */}
<section className="py-32 bg-gradient-dark text-white relative overflow-hidden">
<div className="absolute inset-0 bg-gradient-to-br from-brand-dark/95 to-slate-800/95"></div>
<div className="container-custom text-center relative z-10">
<h2 className="font-heading font-bold text-4xl md:text-5xl mb-8 text-gradient">
Ready to solve your electrical problem?
</h2>
<div className="grid md:grid-cols-3 gap-8 mb-16">
<div className="flex items-center justify-center gap-4 p-6 rounded-2xl bg-white/10 backdrop-blur-sm">
<span className="text-3xl">📍</span>
<div className="text-left">
<p className="font-bold text-lg">2801 S Port Ave</p>
<p className="text-gray-300">Corpus Christi, TX 78405</p>
</div>
</div>
<div className="flex items-center justify-center gap-4 p-6 rounded-2xl bg-white/10 backdrop-blur-sm">
<span className="text-3xl">📞</span>
<div className="text-left">
<p className="font-bold text-lg">(361) 885-0315</p>
<p className="text-gray-300">24/7 Emergency</p>
</div>
</div>
<div className="flex items-center justify-center gap-4 p-6 rounded-2xl bg-white/10 backdrop-blur-sm">
<span className="text-3xl"></span>
<div className="text-left">
<p className="font-bold text-lg">info@cielectrical.com</p>
<p className="text-gray-300">Mon-Fri 7AM-5PM</p>
</div>
</div>
</div>
<div className="flex flex-col sm:flex-row gap-6 justify-center">
<a href="tel:+13618850315" className="btn-primary btn-lg">
Call Now
</a>
<a href="#quote-form" className="btn-outline btn-lg">
Get Free Quote
</a>
</div>
</div>
</section>
{/* FAQ */}
<FAQ items={faq} />
{/* CONTACT FORM */}
<div id="quote-form">
<ContactForm compact />
</div>
</>
);
}

View File

@@ -0,0 +1,286 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Electrician in Portland, TX | Licensed & Insured',
description: 'Trusted electrician serving Portland, Texas. 24/7 emergency service, panel upgrades, lighting installation. Call (361) 885-0315.',
openGraph: {
title: 'Electrician in Portland, TX | Licensed & Insured',
description: 'Trusted electrician serving Portland, Texas. 24/7 emergency service, panel upgrades, lighting installation.',
images: ['/og/portland-tx-electrician-1200x630.jpg']
}
};
const portlandFaq: QA[] = [
{
q: 'Do you service Portland, TX residents?',
a: 'Yes, we provide comprehensive electrical services to Portland, Texas residents including emergency repairs, installations, and upgrades.'
},
{
q: 'How quickly can you respond to Portland emergency calls?',
a: 'We typically respond to Portland electrical emergencies within 45-60 minutes, available 24/7 including weekends.'
},
{
q: 'Do you handle electrical permits in Portland?',
a: 'Yes, we handle all necessary permits and coordinate inspections with the City of Portland for electrical work.'
}
];
export default function PortlandElectricianPage() {
const locationSchema = {
'@context': 'https://schema.org',
'@type': 'Electrician',
name: 'C & I Electrical Contractors - Portland',
telephone: '+1-361-885-0315',
address: {
'@type': 'PostalAddress',
streetAddress: '2801 S Port Ave',
addressLocality: 'Corpus Christi',
addressRegion: 'TX',
postalCode: '78405',
addressCountry: 'US'
},
areaServed: 'Portland, TX',
url: 'https://www.cielectrical.com/portland-tx/electrician',
serviceArea: {
'@type': 'GeoCircle',
geoMidpoint: {
'@type': 'GeoCoordinates',
latitude: 27.8767,
longitude: -97.3244
},
geoRadius: '20'
}
};
const faqSchema = {
'@context': 'https://schema.org',
'@type': 'FAQPage',
mainEntity: portlandFaq.map(({q, a}) => ({
'@type': 'Question',
name: q,
acceptedAnswer: {
'@type': 'Answer',
text: a
}
}))
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">Licensed Electrician Serving Portland, TX</h1>
<p className="mt-4 text-lg">Professional electrical services for Portland residents and businesses. <b>Emergency repairs, panel upgrades, and installations</b> you can trust.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Call Portland Electrician
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Get Free Estimate
</a>
</div>
<div className="mt-6 grid grid-cols-3 gap-4 text-sm">
<div className="text-center">
<div className="text-2xl font-bold text-brand-green">Licensed</div>
<div className="text-white/80">TECL ####</div>
</div>
<div className="text-center">
<div className="text-2xl font-bold text-brand-green">Insured</div>
<div className="text-white/80">Full Coverage</div>
</div>
<div className="text-center">
<div className="text-2xl font-bold text-brand-green">Local</div>
<div className="text-white/80">Since 2005</div>
</div>
</div>
</div>
<div>
<Image
src="/images/portland-tx-electrician.jpg"
alt="Professional electrician working on residential electrical system in Portland, Texas"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* KEY BENEFITS */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8 text-center">Why Portland Chooses C & I Electrical</h2>
<div className="grid md:grid-cols-3 gap-8">
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">🛡</span>
</div>
<h3 className="text-lg font-semibold mb-2">Safety First</h3>
<p className="text-gray-600">All work meets Texas electrical codes. We prioritize safety for your family and property with proper installation and testing.</p>
</div>
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">💰</span>
</div>
<h3 className="text-lg font-semibold mb-2">Fair Pricing</h3>
<p className="text-gray-600">Transparent, upfront pricing with no hidden fees. We provide detailed estimates before starting any work.</p>
</div>
<div className="text-center">
<div className="w-16 h-16 mx-auto mb-4 bg-brand-green rounded-full flex items-center justify-center">
<span className="text-2xl text-black">🔧</span>
</div>
<h3 className="text-lg font-semibold mb-2">Quality Work</h3>
<p className="text-gray-600">Professional installation using quality materials. All work backed by our warranty and guaranteed to pass inspection.</p>
</div>
</div>
</div>
</section>
{/* SERVICES */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Complete Electrical Services for Portland</h2>
<div className="grid md:grid-cols-2 gap-6">
{[
{
title: 'Emergency Service',
desc: '24/7 emergency electrical repairs, power restoration, safety hazards',
icon: '🚨'
},
{
title: 'Panel & Service Upgrades',
desc: 'Electrical panel upgrades, service entrance, capacity increases',
icon: '⚡'
},
{
title: 'Residential Wiring',
desc: 'New circuits, rewiring, outlet installation, switch upgrades',
icon: '🏡'
},
{
title: 'Lighting Solutions',
desc: 'Interior/exterior lighting, ceiling fans, LED conversions',
icon: '💡'
},
{
title: 'Commercial Electrical',
desc: 'Business electrical work, tenant improvements, maintenance',
icon: '🏢'
},
{
title: 'Code & Safety',
desc: 'Code compliance, safety inspections, permit coordination',
icon: '✅'
}
].map((service, i) => (
<div key={i} className="bg-white rounded-lg p-6 shadow-card">
<div className="flex items-start gap-4">
<span className="text-3xl">{service.icon}</span>
<div>
<h3 className="font-semibold text-lg mb-2">{service.title}</h3>
<p className="text-gray-600">{service.desc}</p>
</div>
</div>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<FAQ items={portlandFaq} />
</div>
</section>
{/* SERVICE AREA */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4 text-center">
<h2 className="text-2xl font-semibold mb-8">Proudly Serving Portland & Surrounding Areas</h2>
<div className="grid md:grid-cols-4 gap-4 mb-12">
{[
'Portland, TX',
'Gregory, TX',
'Ingleside, TX',
'Taft, TX'
].map((area, i) => (
<div key={i} className="bg-white rounded-lg p-4 shadow-card">
<p className="font-medium">{area}</p>
</div>
))}
</div>
<div className="bg-white rounded-lg p-8">
<h3 className="text-xl font-semibold mb-4">Business Information</h3>
<div className="grid md:grid-cols-3 gap-8 text-left">
<div>
<h4 className="font-semibold mb-2">Licensed & Insured</h4>
<p className="text-gray-600">Texas Electrical Contractor License TECL ####</p>
<p className="text-gray-600">Full liability and workers' compensation insurance</p>
</div>
<div>
<h4 className="font-semibold mb-2">Contact Information</h4>
<p className="text-gray-600">Phone: (361) 885-0315</p>
<p className="text-gray-600">Email: info@cielectrical.com</p>
<p className="text-gray-600">Available 24/7 for emergencies</p>
</div>
<div>
<h4 className="font-semibold mb-2">Service Hours</h4>
<p className="text-gray-600">Regular: Mon-Fri 7AM-5PM</p>
<p className="text-gray-600">Emergency: 24/7/365</p>
<p className="text-gray-600">Free estimates available</p>
</div>
</div>
</div>
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Ready to Solve Your Electrical Problem?</h2>
<p className="mt-2 text-gray-700">
Get professional electrical service from Portland's trusted electricians. Emergency service available 24/7.
</p>
<ul className="mt-4 space-y-2 text-sm text-gray-600">
<li> Licensed & insured</li>
<li> Free estimates</li>
<li> Warranty on all work</li>
<li> Same-day service available</li>
</ul>
<p className="mt-4 text-lg font-semibold">Call: (361) 885-0315</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="location-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(locationSchema) }}
/>
<Script
id="faq-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }}
/>
</>
);
}

View File

@@ -0,0 +1,252 @@
import type { Metadata } from 'next';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
import TrustStrip from '@/components/TrustStrip';
export const metadata: Metadata = {
title: 'Residential Electrician | Corpus Christi Home Electrical Services',
description: 'Licensed residential electrician in Corpus Christi. Panel upgrades, rewiring, outlet installation, lighting. Safe, code-compliant work. Call (361) 885-0315.',
openGraph: {
title: 'Residential Electrician | Corpus Christi Home Electrical Services',
description: 'Licensed residential electrician in Corpus Christi. Panel upgrades, rewiring, outlet installation, lighting.',
images: ['/og/residential-electrician-1200x630.jpg']
}
};
const residentialFaq: QA[] = [
{
q: 'What residential electrical services do you offer?',
a: 'We provide complete home electrical services including panel upgrades, rewiring, outlet installation, lighting, ceiling fans, and emergency repairs.'
},
{
q: 'Do you work on older homes?',
a: 'Yes, we specialize in upgrading electrical systems in older Corpus Christi homes, bringing them up to current safety codes.'
},
{
q: 'How much does residential electrical work cost?',
a: 'Costs vary by project complexity. We provide free estimates with upfront pricing. Most service calls start around $150.'
},
{
q: 'Do you offer financing for large projects?',
a: 'Yes, we offer financing options for larger residential projects like panel upgrades and whole-home rewiring.'
}
];
export default function Residential() {
return (
<>
{/* HERO */}
<section className="bg-gradient-to-br from-brand-dark to-slate-800 text-white">
<div className="container-custom py-24 grid md:grid-cols-2 gap-12 items-center">
<div>
<h1 className="font-heading font-bold text-4xl md:text-5xl mb-6 leading-tight">
Residential Electricians in Corpus Christi, TX
</h1>
<p className="text-xl text-gray-300 mb-8 max-w-prose">
Trusted by Corpus Christi homeowners for over <strong className="text-brand-green">19 years</strong>. Safe, code-compliant repairs and upgrades for your home.
</p>
<div className="flex flex-col sm:flex-row gap-4 mb-8">
<a
href="tel:+13618850315"
className="btn-primary text-center"
>
Call for Home Service
</a>
<a
href="#quote-form"
className="btn-secondary text-center"
>
Free Home Estimate
</a>
</div>
<TrustStrip />
</div>
<div>
<Image
src="/images/residential.png"
alt="Residential electrician working on home electrical panel in Corpus Christi"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
priority
className="rounded-card shadow-2xl"
/>
</div>
</div>
</section>
{/* SERVICES */}
<section className="py-24 bg-white">
<div className="container-custom">
<h2 className="font-heading font-bold text-3xl text-center mb-12">Home Electrical Services</h2>
<div className="grid md:grid-cols-2 lg:grid-cols-3 gap-8">
{[
{
title: 'Electrical Panel Upgrades',
desc: '100A to 200A service upgrades, AFCI/GFCI protection, modern safety features',
link: '/corpus-christi/panel-upgrades',
icon: '⚡',
bgColor: 'bg-brand-lightBlue'
},
{
title: 'Home Rewiring',
desc: 'Full or partial rewiring, knob & tube replacement, aluminum wire replacement',
price: 'Starting at $3,500',
icon: '🔌',
bgColor: 'bg-brand-lightOrange'
},
{
title: 'Outlet Installation',
desc: 'GFCI outlets, USB outlets, dedicated appliance circuits, outdoor outlets',
price: 'Starting at $150',
icon: '🔋',
bgColor: 'bg-brand-lightGreen'
},
{
title: 'Lighting Installation',
desc: 'Recessed lighting, chandeliers, under-cabinet lighting, outdoor lighting',
price: 'Starting at $200',
icon: '💡',
bgColor: 'bg-brand-lightOrange'
},
{
title: 'Ceiling Fan Installation',
desc: 'New fan installation, fan replacement, electrical box upgrades',
price: 'Starting at $250',
icon: '🌀',
bgColor: 'bg-brand-lightPurple'
},
{
title: 'Emergency Repairs',
desc: 'Power outages, hot outlets, tripped breakers, electrical hazards',
link: '/corpus-christi/emergency-electrician',
icon: '🚨',
bgColor: 'bg-brand-lightOrange'
},
{
title: 'EV Charging Stations',
desc: 'Tesla Wall Connector, NEMA 14-50 outlets, Level 2 charger installation',
link: '/corpus-christi/ev-charger-install',
icon: '🔋',
bgColor: 'bg-brand-lightGreen'
},
{
title: 'Smart Home Wiring',
desc: 'Smart switch installation, home automation, low-voltage wiring',
price: 'Custom quote',
icon: '🏠',
bgColor: 'bg-brand-lightBlue'
},
{
title: 'Safety Inspections',
desc: 'Home electrical inspections, insurance requirements, code compliance',
price: 'Starting at $200',
icon: '✅',
bgColor: 'bg-brand-lightGreen'
}
].map((service, i) => (
<div key={i} className="card group hover:shadow-lg transition-all duration-200">
<div className="flex items-start gap-4">
<div className={`w-12 h-12 ${service.bgColor} rounded-full flex items-center justify-center flex-shrink-0`}>
<span className="text-2xl">{service.icon}</span>
</div>
<div>
<h3 className="font-heading font-semibold text-lg mb-2 group-hover:text-brand-green transition-colors">
{service.title}
</h3>
<p className="text-gray-600 text-sm mb-3">{service.desc}</p>
{service.price && (
<p className="text-brand-green font-semibold text-sm mb-2">{service.price}</p>
)}
{service.link && (
<a href={service.link} className="text-brand-green text-sm font-medium hover:underline">
Learn more
</a>
)}
</div>
</div>
</div>
))}
</div>
</div>
</section>
{/* WHY CHOOSE US */}
<section className="py-24 bg-brand-surface">
<div className="container-custom">
<h2 className="font-heading font-bold text-3xl text-center mb-12">Why Homeowners Choose C & I Electrical</h2>
<div className="grid md:grid-cols-4 gap-8">
{[
{
title: 'Licensed & Insured',
desc: 'Texas electrical contractor license with full insurance coverage',
icon: '🛡️'
},
{
title: 'Code Compliant',
desc: 'All work meets or exceeds current electrical codes and safety standards',
icon: '✅'
},
{
title: 'Warranty Backed',
desc: '1-year warranty on labor, manufacturer warranty on all parts',
icon: '🔒'
},
{
title: 'Clean & Professional',
desc: 'Respect your home with clean work areas and professional service',
icon: '✨'
}
].map((benefit, i) => (
<div key={i} className="card text-center">
<div className="text-4xl mb-4">{benefit.icon}</div>
<h3 className="font-heading font-semibold text-lg mb-2">{benefit.title}</h3>
<p className="text-gray-600 text-sm">{benefit.desc}</p>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<FAQ items={residentialFaq} />
{/* CTA */}
<section className="py-24 bg-brand-dark text-white">
<div className="container-custom">
<div className="grid md:grid-cols-2 gap-12 items-center">
<div>
<h2 className="font-heading font-bold text-3xl mb-6">Ready for Safe, Professional Electrical Work?</h2>
<p className="text-xl text-gray-300 mb-8">
Get a free estimate for your home electrical project. We provide upfront pricing with no surprises.
</p>
<div className="space-y-3 text-sm text-gray-300 mb-8">
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
Licensed Texas electrical contractor
</p>
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
Free estimates on all projects
</p>
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
Same-day service available
</p>
<p className="flex items-center gap-2">
<span className="text-brand-green"></span>
Financing options available
</p>
</div>
<p className="text-xl font-semibold">Call: (361) 885-0315</p>
</div>
<div id="quote-form">
<ContactForm variant="dark" />
</div>
</div>
</div>
</section>
</>
);
}

41
web/app/reviews/page.tsx Normal file
View File

@@ -0,0 +1,41 @@
import type { Metadata } from 'next';
import ReviewsGrid from '@/components/ReviewsGrid';
export const metadata: Metadata = {
title: 'Customer Reviews | C & I Electrical Contractors Corpus Christi',
description: 'Read reviews from 200+ satisfied customers in Corpus Christi. 4.9/5 rating. Licensed electricians with 19+ years of experience.',
openGraph: {
title: 'Customer Reviews | C & I Electrical Contractors Corpus Christi',
description: 'Read reviews from 200+ satisfied customers in Corpus Christi. 4.9/5 rating.',
images: ['/og/reviews-electrician-1200x630.jpg']
}
};
export default function Reviews() {
return (
<>
{/* HERO */}
<section className="bg-gradient-to-br from-brand-dark to-slate-800 text-white">
<div className="container-custom py-24">
<div className="inline-flex items-center gap-2 bg-brand-danger px-4 py-2 rounded-full text-sm font-semibold mb-6 text-black">
<span></span>
24/7 Emergency Electrician Average response under 60 minutes in Corpus Christi
</div>
<h1 className="font-heading font-bold text-4xl md:text-5xl mb-6 leading-tight">
Customer Reviews
</h1>
<p className="text-xl text-gray-300 mb-12 max-w-prose">
from 200+ Corpus Christi reviews 4.9/5
</p>
</div>
</section>
{/* REVIEWS GRID */}
<section className="py-24 bg-white">
<div className="container-custom">
<ReviewsGrid />
</div>
</section>
</>
);
}

View File

@@ -0,0 +1,142 @@
import type { Metadata } from 'next';
import Script from 'next/script';
import Image from 'next/image';
import FAQ, { QA } from '@/components/FAQ';
import ContactForm from '@/components/ContactForm';
export const metadata: Metadata = {
title: 'Electrician in Rockport, TX | Licensed Electrical Services',
description: 'Trusted electrician serving Rockport, Texas. Emergency electrical repairs, panel upgrades, residential & commercial. Call (361) 885-0315.',
openGraph: {
title: 'Electrician in Rockport, TX | Licensed Electrical Services',
description: 'Trusted electrician serving Rockport, Texas. Emergency electrical repairs, panel upgrades, residential & commercial.',
images: ['/og/rockport-electrician-1200x630.jpg']
}
};
const rockportFaq: QA[] = [
{
q: 'Do you service Rockport area homes and businesses?',
a: 'Yes, we provide complete electrical services to Rockport, Texas including emergency repairs, installations, and maintenance.'
},
{
q: 'Are you familiar with coastal electrical challenges?',
a: 'Yes, we understand the unique electrical challenges in coastal areas like Rockport including salt air corrosion and storm damage issues.'
},
{
q: 'Do you offer storm damage electrical repairs?',
a: 'Yes, we provide emergency electrical repairs for storm damage and work with insurance companies for covered repairs.'
}
];
export default function RockportElectricianPage() {
const locationSchema = {
'@context': 'https://schema.org',
'@type': 'Electrician',
name: 'C & I Electrical Contractors - Rockport',
telephone: '+1-361-885-0315',
address: {
'@type': 'PostalAddress',
streetAddress: '2801 S Port Ave',
addressLocality: 'Corpus Christi',
addressRegion: 'TX',
postalCode: '78405',
addressCountry: 'US'
},
areaServed: 'Rockport, TX',
url: 'https://www.cielectrical.com/rockport/electrician'
};
return (
<>
{/* HERO */}
<section className="bg-brand-dark text-white">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h1 className="text-3xl md:text-4xl font-bold">Licensed Electrician in Rockport, TX</h1>
<p className="mt-4 text-lg">Serving Rockport with professional electrical services. <b>Storm damage repairs, panel upgrades, and emergency service</b> available 24/7.</p>
<div className="mt-6 flex gap-3">
<a
href="tel:+13618850315"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg bg-brand-green px-6 py-3 text-black font-semibold"
>
Call Now
</a>
<a
href="/contact"
className="inline-flex min-h-[48px] items-center justify-center rounded-lg border border-brand-orange text-brand-orange px-6 py-3 font-semibold"
>
Get Estimate
</a>
</div>
<div className="mt-6 text-white/90 space-y-1">
<p> Storm damage specialists</p>
<p> Coastal electrical experience</p>
<p> Insurance work welcome</p>
</div>
</div>
<div>
<Image
src="/images/rockport-electrician.jpg"
alt="Electrical services in Rockport, Texas coastal area"
width={600}
height={400}
sizes="(max-width: 768px) 100vw, 50vw"
className="rounded-lg"
/>
</div>
</div>
</section>
{/* SERVICES */}
<section className="py-16 bg-white">
<div className="mx-auto max-w-container px-4">
<h2 className="text-2xl font-semibold mb-8">Rockport Electrical Services</h2>
<div className="grid md:grid-cols-3 gap-6">
{[
'Storm Damage Repairs',
'Emergency Electrical Service',
'Panel Upgrades & Installation',
'Residential Wiring',
'Commercial Electrical',
'Coastal-Rated Installations'
].map((service, i) => (
<div key={i} className="bg-white border rounded-lg p-6 shadow-card">
<h3 className="font-semibold mb-2">{service}</h3>
<p className="text-gray-600 text-sm">Expert service for Rockport area</p>
</div>
))}
</div>
</div>
</section>
{/* FAQ */}
<section className="py-16 bg-brand-grayBg">
<div className="mx-auto max-w-container px-4">
<FAQ items={rockportFaq} />
</div>
</section>
{/* CTA */}
<section className="bg-gray-50">
<div className="mx-auto max-w-container px-4 py-16 grid md:grid-cols-2 gap-8 items-center">
<div>
<h2 className="text-2xl font-semibold">Rockport Electrical Solutions</h2>
<p className="mt-2 text-gray-700">
Professional electrical service for Rockport homes and businesses. Emergency service available.
</p>
</div>
<div>
<ContactForm compact />
</div>
</div>
</section>
<Script
id="location-schema"
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(locationSchema) }}
/>
</>
);
}