1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/__l5e/assets-v1/ed93e224-0f8e-4ba9-8758-1e8b45f1d360/logo.webp" fetchPriority="high"/><link rel="stylesheet" href="/assets/styles-Cts0D5E-.css" data-precedence="default"/><link rel="stylesheet" href="/assets/index-rXFFMGZj.css" type="text/css" data-precedence="default"/>
vendor: 57 bytes, line 1
1<script src="https://www.googletagmanager.com/gtag/js?id=
1G-9L13ZC0Z2G
vendor: 20 bytes, line 1
1" async=""></script>
1<script type="text/javascript" src="//cdn.calltrk.com/companies/162096712/587addf74a2b877f366b/12/swap.js" async=""></script>
1<script type="text/javascript" src="https://webchat.chekkit.io/v1/webchat.js" async=""></script>
1<title>Painting Service Areas | North County San Diego</title><meta name="author" content="AL's Quality Painting, Inc."/><meta name="theme-color" content="#c0392b"/><meta name="google-site-verification" content="sENgZwEhjEQ_zNrn_vWS8EeKSL50aAp38mIKwInxZgM"/><meta property="og:site_name" content="AL's Quality"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="AL's Quality Painting, Inc."/><meta name="twitter:description" content="Premium interior, exterior, cabinet & commercial painting across North County San Diego."/><meta name="description" content="See the cities we paint: Encinitas, Carlsbad, La Jolla, Oceanside, San Marcos, Vista, Escondido, and 20+ more across North County San Diego."/><meta property="og:url" content="https://alsqualitypainting.com/service-areas"/><meta property="og:type" content="website"/><meta property="og:title" content="Painting San Diego for Over 30 Years"/><meta property="og:description" content="Premium house painting across 20+ North County San Diego cities."/><link rel="modulepreload" href="/assets/index-Cz9XUrqm.js"/><link rel="modulepreload" href="/assets/jsx-runtime-DVpe7PXp.js"/><link rel="modulepreload" href="/assets/useStore-BwRBlYdu.js"/><link rel="modulepreload" href="/assets/link-DuIqtq8I.js"/><link rel="modulepreload" href="/assets/matchContext-DJAx_jtZ.js"/><link rel="modulepreload" href="/assets/service-areas-CpQHwoy8.js"/><link rel="modulepreload" href="/assets/MobileCTABar-Dl-IvUJK.js"/><link rel="modulepreload" href="/assets/Reveal-0Buu9r1C.js"/><link rel="modulepreload" href="/assets/TruckDrive-C5HkojGw.js"/><link rel="modulepreload" href="/assets/PageHero-CsEhldpf.js"/><link rel="modulepreload" href="/assets/RelatedLinks-CP0HYU6t.js"/><link rel="icon" href="/__l5e/assets-v1/6783a018-b23b-4438-accb-140d3929f0c1/favicon.ico" type="image/x-icon"/><link rel="canonical" href="https://alsqualitypainting.com/service-areas"/>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":["LocalBusiness","HousePainter"],"@id":"https://alsqualitypainting.com/#business","name":"AL's Quality Painting, Inc.","alternateName":"AL's Quality","description":"Family-run painting contractor serving North County San Diego since 1995. Interior, exterior, cabinet, and commercial painting with a 3-year warranty.","url":"https://alsqualitypainting.com","logo":"https://alsqualitypainting.com/favicon.ico","image":"https://alsqualitypainting.com/favicon.ico","telephone":"+1-760-806-1398","priceRange":"$$","foundingDate":"1995","areaServed":[{"@type":"AdministrativeArea","name":"North County San Diego"},{"@type":"City","name":"Vista"},{"@type":"City","name":"Carlsbad"},{"@type":"City","name":"Encinitas"},{"@type":"City","name":"Oceanside"},{"@type":"City","name":"San Marcos"},{"@type":"City","name":"La Jolla"}],"address":{"@type":"PostalAddress","streetAddress":"1213 Allea Ln","addressLocality":"Vista","addressRegion":"CA","postalCode":"92083","addressCountry":"US"},"openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],"opens":"07:00","closes":"19:00"}],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Painting Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Interior Painting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Exterior Painting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Cabinet Painting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Commercial Painting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Residential Painting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Popcorn Ceiling Removal"}}]}}</script>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"WebSite","@id":"https://alsqualitypainting.com/#website","name":"AL's Quality Painting, Inc.","url":"https://alsqualitypainting.com","publisher":{"@id":"https://alsqualitypainting.com/#business"}}</script>
1<script>
vendor: 323 bytes, line 1
1(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','
1GTM-WLNRJPC3
vendor: 3 bytes, line 1
1');
1</script>
1<script>
vendor: 118 bytes, line 1
1window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments);}gtag('js',new Date());gtag('config','
1G-9L13ZC0Z2G
vendor: 3 bytes, line 1
1');
1gtag('config','AW-955864515');</script>
1<script>var APP_ID = 'e126b691c87448d1ec4318b139a6bbf2C+D8FVYL0MlmqXbtC6XZ8WG5oOC+7s+1Rvn1Zeh1qZs='; window.chekkitSettings = { app_id: APP_ID };</script>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://alsqualitypainting.com/"},{"@type":"ListItem","position":2,"name":"Service Areas","item":"https://alsqualitypainting.com/service-areas"}]}</script>
1<script defer src="/~flock.js" data-proxy-url="/~api/analytics"></script>
1<meta property="og:image" content="https://pub-bb2e103a32db4e198524a2e9ed8f35b4.r2.dev/73342975-0bbc-4f1e-ba6e-4a5622d23351/id-preview-42e2683f--2468f293-678c-4b81-8b7a-7bd1674d95c5.lovable.app-1782090283466.png"><meta name="twitter:image" content="https://pub-bb2e103a32db4e198524a2e9ed8f35b4.r2.dev/73342975-0bbc-4f1e-ba6e-4a5622d23351/id-preview-42e2683f--2468f293-678c-4b81-8b7a-7bd1674d95c5.lovable.app-1782090283466.png"></head><body><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-WLNRJPC3" height="0" width="0" style="display:none;visibility:hidden" title="Google Tag Manager"></iframe></noscript><!--$--><div class="min-h-screen bg-background"><header class="sticky top-0 z-50 bg-background border-b border-border"><div class="bg-gradient-to-r from-primary to-primary-deep text-primary-foreground"><div class="mx-auto flex max-w-7xl items-center justify-between gap-4 px-4 py-1.5 text-xs md:px-6 md:text-sm"><a aria-label="Read our 19+ verified reviews" href="/reviews" class="flex items-center gap-1.5 hover:opacity-90 transition-opacity"><span class="flex" aria-hidden="true"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-3 w-3 fill-accent text-accent md:h-3.5 md:w-3.5" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-3 w-3 fill-accent text-accent md:h-3.5 md:w-3.5" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-3 w-3 fill-accent text-accent md:h-3.5 md:w-3.5" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-3 w-3 fill-accent text-accent md:h-3.5 md:w-3.5" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-star h-3 w-3 fill-accent text-accent md:h-3.5 md:w-3.5" aria-hidden="true"><path d="M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"></path></svg></span><span class="font-semibold">5.0</span>
1<span class="hidden text-primary-foreground/90 sm:inline">· <!-- -->19<!-- -->+ Verified Reviews</span></a><a href="tel:+17608061398" class="flex items-center gap-1.5 font-semibold hover:opacity-90 transition-opacity" aria-label="Call 760-806-1398"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-phone h-3 w-3 md:h-3.5 md:w-3.5" aria-hidden="true"><path d="M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384"></path></svg><span>760-806-1398</span></a></div></div><div class="mx-auto flex max-w-7xl items-center justify-between gap-4 px-4 py-2 md:px-6 md:py-2.5"><a aria-label="AL's Quality Painting, Inc., home" href="/" class="flex items-center group"><img src="/__l5e/assets-v1/ed93e224-0f8e-4ba9-8758-1e8b45f1d360/logo.webp" alt="AL's Quality Painting, Inc." width="480" height="120" class="h-10 md:h-12 w-auto" fetchPriority="high"/></a><nav class="hidden lg:flex items-center gap-7 text-sm"><a href="/" class="relative text-foreground/85 hover:text-foreground transition-colors after:absolute after:left-0 after:right-0 after:-bottom-1 after:h-[2px] after:rounded-full after:bg-primary after:scale-x-0 after:origin-left after:transition-transform">Home</a><div class="relative"><button class="inline-flex items-center gap-1 relative text-foreground/85 hover:text-foreground transition-colors after:absolute after:left-0 after:right-0 after:-bottom-1 after:h-[2px] after:rounded-full after:bg-primary after:scale-x-0 after:origin-left after:transition-transform ">Services <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-3.5 w-3.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div><a class="relative text-foreground/85 hover:text-foreground transition-colors after:absolute after:left-0 after:right-0 after:-bottom-1 after:h-[2px] after:rounded-full after:bg-primary after:scale-x-0 after:origin-left after:transition-transform text-primary font-semibold after:scale-x-100" href="/service-areas" data-status="active" aria-current="page">Service Areas</a><a href="/blog" class="relative text-foreground/85 hover:text-foreground transition-colors after:absolute after:left-0 after:right-0 after:-bottom-1 after:h-[2px] after:rounded-full after:bg-primary after:scale-x-0 after:origin-left after:transition-transform">Blog</a><div class="relative"><button class="inline-flex items-center gap-1 relative text-foreground/85 hover:text-foreground transition-colors after:absolute after:left-0 after:right-0 after:-bottom-1 after:h-[2px] after:rounded-full after:bg-primary after:scale-x-0 after:origin-left after:transition-transform ">About <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-down h-3.5 w-3.5 transition-transform" aria-hidden="true"><path d="m6 9 6 6 6-6"></path></svg></button></div></nav><div class="flex items-center gap-2"><div class="hidden lg:flex items-center gap-2"><a href="/get-a-free-quote" class="group relative isolate inline-flex items-center justify-center overflow-hidden rounded-full font-bold shadow-[var(--shadow-card)] transition-all duration-200 hover:-translate-y-0.5 hover:shadow-[var(--shadow-elegant)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 cursor-pointer bg-brand-green text-brand-green-foreground focus-visible:ring-brand-green/40 px-6 py-2.5 text-sm gap-2 "><span aria-hidden="true" class="pointer-events-none absolute inset-y-0 left-0 z-[1] w-0 overflow-visible opacity-0 transition-all duration-[650ms] ease-[cubic-bezier(0.65,0,0.35,1)] group-hover:w-full group-hover:opacity-100 bg-brand-green-deep text-brand-green-deep"><svg aria-hidden="true" viewBox="0 0 12 100" preserveAspectRatio="none" class="absolute -right-[11px] top-0 h-full w-3">
1<path fill="currentColor" d="M0,0 C4,12 2,28 6,40 C9,52 3,64 7,78 C10,88 4,96 0,100 L0,0 Z"></path></svg></span><span aria-hidden="true" class="relative z-[3] inline-flex items-center justify-center transition-transform duration-300 -rotate-[18deg] group-hover:rotate-0 group-hover:scale-110 " style="width:14px;height:14px"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="absolute inset-0 h-full w-full opacity-100 transition-opacity duration-200 group-hover:opacity-0" aria-hidden="true"><path d="M9.53 16.122a3 3 0 0 0-5.78 1.128 2.25 2.25 0 0 1-2.4 2.245 4.5 4.5 0 0 0 8.4-2.245c0-.399-.078-.78-.22-1.128Zm0 0a15.998 15.998 0 0 0 3.388-1.62m-5.043-.025a15.994 15.994 0 0 1 1.622-3.395m3.42 3.42a15.995 15.995 0 0 0 4.764-4.648l3.876-5.814a1.151 1.151 0 0 0-1.597-1.597L14.146 6.32a15.996 15.996 0 0 0-4.649 4.763m3.42 3.42a6.776 6.776 0 0 0-3.42-3.42"></path></svg><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="absolute inset-0 h-full w-full opacity-0 transition-opacity duration-200 group-hover:opacity-100" aria-hidden="true"><path fill-rule="evenodd" d="M20.599 1.5c-.376 0-.743.111-1.055.32l-5.08 3.385a18.747 18.747 0 0 0-3.471 2.987 10.04 10.04 0 0 1 4.815 4.815 18.748 18.748 0 0 0 2.987-3.472l3.386-5.079A1.902 1.902 0 0 0 20.599 1.5Zm-8.3 14.025a18.76 18.76 0 0 0 1.896-1.207 8.026 8.026 0 0 0-4.513-4.513A18.75 18.75 0 0 0 8.475 11.7l-.278.5a5.26 5.26 0 0 1 3.601 3.602l.502-.278ZM6.75 13.5A3.75 3.75 0 0 0 3 17.25a1.5 1.5 0 0 1-1.601 1.497.75.75 0 0 0-.7 1.123 5.25 5.25 0 0 0 9.8-2.62 3.75 3.75 0 0 0-3.75-3.75Z" clip-rule="evenodd"></path></svg></span><span class="relative z-[3] ">Get a Free Quote</span></a></div><button class="inline-flex lg:hidden h-10 w-10 items-center justify-center rounded-md text-foreground" aria-label="Open menu"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu h-5 w-5" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button></div></div></header><main><section class="relative isolate overflow-hidden bg-section-mint text-foreground"><div aria-hidden="true" class="pointer-events-none absolute -top-32 -left-32 h-[24rem] w-[24rem] rounded-full bg-brand-green/15 blur-3xl"></div><div aria-hidden="true" class="pointer-events-none absolute -bottom-32 -right-32 h-[24rem] w-[24rem] rounded-full bg-accent/20 blur-3xl"></div><div class="relative mx-auto max-w-7xl px-4 md:px-8 pt-12 pb-16 md:pt-20 md:pb-24"><div class="text-[13px] font-semibold uppercase tracking-[0.2em] text-primary">Where we work</div><h1 class="mt-3 font-display text-4xl md:text-5xl lg:text-6xl font-semibold max-w-3xl">Painting San Diego for over 30 years.</h1><p class="mt-5 max-w-2xl text-base md:text-lg text-foreground/85">From coastal Encinitas to inland Escondido, our crews work across 20+ North County San Diego and coastal cities.</p></div></section><section class="mx-auto max-w-7xl px-4 md:px-8 py-16 md:py-24"><div class="max-w-2xl mb-8"><div class="text-[13px] font-semibold uppercase tracking-[0.2em] text-accent-deep">20+ cities served</div><h2 class="mt-2 font-display text-2xl md:text-3xl font-semibold text-ink ">Find your city</h2><p class="mt-2 text-base text-foreground/85">Tap a location to see painting services, project examples, and local FAQs for your area.</p></div><ul class="grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-3"><li><a href="/encinitas" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Encinitas</span></a></li><li><a href="/carlsbad" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Carlsbad</span></a></li><li><a href="/la-jolla" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">La Jolla</span></a></li><li><a href="/san-marcos" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">San Marcos</span></a></li><li><a href="/oceanside" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Oceanside</span></a></li><li><a href="/leucadia" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Leucadia</span></a></li><li><a href="/solana-beach" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Solana Beach</span></a></li><li><a href="/cardiff" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Cardiff</span></a></li><li><a href="/rancho-santa-fe" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Rancho Santa Fe</span></a></li><li><a href="/vista" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Vista</span></a></li><li><a href="/pacific-beach" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Pacific Beach</span></a></li><li><a href="/escondido" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Escondido</span></a></li><li><a href="/poway" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Poway</span></a></li><li><a href="/rancho-bernardo" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Rancho Bernardo</span></a></li><li><a href="/scripps-ranch" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y
1-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Scripps Ranch</span></a></li><li><a href="/carmel-mountain" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Carmel Mountain</span></a></li><li><a href="/penasquitos" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Penasquitos</span></a></li><li><a href="/temecula" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Temecula</span></a></li><li><a href="/murrieta" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Murrieta</span></a></li><li><a href="/dana-point" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Dana Point</span></a></li><li><a href="/del-mar" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">Del Mar</span></a></li><li><a href="/san-clemente" class="group flex items-center gap-2 rounded-lg border border-border bg-card px-3 py-3 transition-all hover:-translate-y-0.5 hover:border-primary hover:shadow-[var(--shadow-card)]"><span class="flex h-7 w-7 flex-none items-center justify-center rounded-full bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg></span><span class="text-sm font-medium text-ink group-hover:text-primary truncate">San Clemente</span></a></li></ul></section><section class="bg-secondary/40 py-16 md:py-24"><div class="mx-auto max-w-7xl px-4 md:px-8 grid lg:grid-cols-12 gap-12 items-center"><div class="lg:col-span-7"><div style="opacity:0;transform:translateY(18px)"><div class="text-[13px] font-semibold uppercase tracking-[0.2em] text-accent-deep">
1Local coverage</div><h2 class="mt-3 font-display text-4xl md:text-5xl font-semibold text-ink ">Wherever you are in North County, we're a short drive away.</h2><p class="mt-4 text-lg text-foreground/85">Our crew is based in the heart of North County San Diego and works across 20+ cities and communities. From coastal Encinitas to inland Escondido, we bring the same truck, tools, and standard of work to every job.</p><div class="mt-6 flex flex-wrap items-center gap-4"><a href="/get-a-free-quote" class="group relative isolate inline-flex items-center justify-center overflow-hidden rounded-full font-bold shadow-[var(--shadow-card)] transition-all duration-200 hover:-translate-y-0.5 hover:shadow-[var(--shadow-elegant)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 cursor-pointer bg-primary text-primary-foreground focus-visible:ring-primary/40 px-7 py-3 text-base gap-2.5 "><span aria-hidden="true" class="pointer-events-none absolute inset-y-0 left-0 z-[1] w-0 overflow-visible opacity-0 transition-all duration-[650ms] ease-[cubic-bezier(0.65,0,0.35,1)] group-hover:w-full group-hover:opacity-100 bg-primary-deep text-primary-deep"><svg aria-hidden="true" viewBox="0 0 12 100" preserveAspectRatio="none" class="absolute -right-[11px] top-0 h-full w-3"><path fill="currentColor" d="M0,0 C4,12 2,28 6,40 C9,52 3,64 7,78 C10,88 4,96 0,100 L0,0 Z"></path></svg></span><span aria-hidden="true" class="relative z-[3] inline-flex items-center justify-center transition-transform duration-300 -rotate-[18deg] group-hover:rotate-0 group-hover:scale-110 " style="width:16px;height:16px"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="absolute inset-0 h-full w-full opacity-100 transition-opacity duration-200 group-hover:opacity-0" aria-hidden="true"><path d="M9.53 16.122a3 3 0 0 0-5.78 1.128 2.25 2.25 0 0 1-2.4 2.245 4.5 4.5 0 0 0 8.4-2.245c0-.399-.078-.78-.22-1.128Zm0 0a15.998 15.998 0 0 0 3.388-1.62m-5.043-.025a15.994 15.994 0 0 1 1.622-3.395m3.42 3.42a15.995 15.995 0 0 0 4.764-4.648l3.876-5.814a1.151 1.151 0 0 0-1.597-1.597L14.146 6.32a15.996 15.996 0 0 0-4.649 4.763m3.42 3.42a6.776 6.776 0 0 0-3.42-3.42"></path></svg><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="absolute inset-0 h-full w-full opacity-0 transition-opacity duration-200 group-hover:opacity-100" aria-hidden="true"><path fill-rule="evenodd" d="M20.599 1.5c-.376 0-.743.111-1.055.32l-5.08 3.385a18.747 18.747 0 0 0-3.471 2.987 10.04 10.04 0 0 1 4.815 4.815 18.748 18.748 0 0 0 2.987-3.472l3.386-5.079A1.902 1.902 0 0 0 20.599 1.5Zm-8.3 14.025a18.76 18.76 0 0 0 1.896-1.207 8.026 8.026 0 0 0-4.513-4.513A18.75 18.75 0 0 0 8.475 11.7l-.278.5a5.26 5.26 0 0 1 3.601 3.602l.502-.278ZM6.75 13.5A3.75 3.75 0 0 0 3 17.25a1.5 1.5 0 0 1-1.601 1.497.75.75 0 0 0-.7 1.123 5.25 5.25 0 0 0 9.8-2.62 3.75 3.75 0 0 0-3.75-3.75Z" clip-rule="evenodd"></path></svg></span><span class="relative z-[3] ">Get a Free Quote</span></a><a href="tel:+17608061398" class="group relative isolate inline-flex items-center justify-center overflow-hidden rounded-full font-bold shadow-[var(--shadow-card)] transition-all duration-200 hover:-translate-y-0.5 hover:shadow-[var(--shadow-elegant)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 cursor-pointer bg-brand-green text-brand-green-foreground focus-visible:ring-brand-green/40 px-7 py-3 text-base gap-2.5 "><span aria-hidden="true" class="pointer-events-none absolute inset-y-0 left-0 z-[1] w-0 overflow-visible opacity-0 transition-all duration-[650ms] ease-[cubic-bezier(0.65,0,0.35,1)] group-hover:w-full group-hover:opacity-100 bg-brand-green-deep text-brand-green-deep"><svg aria-hidden="true" viewBox="0 0 12 100" preserveAspectRatio="none" class="absolute -right-[11px] top-0 h-full w-3"><path fill="currentColor" d="M0,0 C4,12 2,28 6,40 C9,52 3,64 7,78 C10,88 4,96 0,100 L0,0 Z"></path></svg></span><span aria-hidden="true" class="relative z-[3] inline-flex items-center justify-center transition-transform duration-300 group-hover:scale-110 group-hover:-rotate-[12deg] " style="width:16px;height:16px"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="absolute inset-0 h-full w-full opacity-100 transition-opacity duration-200 group-hover:opacity-0" aria-hidden="true"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92Z"></path></svg><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="absolute inset-0 h-full w-full opacity-0 transition-opacity duration-200 group-hover:opacity-100" aria-hidden="true">
1<path d="M2.003 5.884 5.514 2.37a1.5 1.5 0 0 1 2.122 0l2.475 2.475a1.5 1.5 0 0 1 .26 1.77l-1.41 2.47a14.5 14.5 0 0 0 6.953 6.953l2.47-1.41a1.5 1.5 0 0 1 1.77.26l2.475 2.475a1.5 1.5 0 0 1 0 2.122l-3.514 3.51a2 2 0 0 1-1.82.54A19.79 19.79 0 0 1 8.07 17.93a19.5 19.5 0 0 1-6-6A19.79 19.79 0 0 1 1.463 7.704a2 2 0 0 1 .54-1.82Z"></path></svg></span><span class="relative z-[3] ">760-806-1398</span></a></div></div></div><div class="lg:col-span-5"><figure class="" aria-hidden="false"><div class="relative mx-auto" style="max-width:480px"><img src="/__l5e/assets-v1/dc46f4e4-91c7-4b7c-a0f8-3a747247026d/al-s-truck.webp" alt="Local crews, local roads, same reliable service." loading="lazy" width="480" class="block w-full h-auto select-none will-change-transform" style="transform:translateX(-120%);transition:transform 1400ms cubic-bezier(0.22, 1, 0.36, 1)" draggable="false"/><div class="mx-auto h-3 rounded-full bg-black/25 blur-md" style="width:82%;margin-top:-6px;transform:scaleX(0.2);transform-origin:left center;transition:transform 1400ms cubic-bezier(0.22, 1, 0.36, 1)"></div></div><figcaption class="mt-3 text-center text-sm text-current transition-opacity duration-500" style="opacity:0;transition-delay:1200ms">Local crews, local roads, same reliable service.</figcaption><style> 2 @keyframes truck-bounce { 3 0% { translate: 0 0; } 4 30% { translate: 0 -4px; } 5 60% { translate: 0 2px; } 6 100% { translate: 0 0; } 7 } 8 </style></figure></div></div></section><section class="mx-auto max-w-7xl px-4 md:px-8 pb-16 md:pb-24"><nav aria-label="What we paint across North County San Diego" class="rounded-2xl border border-border bg-secondary/30 p-6"><div class="eyebrow font-semibold uppercase tracking-[0.18em] text-accent-deep">Popular services</div><h2 class="mt-2 font-display text-2xl md:text-3xl font-semibold text-ink">What we paint across North County San Diego</h2><p class="mt-2 text-foreground/80 leading-relaxed">Coastal homes, inland stucco and commercial buildings each need a different approach. Start with the service you need.</p><ul class="mt-5 flex flex-wrap gap-2"><li><a href="/services/interior-painting" class="inline-flex items-center gap-1.5 rounded-full border border-border bg-card px-4 py-2 text-sm font-medium text-foreground/85 transition-colors hover:border-primary hover:text-primary">Interior Painting<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-3.5 w-3.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></li><li><a href="/services/exterior-painting" class="inline-flex items-center gap-1.5 rounded-full border border-border bg-card px-4 py-2 text-sm font-medium text-foreground/85 transition-colors hover:border-primary hover:text-primary">Exterior Painting<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-3.5 w-3.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></li><li><a href="/services/residential-painting" class="inline-flex items-center gap-1.5 rounded-full border border-border bg-card px-4 py-2 text-sm font-medium text-foreground/85 transition-colors hover:border-primary hover:text-primary">Residential Painting<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-3.5 w-3.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></li><li><a href="/services/commercial-painting" class="inline-flex items-center gap-1.5 rounded-full border border-border bg-card px-4 py-2 text-sm font-medium text-foreground/85 transition-colors hover:border-primary hover:text-primary">Commercial Painting<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-3.5 w-3.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></li><li><a href="/services" class="inline-flex items-center gap-1.5 rounded-full border border-border bg-card px-4 py-2 text-sm font-medium text-foreground
8/85 transition-colors hover:border-primary hover:text-primary">All Services<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-3.5 w-3.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></li><li><a href="/gallery" class="inline-flex items-center gap-1.5 rounded-full border border-border bg-card px-4 py-2 text-sm font-medium text-foreground/85 transition-colors hover:border-primary hover:text-primary">Project Gallery<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-3.5 w-3.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></li></ul></nav></section></main><footer class="relative isolate overflow-hidden bg-background text-foreground"><div class="relative mx-auto max-w-7xl px-4 md:px-8 py-12 grid gap-10 lg:grid-cols-12"><div class="lg:col-span-4"><a aria-label="AL's Quality Painting, Inc., home" href="/" class="inline-flex items-center"><img src="/__l5e/assets-v1/ed93e224-0f8e-4ba9-8758-1e8b45f1d360/logo.webp" alt="AL's Quality Painting, Inc." width="480" height="120" class="h-12 w-auto" loading="lazy"/></a><div class="mt-4 text-[13px] uppercase tracking-[0.22em] text-muted-foreground">Interior · Exterior · Cabinets · Commercial</div><p class="mt-4 text-sm text-foreground/80 max-w-md leading-relaxed">North County San Diego's trusted house painters. <!-- -->30<!-- -->+ years of premium interior, exterior, cabinet, and commercial painting - licensed, insured, and warrantied.</p></div><div class="lg:col-span-2"><div class="text-[13px] font-semibold uppercase tracking-[0.18em] text-primary">Services</div><ul class="mt-3 space-y-2 text-sm"><li><a href="/services/interior-painting" class="text-foreground/85 hover:text-primary">Interior Painting</a></li><li><a href="/services/exterior-painting" class="text-foreground/85 hover:text-primary">Exterior Painting</a></li><li><a href="/services/residential-painting" class="text-foreground/85 hover:text-primary">Residential Painting</a></li><li><a href="/services/commercial-painting" class="text-foreground/85 hover:text-primary">Commercial Painting</a></li><li><a href="/services/cabinet-painting" class="text-foreground/85 hover:text-primary">Cabinet Painting</a></li><li><a href="/services/kitchen-remodeling" class="text-foreground/85 hover:text-primary">Kitchen Remodeling</a></li><li><a href="/services/bathroom-remodeling" class="text-foreground/85 hover:text-primary">Bathroom Remodeling</a></li><li><a href="/services" class="inline-flex items-center gap-1 text-sm font-semibold text-primary hover:gap-1.5 transition-all">View all services <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right h-3.5 w-3.5" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></li></ul></div><div class="lg:col-span-2"><div class="text-[13px] font-semibold uppercase tracking-[0.18em] text-primary">Quick links</div><ul class="mt-3 space-y-2 text-sm"><li><a href="/about" class="text-foreground/85 hover:text-primary">About</a></li><li><a class="text-foreground/85 hover:text-primary active" href="/service-areas" data-status="active" aria-current="page">Service Area</a></li><li><a href="/our-process" class="text-foreground/85 hover:text-primary">Our Process</a></li><li><a href="/blog" class="text-foreground/85 hover:text-primary">Blog</a></li><li><a href="/gallery" class="text-foreground/85 hover:text-primary">Gallery</a></li><li><a href="/reviews" class="text-foreground/85 hover:text-primary">Reviews</a></li></ul></div><div class="lg:col-span-4"><div class="text-[13px] font-semibold uppercase tracking-[0.18em] text-primary">Contact</div><ul class="mt-3 space-y-3 text-sm"><li class="flex items-start gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-phone h-4 w-4 mt-0.5 shrink-0 text-brand-green-deep" aria-hidden="true">
8<path d="M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384"></path></svg><a href="tel:+17608061398" class="text-foreground/85 hover:text-primary">760-806-1398</a></li><li class="flex items-start gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail h-4 w-4 mt-0.5 shrink-0 text-brand-green-deep" aria-hidden="true"><path d="m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7"></path><rect x="2" y="4" width="20" height="16" rx="2"></rect></svg><a href="mailto:[email protected]" class="text-foreground/85 hover:text-primary">[email protected]</a></li><li class="flex items-start gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-map-pin h-4 w-4 mt-0.5 shrink-0 text-brand-green-deep" aria-hidden="true"><path d="M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0"></path><circle cx="12" cy="10" r="3"></circle></svg><a href="https://maps.app.goo.gl/TWrap6VpHvB24RqE8" target="_blank" rel="noopener noreferrer" class="text-foreground/85 hover:text-primary">1213 Allea Ln, Vista, CA 92083</a></li><li class="flex items-start gap-2"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock h-4 w-4 mt-0.5 shrink-0 text-brand-green-deep" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="M12 6v6l4 2"></path></svg><span class="text-foreground/85">MonâSun · 7AMâ7PM</span></li></ul></div></div><div class="relative border-t border-border/60 bg-gradient-to-r from-primary/[0.08] via-accent/[0.14] to-brand-green/[0.08]"><div class="mx-auto max-w-7xl px-4 md:px-8 py-6 flex flex-col md:flex-row md:items-center md:justify-between gap-5"><div class="text-[13px] font-semibold uppercase tracking-[0.18em] text-primary shrink-0 text-center md:text-left">Trusted & reviewed on</div><div class="grid grid-cols-5 place-items-center gap-x-4 gap-y-4 sm:flex sm:flex-1 sm:flex-wrap sm:items-center sm:justify-end sm:gap-x-8"><a href="https://www.bbb.org/us/ca/vista/profile/commercial-painter/als-quality-painting-inc-1126-27000000" target="_blank" rel="noopener noreferrer" aria-label="AL's Quality Painting, Inc. on BBB Accredited" title="BBB Accredited" class="inline-flex h-10 items-center justify-center transition-all hover:-translate-y-0.5"><img src="/__l5e/assets-v1/be21108b-67bb-4d89-a277-eb7a0be29b46/bbb.png" alt="BBB Accredited" loading="lazy" class="max-h-8 max-w-full w-auto object-contain opacity-85 hover:opacity-100 transition-opacity"/></a><a href="https://maps.app.goo.gl/1zim5axX3sRKd4fV9" target="_blank" rel="noopener noreferrer" aria-label="AL's Quality Painting, Inc. on Google Reviews" title="Google Reviews" class="inline-flex h-10 items-center justify-center transition-all hover:-translate-y-0.5"><img src="/__l5e/assets-v1/0bb0c10c-366d-477c-9f02-7c5512097b60/google.png" alt="Google Reviews" loading="lazy" class="max-h-8 max-w-full w-auto object-contain opacity-85 hover:opacity-100 transition-opacity"/></a><a href="https://www.yelp.com/biz/als-quality-painting-vista-2" target="_blank" rel="noopener noreferrer" aria-label="AL's Quality Painting, Inc. on Yelp" title="Yelp" class="inline-flex h-10 items-center justify-center transition-all hover:-translate-y-0.5"><img src="/__l5e/assets-v1/f6e1741b-583d-4597-ae8c-a97d62e97e50/yelp.png" alt="Yelp" loading="lazy" class="max-h-8 max-w-full w-auto object-contain opacity-85 hover:opacity-100 transition-opacity"/></a><a href="https://nextdoor.com/pages/als-quality-painting-inc/" target="_blank" rel="noopener noreferrer" aria-label="AL's Quality Painting, Inc. on Nextdoor" title="Nextdoor" class="inline-flex h-10 items-center justify-center transition-all hover:-translate-y-0.5"><img src="/__l5e/assets-v1/17b31a38-1409-49fc-90c0-019daf29f8fa/nextdoor.png" alt="Nextdoor" loading="lazy" class="max-h-8 max-w-full w-auto object-contain opacity-85 hover:opacity-100 transition-opacity"/></a>
8<a href="https://www.angi.com/companylist/us/ca/vista/al%27s-quality-painting-inc-reviews-7595626.htm" target="_blank" rel="noopener noreferrer" aria-label="AL's Quality Painting, Inc. on Angi" title="Angi" class="inline-flex h-10 items-center justify-center transition-all hover:-translate-y-0.5"><img src="/__l5e/assets-v1/924ae6c7-bfcd-493a-9512-535d918d044b/angi.png" alt="Angi" loading="lazy" class="max-h-8 max-w-full w-auto object-contain opacity-85 hover:opacity-100 transition-opacity"/></a></div></div></div><div class="relative border-t border-border/60 py-6 bg-gradient-to-r from-brand-green/[0.06] via-accent/[0.10] to-primary/[0.06]"><div class="mx-auto max-w-7xl px-4 md:px-8 grid grid-cols-1 sm:grid-cols-[minmax(0,1fr)_auto] items-center gap-3 text-[12px] text-muted-foreground text-center sm:text-left"><div class="min-w-0">© <!-- -->2026<!-- --> <!-- -->AL's Quality Painting, Inc.<!-- -->. All rights reserved.</div><div class="flex shrink-0 gap-5 justify-center sm:justify-end"><a href="/privacy" class="hover:text-primary">Privacy</a><a href="/terms" class="hover:text-primary">Terms</a></div></div></div></footer></div>
8<script>(function(t){let s;try{s=JSON.parse(sessionStorage.getItem(t.storageKey)||"{}")}catch(e){console.error(e);return}const c=t.key||window.history.state?.__TSR_key,r=c?s[c]:void 0;if(t.shouldScrollRestoration&&r&&typeof r=="object"&&Object.keys(r).length>0){for(const e in r){const o=r[e];if(!o||typeof o!="object")continue;const l=o.scrollX,i=o.scrollY;if(!(!Number.isFinite(l)||!Number.isFinite(i))){if(e==="window")window.scrollTo({top:i,left:l,behavior:t.behavior});else if(e){let n;try{n=document.querySelector(e)}catch{continue}n&&(n.scrollLeft=l,n.scrollTop=i)}}}return}const a=window.location.hash.split("#",2)[1];if(a){const e=window.history.state?.__hashScrollIntoViewOptions??!0;if(e){const o=document.getElementById(a);o&&o.scrollIntoView(e)}return}window.scrollTo({top:0,left:0,behavior:t.behavior})})({"storageKey":"tsr-scroll-restoration-v1_3","shouldScrollRestoration":true});document.currentScript.remove()</script>
8<!--/$-->
8<script class="$tsr" id="$tsr-stream-barrier">(self.$R=self.$R||{})["tsr"]=[];self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]};$_TSR.router=($R=>$R[0]={manifest:$R[1]={routes:$R[2]={__root__:$R[3]={preloads:$R[4]=["/assets/index-Cz9XUrqm.js","/assets/jsx-runtime-DVpe7PXp.js","/assets/useStore-BwRBlYdu.js","/assets/link-DuIqtq8I.js","/assets/matchContext-DJAx_jtZ.js"],assets:$R[5]=[$R[6]={tag:"link",attrs:$R[7]={rel:"stylesheet",href:"/assets/index-rXFFMGZj.css",type:"text/css"}},$R[8]={tag:"script",attrs:$R[9]={type:"module",async:!0},children:"import(\"/assets/index-Cz9XUrqm.js\")"}]},"/service-areas":$R[10]={preloads:$R[11]=["/assets/service-areas-CpQHwoy8.js","/assets/MobileCTABar-Dl-IvUJK.js","/assets/Reveal-0Buu9r1C.js","/assets/TruckDrive-C5HkojGw.js","/assets/PageHero-CsEhldpf.js","/assets/RelatedLinks-CP0HYU6t.js"]}}},matches:$R[12]=[$R[13]={i:"__root__
8�",u:1791294826425,s:"success",ssr:!0},$R[14]={i:"�service-areas�service-areas",u:1791294826425,s:"success",ssr:!0}],lastMatchId:"�service-areas�service-areas"})($R["tsr"]);$_TSR.e();document.currentScript.remove()</script>
8<script type="module" async="">import("/assets/index-Cz9XUrqm.js")</script>
8</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.