Home / Rio Rancho / Rio Rancho MiD / Panorama Heights
Panorama Heights Homes for Sale | Rio Rancho MiD, Rio Rancho, NM Real Estate & Properties@endsection <div class="mb-4 bg-white rounded-lg shadow-md p-2 sm:p-4 mb-4"> <div class="flex items-start justify-between mb-2"> <h1 class="text-2xl">Panorama Heights - Homes for Sale</h1> <button class="flex items-center gap-2 px-2 py-1 border border-gray-300 rounded-lg hover:bg-gray-50 transition-colors cursor-pointer" onclick="openMapModal('?ptype=Land,Residential&city=RioRancho&area=RioRanchoMid&subdivision=PanoramaHeights')"> <svg class="w-4 h-4" fill="currentColor" viewBox="0 0 24 24"> <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path> </svg> <span class="text-sm font-medium">Map</span> </button> </div> <p>There are currently <b>1 MLS listings</b> for Houses for sale in <b>Panorama Heights, Rio Rancho</b>.</p> <p>Click on any listing to view photos, property details, virtual tours, and an interactive map.</p> <p>Want to refine your search? Use our <a href="/search#ptype=Land,Residential&city=RioRancho&area=RioRanchoMid&subdivision=PanoramaHeights"><u><b>Advanced Home Search</b></u></a> to filter real estate by price, bedrooms, features, and more.</p> </div> <div class="mb-4 flex flex-wrap"> <div class="group relative"> <div class="bg-white pr-3 py-1 mr-2 mb-1 text-xs sm:text-sm rounded-md flex items-center"> <span class="ml-3">Land<a href="https://albuquerquehomesonline.com/search-results?ptype=Residential&city=RioRancho&area=RioRanchoMid&subdivision=PanoramaHeights" class="ml-1 p-1 text-gray-500 hover:text-red-500 focus:outline-none">×</a></span> <span class="ml-3">Residential<a href="https://albuquerquehomesonline.com/search-results?ptype=Land&city=RioRancho&area=RioRanchoMid&subdivision=PanoramaHeights" class="ml-1 p-1 text-gray-500 hover:text-red-500 focus:outline-none">×</a></span> </div> <div class="absolute bottom-full left-1/4 transform -translate-x-3/4 mb-2 px-2 py-1 text-sm text-gray-500 bg-white rounded opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap border border-gray-300"> Property Type </div> </div> <div class="group relative"> <div class="bg-white pr-3 py-1 mr-2 mb-1 text-xs sm:text-sm rounded-md flex items-center"> <span class="ml-3"><a href="https://albuquerquehomesonline.com/RioRancho-City" class="hover:text-red-500 focus:outline-none">Rio Rancho</a><a href="https://albuquerquehomesonline.com/search-results?ptype=Land,Residential&area=RioRanchoMid&subdivision=PanoramaHeights" class="ml-1 text-gray-500 hover:text-red-500 focus:outline-none">×</a></span> </div> <div class="absolute bottom-full left-1/4 transform -translate-x-3/4 mb-2 px-2 py-1 text-sm text-gray-500 bg-white rounded opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap border border-gray-300"> City </div> </div> <div class="group relative"> <div class="bg-white pr-3 py-1 mr-2 mb-1 text-xs sm:text-sm rounded-md flex items-center"> <span class="ml-3"><a href="https://albuquerquehomesonline.com/RioRanchoMid-Area" class="hover:text-red-500 focus:outline-none">Rio Rancho MiD</a><a href="https://albuquerquehomesonline.com/search-results?ptype=Land,Residential&city=RioRancho&subdivision=PanoramaHeights" class="ml-1 text-gray-500 hover:text-red-500 focus:outline-none">×</a></span> </div> <div class="absolute bottom-full left-1/4 transform -translate-x-3/4 mb-2 px-2 py-1 text-sm text-gray-500 bg-white rounded opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap border border-gray-300"> MLS Area Major </div> </div> <div class="group relative"> <div class="bg-white pr-3 py-1 mr-2 mb-1 text-xs sm:text-sm rounded-md flex items-center"> <span class="ml-3"><a href="https://albuquerquehomesonline.com/PanoramaHeights-Subdivision" class="hover:text-red-500 focus:outline-none">Panorama Heights</a><a href="https://albuquerquehomesonline.com/search-results?ptype=Land,Residential&city=RioRancho&area=RioRanchoMid" class="ml-1 text-gray-500 hover:text-red-500 focus:outline-none">×</a></span> </div> <div class="absolute bottom-full left-1/4 transform -translate-x-3/4 mb-2 px-2 py-1 text-sm text-gray-500 bg-white rounded opacity-0 group-hover:opacity-100 transition-opacity pointer-events-none whitespace-nowrap border border-gray-300"> Subdivision </div> </div> </div> <!-- Property Listings --> <div class="space-y-6"> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/802-Pinetree-Road-Se-Rio-Rancho/id13680"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1090/90/1b1_s.jpg" alt="802 PINETREE Road SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/802-Pinetree-Road-Se-Rio-Rancho/id13680"> 802 PINETREE Road SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$361,000</div> <div class="text-red-600 font-medium text-sm flex items-center justify-end"> <svg class="w-4 h-4 mr-1" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" d="M16.707 10.293a1 1 0 010 1.414l-6 6a1 1 0 01-1.414 0l-6-6a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l4.293-4.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> -4,000$ 10/02 </div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Welcome to this beautifully updated home. The living room features a cozy fireplace and a neutral color paint scheme that complements the new flooring throughout the home. The kitchen is equipped with all stainless steel appliances. The home has been refreshed with fresh interior and exterior paint. The fenced-in backyard boasts a covered patio a perfect for outdoor entertaining. The yard also features low maintenance landscaping. The property also includes a storage shed for your extra belongings. This home is ready for its new owner to enjoy all of its wonderful features.. Included 100-Day Home Warranty with buyer activation </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">3</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,866</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.29</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1090090</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 13680, listingInfo: '802 PINETREE Road SE. MLS # 1090090' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <p class="text-gray-800 mt-2 text-lg"><b>Explore Nearby Properties (1 mile radius):</b></p> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/3343-Esplanade-Circle-Se-Rio-Rancho/id12092"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1088/358/108_s.jpg" alt="3343 ESPLANADE Circle SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/3343-Esplanade-Circle-Se-Rio-Rancho/id12092"> 3343 ESPLANADE Circle SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$285,000</div> <div class="text-red-600 font-medium text-sm flex items-center justify-end"> <svg class="w-4 h-4 mr-1" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" d="M16.707 10.293a1 1 0 010 1.414l-6 6a1 1 0 01-1.414 0l-6-6a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l4.293-4.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> -10,000$ 10/01 </div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Charming Townhouse in 55+ Community - Rio Rancho, NMWelcome home to this delightful 2-bedroom, 2-bath townhouse nestled in a peaceful and well-maintained 55+ community in beautiful Rio Rancho. This single-level home offers comfort, convenience, and low-maintenance living.Step inside to a bright and inviting living space featuring a cozy gas log fireplace. The spacious primary bedroom includes an en-suite bath. The second bedroom is ideal for guests, a home office, or hobby space.Enjoy a low-maintenance lifestyle with a private patio, attached garage, and access to nearby walking trails and community amenities. Conveniently located near shopping, medical services, and entertainment. </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,340</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.06</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1088358</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 12092, listingInfo: '3343 ESPLANADE Circle SE. MLS # 1088358' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/3354-St-Andrews-Drive-Se-Rio-Rancho/id10247"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1086/605/1c2_s.jpg" alt="3354 St Andrews Drive SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/3354-St-Andrews-Drive-Se-Rio-Rancho/id10247"> 3354 St Andrews Drive SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$280,000</div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Well loved home in exclusive 55 & over community with mature trees and shady walking paths. This charming home boasts 2 bedrooms and 2 baths. It features accent wood beams, and a sunken living room with a cozy gas log fireplace. It has clerestory windows to let natural light in, vaulted ceilings, and Italian tile flooring in the kitchen, hall, and bath. Upgrades include newer Refrigerated Air, a TPO roof w/ a complete maintenance package, & an H20 recirc. pump. The easy care yard and shady patios with lovely views, offer serene outdoor living. This home is perfect for relaxation and entertaining. Conveniently located in the heart of Rio Rancho near dining, entertainment, and shopping </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,362</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.07</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1086605</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 10247, listingInfo: '3354 St Andrews Drive SE. MLS # 1086605' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/3700-Torrey-Pines-Road-Se-Rio-Rancho/id15450"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1091/896/14b_s.jpg" alt="3700 TORREY PINES Road SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/3700-Torrey-Pines-Road-Se-Rio-Rancho/id15450"> 3700 TORREY PINES Road SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$335,000</div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Enter a stunning haven through a covered courtyard to discover this oasis in Rio Rancho. This custom, single-story Mediterranean-style home boasts a tile roof and an updated kitchen with granite countertops with an abundance of oak cabinets. A breakfast bar and a built-in custom cabinet with leaded glass add elegance. The home also features a/c, newer windows, an oversized garage, anew water heater(2024), and a custom Tuff Shed valued between $7K (installed November024). There's a bonus room perfect for a hobby space, office, or additional bedroom. The living room is warm and inviting with a custom fireplace insert and plantation shutters. The highlight is the lush backyard, adorned with custom murals and designed for entertaining. Don't miss the chance to make new memories here. </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">3</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,567</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.28</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1091896</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 15450, listingInfo: '3700 TORREY PINES Road SE. MLS # 1091896' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/3288-Esplanade-Circle-Se-Rio-Rancho/id14956"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1091/389/1ed_s.jpg" alt="3288 ESPLANADE Circle SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/3288-Esplanade-Circle-Se-Rio-Rancho/id14956"> 3288 ESPLANADE Circle SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$310,000</div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Welcome to a lovely 55+ community! This home features beamed vaulted ceilings, skylights and clerestory windows which create a bright open living space with built in bookcases, a custom wood burning fireplace with a gas log lighter! Kitchen comes with all stainless steel appliances, nice big pantry, and moveable island. Primary bedroom includes 2 closets, and 3/4 bath. 2nd bedroom is also spacious, right off the full hall bathroom. 2 car attached garage is finished and has an automatic opener and new springs. TPO portion of roof new in 2025. Low cost HOA pays for all front yard maintenance, common area maintenance and streets. Washer and dryer also convey. Come make this cozy home your own! </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,545</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.07</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1091389</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 14956, listingInfo: '3288 ESPLANADE Circle SE. MLS # 1091389' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/644-Troon-Drive-Se-Rio-Rancho/id12709"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1089/85/1c2_s.jpg" alt="644 TROON Drive SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/644-Troon-Drive-Se-Rio-Rancho/id12709"> 644 TROON Drive SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$385,000</div> <div class="text-red-600 font-medium text-sm flex items-center justify-end"> <svg class="w-4 h-4 mr-1" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" d="M16.707 10.293a1 1 0 010 1.414l-6 6a1 1 0 01-1.414 0l-6-6a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l4.293-4.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> -5,000$ 10/01 </div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Backing up to the old golf course this home has spectacular Mountain views from the backyard and master bedroom! A popular floorplan awaits you and features 4 bedrooms plus an office, living dining combo on the main level and a family room upstairs! This is priced as a simple bare bones home waiting for your personal touches and includes all appliances. This home is clean and ready for new carpet or other flooring... All in a safe gated community!! </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">4</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">3</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2,574</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.1</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1089085</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 12709, listingInfo: '644 TROON Drive SE. MLS # 1089085' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/617-Teresa-Court-Se-Rio-Rancho/id12719"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1089/97/17a_s.jpg" alt="617 TERESA Court SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/617-Teresa-Court-Se-Rio-Rancho/id12719"> 617 TERESA Court SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$385,000</div> <div class="text-red-600 font-medium text-sm flex items-center justify-end"> <svg class="w-4 h-4 mr-1" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" d="M16.707 10.293a1 1 0 010 1.414l-6 6a1 1 0 01-1.414 0l-6-6a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l4.293-4.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> -5,000$ 10/01 </div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Same floorplan as MLS #1089085 but is flipped and is rented.. Tenant would like to stay if possible, need 24 hours notice due to tenant rights which should be respected. Owner recently replaced AC, flooring (carpet/faux wood flooring on 1st floor, Paint, and bathroom 2nd floor refurbished. </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">4</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">3</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2,574</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.1</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1089097</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 12719, listingInfo: '617 TERESA Court SE. MLS # 1089097' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/3253-Esplanade-Circle-Se-Rio-Rancho/id1745"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1080/576/16b_s.jpg" alt="3253 ESPLANADE Circle SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/3253-Esplanade-Circle-Se-Rio-Rancho/id1745"> 3253 ESPLANADE Circle SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$284,900</div> <div class="text-red-600 font-medium text-sm flex items-center justify-end"> <svg class="w-4 h-4 mr-1" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" d="M16.707 10.293a1 1 0 010 1.414l-6 6a1 1 0 01-1.414 0l-6-6a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l4.293-4.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> -4,100$ 09/26 </div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Welcome to this beautiful home in The Esplande, a vibrant 55+ community! This well-maintained home features two spacious bedrooms and two full bathrooms. Skylights fill the home with natural light, creating a warm and inviting atmosphere throughout. Perfect for comfortable living and easy entertaining! A must see for anyone looking to live in the heart of Rio Rancho. *New Windows 2024* *New kitchen flooring 2025* *Mini-split installed 2022* *roof maintenance 2025* </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,409</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.07</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1080576</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 1745, listingInfo: '3253 ESPLANADE Circle SE. MLS # 1080576' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/3390-Marino-Drive-Se-Rio-Rancho/id12720"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1089/99/134_s.jpg" alt="3390 MARINO Drive SE, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/3390-Marino-Drive-Se-Rio-Rancho/id12720"> 3390 MARINO Drive SE, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$390,000</div> <div class="text-red-600 font-medium text-sm flex items-center justify-end"> <svg class="w-4 h-4 mr-1" fill="currentColor" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"> <path fill-rule="evenodd" d="M16.707 10.293a1 1 0 010 1.414l-6 6a1 1 0 01-1.414 0l-6-6a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l4.293-4.293a1 1 0 011.414 0z" clip-rule="evenodd"></path> </svg> -5,000$ 10/01 </div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Same floorplan as MLS #1089085 and is rented.. Tenant would like to stay if possible, need 24 hours notice due to tenant rights which should be respected. </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">4</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">3</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2,574</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center"> <div class="font-semibold text-xl">0.1</div> <div class="text-xs text-gray-500">ACRES</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1089099</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 12720, listingInfo: '3390 MARINO Drive SE. MLS # 1089099' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/903-Country-Club-Drive-Se-J-Rio-Rancho/id14694"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1091/113/150_s.jpg" alt="903 COUNTRY CLUB Drive SE J, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/903-Country-Club-Drive-Se-J-Rio-Rancho/id14694"> 903 COUNTRY CLUB Drive SE J, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$179,500</div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Step inside this bright and comfortable condo offering 2 spacious bedrooms and 2 full baths. Enjoy the convenience of an in-unit stackable washer and dryer, plus a brand-new oven ready for all your favorite meals. The kitchen features easy-care vinyl flooring, while plush carpet flows through the rest of the home for cozy living.Relax outdoors on your private balcony, and take advantage of the roomy hall closet for all your storage needs. With thoughtful updates and plenty of space, this condo is ready to welcome you home! </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,121</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1091113</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 14694, listingInfo: '903 COUNTRY CLUB Drive SE J. MLS # 1091113' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> <div class="bg-white rounded-lg shadow-md overflow-hidden"> <div class="md:flex"> <div class="md:flex-shrink-0"> <a href="https://albuquerquehomesonline.com/909-Country-Club-Drive-Se-B-Rio-Rancho/id15378"> <img class="h-48 w-full object-cover md:w-60 md:h-full max-h-48 w-auto object-cover" src="https://imgs1.iilogic.com/sw/1091/827/119_s.jpg" alt="909 Country Club Drive SE B, Rio Rancho "> </a> </div> <div class="p-2 sm:p-4 flex-1"> <div class="flex justify-between items-start"> <div> <h2 class="text-bg sm:text-xl font-semibold text-blue-700 hover:text-blue-900"> <a href="https://albuquerquehomesonline.com/909-Country-Club-Drive-Se-B-Rio-Rancho/id15378"> 909 Country Club Drive SE B, Rio Rancho </a> </h2> </div> <div class="text-right"> <div class="text-xl sm:text-2xl font-bold text-gray-800">$209,900</div> </div> </div> <div class="flex justify-between items-start"> <div> <p class="mt-1 text-gray-600 line-clamp-2"> Quiet lower level Condo with many updates..Newly remodled fresh paint, floors and countertops, fixtures, and lighting! All that's left to do is move in. Must see to appreciate, </p> </div> </div> <div class="mt-4 flex justify-between items-end"> <div class="flex space-x-4"> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BEDS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">2</div> <div class="text-xs text-gray-500">BATHS</div> </div> <div class="text-center"> <div class="font-semibold text-xl">1,190</div> <div class="text-xs text-gray-500">SQFT</div> </div> <div class="text-center hidden sm:block"> <div class="font-semibold text-xl">1091827</div> <div class="text-xs text-gray-500">MLS</div> </div> </div> <div class="flex items-center space-x-2"> <button class="flex items-center text-blue-600 hover:text-blue-800" x-data @click="$dispatch('open-modal', { id: 'request-info-modal', listing: 15378, listingInfo: '909 Country Club Drive SE B. MLS # 1091827' })" > <svg class="w-5 h-5 mr-1" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> </svg> <span class="hidden sm:block">REQUEST INFORMATION</span> </button> </div> </div> </div> </div> </div> </div> <!-- Pagination --> <nav class="mt-8"> </nav> </div> <div class="w-full lg:w-1/3 mt-8 lg:mt-0"> <div class="bg-white rounded-lg shadow-md p-6 mb-8 sticky top-4 z-10"> <div class="flex items-center mb-4"> <img src="/img/Daria-Derebera.jpg" alt="Daria Derebera Realtor" class="w-16 h-16 rounded-full object-cover mr-4"> <div> <h3 class="font-semibold text-lg">Daria Derebera</h3> <p class="text-gray-600">Real Estate Broker in Albuquerque, NM</p> </div> </div> <div class="flex items-center mb-4"> <a href="tel:+15055218550" class="text-gray-700 hover:text-blue-600"> <svg class="w-4 h-4 mr-1 inline" fill="currentColor" viewBox="0 0 20 20"> <path d="M2 3a1 1 0 011-1h2.153a1 1 0 01.986.836l.74 4.435a1 1 0 01-.54 1.06l-1.548.773a11.037 11.037 0 006.105 6.105l.774-1.548a1 1 0 011.059-.54l4.435.74a1 1 0 01.836.986V17a1 1 0 01-1 1h-2C7.82 18 2 12.18 2 5V3z"/> </svg> (505) 521 8550 </a> </div> <form method="POST" id="detail-contact-agent" class=""> <input type="hidden" name="address" value="https://albuquerquehomesonline.com/listings/request-info"> <input type="hidden" name="_token" value="UZdGBNIRqEzvNjUhC5YX7Vl2VUT3HPVwgGUW1FTz" autocomplete="off"> <div> <label for="contact_name" class="block text-sm font-medium text-gray-700 mb-1">Name</label> <input type="text" id="contact_name" name="name" class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" required> </div> <div> <label for="contact_email" class="block text-sm font-medium text-gray-700 mb-1 mt-3">Email</label> <input type="email" id="contact_email" name="email" class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" required> </div> <div> <label for="contact_phone" class="block text-sm font-medium text-gray-700 mb-1 mt-3">Phone</label> <input type="tel" id="contact_phone" name="phone" class="w-full px-3 py-2 border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" required> </div> <div> <label for="contact_message" class="block text-sm font-medium text-gray-700 mb-1 mt-3">Message</label> <textarea id="contact_message" name="message" rows="4" class="w-full px-3 py-2 text-sm border border-gray-300 rounded-md focus:outline-none focus:ring-2 focus:ring-blue-500" required></textarea> </div> <button type="submit" class="w-full bg-blue-600 text-white py-2 mt-4 rounded-md hover:bg-blue-700 transition-colors cursor-pointer"> Contact Agent </button> </form> </div> <div x-data="{ open: false }" @open-modal.window="open = $event.detail.id === 'detail-contact-agent'" x-show="open" x-cloak class="fixed inset-0 z-50 overflow-y-auto" > <div class="flex items-center justify-center min-h-screen p-4"> <div class="fixed inset-0 bg-black opacity-30" @click="open = false"></div> <!-- Success Message --> <div class="relative bg-white rounded-lg max-w-md w-full mx-auto shadow-lg p-6"> <div class="flex items-center justify-center mb-4"> <svg class="h-12 w-12 text-green-500" fill="none" viewBox="0 0 24 24" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"></path> </svg> </div> <h3 class="text-lg font-medium text-center">Agent Contact Request Sent</h3> <p class="text-gray-600 text-center mt-2">Thank you for contacting us. An agent will reach out to you as soon as possible.</p> <div class="mt-6 flex justify-center"> <button @click="open = false" class="px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-blue-600 hover:bg-blue-700"> Close </button> </div> </div> </div> </div> <script> const formsArr = ['detail-contact-agent']; formsArr.forEach(function(formId){ document.getElementById(formId).addEventListener("submit", function(event) { event.preventDefault(); this.action = this.address.value; const formData = new FormData(this); formData.set('type', this.id); formData.set('ua', navigator.userAgent); const submitButton = this.querySelector('button[type="submit"]'); if (submitButton) { submitButton.disabled = true; } const xhr = new XMLHttpRequest(); xhr.open('POST', this.action, false); try { xhr.send(formData); if(formId === 'detail-contact-agent'){ const modalEvent = new CustomEvent('open-modal', { detail: { id: 'detail-contact-agent' } }); window.dispatchEvent(modalEvent); } this.reset(); } catch (error) { console.error('Error submitting form:', error); alert('There was a problem submitting your request. Please try again.'); } finally { if (submitButton) { submitButton.disabled = false; } } }); }) </script> </div> </div> <h2 class="my-6">Explore Nearby Subdivisions in Rio Rancho Area</h2> <p class="text-gray-700 text-lg leading-relaxed mb-6"> Looking beyond <b>Panorama Heights</b>? Expand your home search to these neighboring zip codes in Rio Rancho Area. Each area offers unique characteristics, price points, and lifestyle options while maintaining convenient access to Albuquerque. Compare homes across multiple communities to find the perfect match for your budget and lifestyle preferences. </p> <div class="grid md:grid-cols-2 gap-8"> <div> <ul class="space-y-1"> <li> <a href="https://albuquerquehomesonline.com/TheEsplanade-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> The Esplanade Homes for Sale</a> - <i>3 Listings ~0 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/ChamisaGreens-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Chamisa Greens Homes for Sale</a> - <i>3 Listings ~0 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/Stonehenge-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Stonehenge Homes for Sale</a> - <i>1 Listing ~1 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/StonehengeAtHighResort-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Stonehenge At High Resort Homes for Sale</a> - <i>1 Listing ~1 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/ChamisaHillsCountryClubNorth-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Chamisa Hills Country Club North Homes for Sale</a> - <i>2 Listings ~1 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/WillowTraceChamisaHills-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Willow Trace Chamisa Hills Homes for Sale</a> - <i>1 Listing ~1 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/ArboleraDelEste-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Arbolera Del Este Homes for Sale</a> - <i>1 Listing ~2 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/BroadmoorAtHighResort-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Broadmoor At High Resort Homes for Sale</a> - <i>1 Listing ~2 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/CorralesHeights-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Corrales Heights Homes for Sale</a> - <i>1 Listing ~2 Miles Away</i> </li> <li> <a href="https://albuquerquehomesonline.com/CorazonAtCabezon-Subdivision" class="text-blue-600 hover:text-blue-800 hover:underline"> Corazon @ Cabezon Homes for Sale</a> - <i>1 Listing ~2 Miles Away</i> </li> </ul> </div> <div> <h3>Quick Facts about Panorama Heights community</h3> <ul class="space-y-1"> <li>Postal Code: <b>87124</b></li> <li>County: <b>Sandoval</b></li> <li>Elementary School: <a href="https://albuquerquehomesonline.com/RioRanchoElementarySchool">Rio Rancho</a></li> <li>Middle School: <a href="https://albuquerquehomesonline.com/RioRanchoMiddleSchool">Rio Rancho</a></li> <li>High School: <a href="https://albuquerquehomesonline.com/RioRanchoHighSchool">Rio Rancho</a></li> <li>Browse <a href="https://albuquerquehomesonline.com/PanoramaHeights-Subdivision/sold">1 resently sold</a> Panorama Heights properties</li> </ul> </div> </div> <div class="mt-8 text-sm text-gray-500 flex items-start"> <img src="/img/swmls_logo.gif" class="mr-3 flex-shrink-0 p-2 bg-white rounded border" alt="Southwest MLS Logo"> Some of the information contained herein has been provided by SWMLS, Inc. This information is from sources deemed reliable but not guaranteed by SWMLS, Inc. The information is for consumers’ personal, non-commerical use and may not be used for any purpose other than identifying properties which consumers may be interested in purchasing. </div> </div> <div x-show="open" x-data="mapModal()" x-transition:enter="transition ease-out duration-300" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease-in duration-200" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" class="fixed inset-0 z-50 overflow-hidden flex items-center justify-center p-1 sm:p-4" style="display: none;"> <div class="absolute inset-0 bg-black bg-opacity-75"></div> <div class="relative w-full max-w-7xl h-full max-h-[90vh] bg-white rounded-lg shadow-2xl overflow-hidden"> <div class="flex items-center justify-between p-4 bg-gray-50 border-b"> <h2 class="text-xl font-semibold text-gray-800">Property Map</h2> <button @click="closeModal()" class="bg-white rounded-full p-2 shadow-lg hover:bg-gray-100 transition"> <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path> </svg> </button> </div> <div x-show="loading" class="absolute inset-0 flex items-center justify-center bg-white z-20"> <div class="text-center"> <div class="animate-spin rounded-full h-12 w-12 border-b-2 border-blue-600 mx-auto"></div> <p class="mt-4 text-gray-600">Loading map and properties...</p> </div> </div> <div id="map" class="w-full h-full"></div> </div> </div> <script> let googleMapsLoaded = false; let googleMapsLoadPromise = null; let googleMapsQuery = null; function openMapModal(query = '') { googleMapsQuery = query; const modalElement = document.querySelector('[x-data="mapModal()"]'); const alpineData = Alpine.$data(modalElement); alpineData.openModal(); }; function loadGoogleMapsAPI() { if (googleMapsLoaded) { return Promise.resolve(); } if (googleMapsLoadPromise) { return googleMapsLoadPromise; } googleMapsLoadPromise = new Promise((resolve, reject) => { const script = document.createElement('script'); script.src = 'https://maps.googleapis.com/maps/api/js?key=AIzaSyBK_zl9FOZc4Wg84V2MRW2ncYlTZLk3m5o&callback=initMapCallback'; script.async = true; script.defer = true; window.initMapCallback = () => { googleMapsLoaded = true; resolve(); }; script.onerror = () => { googleMapsLoadPromise = null; reject(new Error('Failed to load Google Maps')); }; document.head.appendChild(script); }); return googleMapsLoadPromise; } function mapModal() { return { open: false, loading: false, map: null, markers: [], markerCluster: null, infoWindow: null, currentInfoWindow: null, mapInitialized: false, async openModal() { this.open = true; this.loading = true; try { await loadGoogleMapsAPI(); await this.$nextTick(); if (!this.mapInitialized) { await this.initMap(); this.mapInitialized = true; } await this.loadProperties(); } catch (error) { console.error('Error loading map:', error); alert('Failed to load the map. Please check your internet connection and try again.'); this.open = false; } finally { this.loading = false; } }, closeModal() { this.open = false; this.clearMarkers(); if (this.currentInfoWindow) { this.currentInfoWindow.close(); this.currentInfoWindow = null; } }, clearMarkers() { this.markers.forEach(marker => marker.setMap(null)); this.markers = []; }, async initMap() { this.map = new google.maps.Map(document.getElementById('map'), { center: { lat: 35.0844, lng: -106.6504 }, zoom: 12, zoomControl: true, zoomControlOptions: { position: google.maps.ControlPosition.RIGHT_CENTER }, mapTypeControl: true, scaleControl: true, streetViewControl: true, rotateControl: true, fullscreenControl: true }); this.infoWindow = new google.maps.InfoWindow(); this.map.addListener('click', () => { if (this.currentInfoWindow) { this.currentInfoWindow.close(); this.currentInfoWindow = null; } }); }, async loadProperties() { try { this.clearMarkers(); const response = await fetch('/api/map-search' + googleMapsQuery); if (!response.ok) { throw new Error(`HTTP error! status: ${response.status}`); } const properties = await response.json(); this.createMarkers(properties?.results); if (this.markers.length > 0) { const bounds = new google.maps.LatLngBounds(); this.markers.forEach(marker => bounds.extend(marker.getPosition())); this.map.fitBounds(bounds); } } catch (error) { console.error('Error loading properties:', error); } }, createMarkers(properties) { properties.forEach(property => { const priceTag = this.createPriceMarker(property.price); const marker = new google.maps.Marker({ position: { lat: property.lat, lng: property.lng }, map: this.map, icon: { url: 'data:image/svg+xml;charset=UTF-8,' + encodeURIComponent(priceTag), scaledSize: new google.maps.Size(50, 25), anchor: new google.maps.Point(25, 25) }, zoomControl: true, scaleControl: true, }); marker.addListener('click', () => { this.showPropertyInfo(property, marker); }); this.markers.push(marker); }); }, createPriceMarker(price) { const formattedPrice = '$' + (price > 10000 ? new Intl.NumberFormat().format(Math.round(price / 1000)) + 'K' : new Intl.NumberFormat().format(price)); return ` <svg width="50" height="25" xmlns="http://www.w3.org/2000/svg"> <g> <rect x="0" y="0" width="50" height="20" rx="4" fill="#3B82F6"/> <polygon points="25,25 21,20 29,20" fill="#3B82F6"/> <text x="25" y="14" text-anchor="middle" fill="white" font-family="Arial" font-size="10" font-weight="500" style="font-size: 11px !important;">${formattedPrice}</text> </g> </svg> `; }, showPropertyInfo(property, marker) { if (this.currentInfoWindow) { this.currentInfoWindow.close(); } const content = ` <div class="max-w-sm"> <a href="${property.url}" target="_blank"><img src="${property.image}" alt="${property.address}" class="w-full h-48 object-cover rounded-t-lg"></a> <div class="p-2"> <div class="flex flex-row justify-between"> <div> <div class="text-lg font-semibold text-gray-800">${property.address}</div> </div> <div class="text-right"> <p class="text-lg font-bold text-blue-800 ml-2">$${property.price.toLocaleString()}</p> </div> </div> <p class="text-md text-gray-800 mb-2"><span class="font-semibold">${property.city}</span> ${property.zip}, MLS# <span class="font-semibold">${property.mls_id}</span></p> <div class="flex items-center text-gray-600 text-sm mb-3"> ${property.beds > 0 ? `<span class="mr-2">🛏️ ${property.beds} beds</span>` : ''} ${property.baths > 0 ? `<span class="mr-2">🚿 ${property.baths} baths</span>` : ''} ${property.sqft != 0 ? `<span>📐 ${property.sqft} sqft</span>` : ''} </div> <div class="mx-4"> <a href="${property.url}" target="_blank" class="block w-full text-center bg-blue-600 text-white py-2 px-4 rounded hover:bg-blue-700 transition"> View Details </a> </div> </div> </div>`; this.currentInfoWindow = new google.maps.InfoWindow({ content: content }); this.currentInfoWindow.open(this.map, marker); }, init() { // Component initialized } } } </script> <!-- Request Info Modal (using Alpine.js) --> <div x-data="{ open: false, listingId: null, listingInfo: null, showSuccess: false }" @open-modal.window="open = $event.detail.id === 'request-info-modal'; listingId = $event.detail.listing; listingInfo=$event.detail.listingInfo; showSuccess = false" x-show="open || showSuccess" x-cloak class="fixed inset-0 z-50 overflow-y-auto" > <div class="flex items-center justify-center min-h-screen p-4"> <div class="fixed inset-0 bg-black opacity-30" @click="open = false; showSuccess = false"></div> <!-- Success Message --> <div x-show="showSuccess" class="relative bg-white rounded-lg max-w-md w-full mx-auto shadow-lg p-6"> <div class="flex items-center justify-center mb-4"> <svg class="h-12 w-12 text-green-500" fill="none" viewBox="0 0 24 24" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"></path> </svg> </div> <h3 class="text-lg font-medium text-center">Information Request Submitted</h3> <p class="text-gray-600 text-center mt-2">Thank you for your interest. We'll get back to you shortly.</p> <div class="mt-6 flex justify-center"> <button @click="showSuccess = false; open = false" class="px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-blue-600 hover:bg-blue-700"> Close </button> </div> </div> <!-- Form Modal --> <div x-show="open && !showSuccess" class="relative bg-white rounded-lg max-w-md w-full mx-auto shadow-lg"> <div class="relative bg-white rounded-lg max-w-md w-full mx-auto shadow-lg"> <div class="px-6 py-4 border-b"> <h3 class="text-lg font-medium">Request Information</h3> <button @click="open = false" class="absolute top-4 right-4 text-gray-400 hover:text-gray-500"> <svg class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path> </svg> </button> </div> <form method="POST" id="search-request-info" target="submission-frame" class="p-6"> <input type="hidden" name="address" value="https://albuquerquehomesonline.com/listings/request-info"> <input type="hidden" name="_token" value="UZdGBNIRqEzvNjUhC5YX7Vl2VUT3HPVwgGUW1FTz" autocomplete="off"> <div class="mb-4"> <label for="name" class="block text-sm font-medium text-gray-700">Name</label> <input type="text" name="name" id="name" class="mt-1 p-1 block w-full rounded-md border border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500" required> </div> <div class="mb-4"> <label for="email" class="block text-sm font-medium text-gray-700">Email</label> <input type="email" name="email" id="email" class="mt-1 p-1 block w-full rounded-md border border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500" required> </div> <div class="mb-4"> <label for="phone" class="block text-sm font-medium text-gray-700">Phone</label> <input type="text" name="phone" id="phone" class="mt-1 p-1 block w-full rounded-md border border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500" required> </div> <div class="mb-4"> <label for="message" class="block text-sm font-medium text-gray-700">Message</label> <textarea name="message" id="message" rows="4" class="mt-1 p-1 block w-full rounded-md border border-gray-300 shadow-sm focus:border-blue-500 focus:ring-blue-500 text-sm" required x-bind:value="listingInfo ? `I'm interested in listing: ${listingInfo}` : ''"></textarea> </div> <div class="mt-6 flex justify-end"> <button type="button" @click="open = false" class="mr-3 px-4 py-2 border border-gray-300 rounded-md text-sm font-medium text-gray-700 hover:bg-gray-50"> Cancel </button> <button type="submit" class="px-4 py-2 border border-transparent rounded-md shadow-sm text-sm font-medium text-white bg-blue-600 hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-blue-500"> Submit Request </button> </div> </form> </div> </div> </div> <script> document.getElementById('search-request-info').addEventListener("submit", function(event) { event.preventDefault(); this.action = this.address.value; const formData = new FormData(this); formData.set('type', this.id); formData.set('ua', navigator.userAgent); const submitButton = this.querySelector('button[type="submit"]'); if (submitButton) { submitButton.disabled = true; } const xhr = new XMLHttpRequest(); xhr.open('POST', this.action, false); try { xhr.send(formData); const modal = this.closest('[x-data*="open"]'); if (modal) { Alpine.$data(modal).showSuccess = true; Alpine.$data(modal).open = false; } this.reset(); } catch (error) { console.error('Error submitting form:', error); alert('There was a problem submitting your request. Please try again.'); } finally { if (submitButton) { submitButton.disabled = false; } } }); </script>