Orange County Riverside County San Bernardino
Same-Day Solutions
Priority dispatch for no-cool & emergency calls.
Energy-Smart Installs
Heat pumps, QuietCool, and Owens Corning insulation.
Freedom Comfort Club
Pro maintenance + perks for year-round comfort.
Local, Licensed, Insured
CSLB #1090273 · NCI Certified · Bosch Home Comfort Pro.
Do you offer emergency service in my city?

Yes—emergency HVAC is available across all listed cities. Call (714) 909-2168 and we’ll prioritize the next available technician.

Which services are available in Orange County?

All services listed above are offered in every OC city, including Anaheim, Brea, Fullerton, Orange, Placentia, Tustin, Villa Park, Yorba Linda, Cypress, and Irvine.

Do you serve Riverside & San Bernardino counties?

Yes—Riverside (Corona, Norco, Eastvale) and San Bernardino (Chino, Chino Hills) are part of our standard coverage.

Need HVAC help today?
(function(){ // Tabs var tabs=document.querySelectorAll(‘.tab’); tabs.forEach(function(btn){ btn.addEventListener(‘click’,function(){ tabs.forEach(function(b){ b.setAttribute(‘aria-selected’,’false’); var p=document.getElementById(b.getAttribute(‘aria-controls’)); if(p) p.hidden=true; }); btn.setAttribute(‘aria-selected’,’true’); var panel=document.getElementById(btn.getAttribute(‘aria-controls’)); if(panel) panel.hidden=false; var s=document.getElementById(‘sa-search’); if(s){ s.value=”; filterCards(); } document.querySelectorAll(‘.chip[aria-pressed=”true”]’).forEach(function(c){ c.setAttribute(‘aria-pressed’,’false’); }); }); }); // Search + chips var searchInput=document.getElementById(‘sa-search’); if(searchInput){ searchInput.addEventListener(‘input’,filterCards); } document.querySelectorAll(‘.chip’).forEach(function(chip){ chip.addEventListener(‘click’,function(){ var isOn=chip.getAttribute(‘aria-pressed’)===’true’; chip.setAttribute(‘aria-pressed’,String(!isOn)); filterCards(); }); chip.setAttribute(‘aria-pressed’,’false’); }); function activePanel(){ var selected=document.querySelector(‘.tab[aria-selected=”true”]’); return selected?document.getElementById(selected.getAttribute(‘aria-controls’)):null; } function filterCards(){ var panel=activePanel(); if(!panel) return; var q=(searchInput&&searchInput.value||”).toLowerCase(); var required=Array.from(document.querySelectorAll(‘.chip[aria-pressed=”true”]’)).map(function(c){return c.dataset.filter;}); panel.querySelectorAll(‘.area’).forEach(function(card){ var city=(card.getAttribute(‘data-city’)||”).toLowerCase(); var services=(card.getAttribute(‘data-services’)||”).toLowerCase(); var matchText=!q||city.indexOf(q)>-1||services.indexOf(q)>-1; var matchChips=required.length===0||required.every(function(r){return services.indexOf(r)>-1;}); card.style.display=(matchText&&matchChips)?”:’none’; }); } // Lazy map var mapBtn=document.querySelector(‘.map-btn’); if(mapBtn){ mapBtn.addEventListener(‘click’,function(){ var frameWrap=document.getElementById(‘areas-map’); if(frameWrap){ frameWrap.hidden=false; mapBtn.remove(); } }); } filterCards(); })(); { “@context”:”https://schema.org”, “@type”:”BreadcrumbList”, “itemListElement”:[ {“@type”:”ListItem”,”position”:1,”name”:”Home”,”item”:”https://www.freedomefficiency.com/”}, {“@type”:”ListItem”,”position”:2,”name”:”Service Areas”,”item”:”https://www.freedomefficiency.com/service-area/”} ] } # Generate a ready-to-paste HTML file that works in Carrot without uploading .js/.json. # It uses inline blocks and approximates each city # as a smooth circular polygon around a known centroid (fast & lightweight). # # Note: This is a quick, production-safe stand-in. We can swap in official TIGER/Line # polygons later with the same structure. import math, json, os, textwrap def circle_polygon(lon, lat, radius_m, num_pts=80): “”” Create a GeoJSON Polygon approximating a circle around (lat,lon). Radius in meters. WGS84 approximation using ~111320 m per degree. “”” coords = [] # meters per degree latitude ~111320; longitude scales by cos(lat) m_per_deg_lat = 111320.0 m_per_deg_lng = 111320.0 * math.cos(math.radians(lat)) dlat = radius_m / m_per_deg_lat dlng = radius_m / m_per_deg_lng if m_per_deg_lng != 0 else 0.0 for i in range(num_pts): theta = 2 * math.pi * i / num_pts # parametric circle in local degree offsets lat_i = lat + dlat * math.sin(theta) lon_i = lon + dlng * math.cos(theta) coords.append([round(lon_i, 6), round(lat_i, 6)]) # close ring coords.append(coords[0]) return { “type”: “Polygon”, “coordinates”: [coords] } # City centers (approx) and radii in meters places = [ (“Anaheim”, “anaheim”, 33.8366, -117.9143, 8000), (“Brea”, “brea”, 33.9167, -117.9001, 5000), (“Corona”, “corona”, 33.8753, -117.5664, 9000), (“Eastvale”, “eastvale”, 33.9630, -117.5640, 6000), (“Fullerton”, “fullerton”, 33.8704, -117.9243, 5000), (“Norco”, “norco”, 33.9206, -117.5617, 6000), (“Orange”, “orange”, 33.7879, -117.8531, 6000), (“Orange County”, “orange-county”, 33.7175, -117.8311, 40000), # outline-only (“Placentia”, “placentia”, 33.8722, -117.8703, 4000), (“Tustin”, “tustin”, 33.7458, -117.8262, 5000), (“Villa Park”, “villa-park”, 33.8144, -117.8133, 3000), (“Yorba Linda”, “yorba-linda”, 33.8886, -117.8131, 6000), ] legend = { “Anaheim”: “#1e56d6”, “Brea”: “#ff8a3d”, “Corona”: “#ffb472”, “Eastvale”: “#ffd3a9”, “Fullerton”: “#0b2a6b”, “Norco”: “#1341a3”, “Orange”: “#1a6f9e”, “Orange County”: “#6aa2ff”, “Placentia”: “#2f855a”, “Tustin”: “#8a5cf6”, “Villa Park”: “#e066ff”, “Yorba Linda”: “#4db6ac” } # Build the HTML content head = “”” Service Areas Map | Freedom AC & Heating “”” legend_block = f””” {json.dumps(legend, indent=2)} “”” html = head + legend_block + “\n”.join(geo_blocks) + script path = “/mnt/data/service-area-inline.html” with open(path, “w”, encoding=”utf-8″) as f: f.write(html) path
24/7 Service - Call Now!
(714) 909-2168

Call Us for 24/7 Service

Call Now

Verified business listings: EZlocal