a:6:{i:0;s:35448:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Bali And Singapore Package</h1></div>
						<p class="breadcrumb ar uu small"><a href="https://www.rehmattourzandtravels.co.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="https://www.rehmattourzandtravels.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Bali And Singapore Package</p>
						</div>
						</div>
						</section>
										<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					
											<p class="mb5px"><b>Duration :</b> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Bali, Singapore</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.rehmattourzandtravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bali and Singapore Package - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="193338"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_21/627264/305419.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_21/627264/305419.jpg"  width="150" height="84"    alt="Bali and Singapore Package" title="Bali and Singapore Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Rehmat tour and travel is operating in Punjab and it is operated since 2010 and is offering exotic travel package to the valued customers. Traveling not only refreshes your soul but also teaches you a lot. Thus rehmat tour and travel provides various packages for students, groups, and also for honeymoon couples. Our company takes care of our clients that they have a unique travel experience at an affordable price. Our tour packages include Bali Singapore Honeymoon packages which include 6 nights and 7 days tour especially made for newly wedded couples with exotic places like Ubud, Gili islands, and many more.<br />
<br />
Our Packages include picking up from the airport and one day stay at Bali for relaxing overnight at the hotel and also for freshening up. This package also includes sightseeing of nearby places which also includes Mount Volcano, spring water temple. Here the wood carving materials are also famous and are imported from other islands such as Java, Sumatra.<br />
<br />
Bali is famous for beaches and lots of beaches are available for relaxing and rejuvenating. Even Bali Singapore Honeymoon packages with cruise lead to the end of Bali tour and on the next move to Singapore for exotic travel. Even various amenities are provided during travel which will take care of the needs of our trusted customers.<br />
<br />
Our professional team members provide a hassle-free tour with various other facilities such as hotel booking, visa, flight booking, tour guide, and many more. Bali Singapore honeymoon packages include various spas, Bali parties, and also a buffet of their choices with cultural dance parties. Thus a lifetime honeymoon couples should visit this place and make it memorable for lifelong.<br />
<br />
Hotel Details:<br />
<br />
Bali: Holiday Inn Express Baruna or Similar 3 Star<br />
<br />
Singapore City: Summer View/Aqueen Lavender Or Similar 3 Star								</div>
								<br />
																<div class="headHr">
					            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
					            </div>
					            
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 1:</b> Bali: Arrival & Uluwatu Temple with Kecak Dance
										</p>
										<p class="aj">Your amazing Bali Singapore tour package start today.<br />
On arrival at Bali International Airport, complete your Immigration formalities and collect your luggage. Proceed to arrival hall, our tour representative will receive and assist you to board your transfer to hotel according to itinerary of Bali tour package. Complete your check-in formalities (Standard international Check-in Time is 1400 Hrs.) and time free for freshen up. Time are at leisure and overnight comfortable stay at hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 2:</b> Bali – Kintamani Volcano & Ubud Village
										</p>
										<p class="aj">Encounter live Volcano and breathe taking view of Ubud is routed today as per you tour package for Bali Singapore.<br />
After having delicious breakfast in hotel restaurant. Get ready to enjoy full day Kintamani Volcano tour with Ubud village. Tour start from gold and silver smith in Celuk Village, there are a lot of huge silver shop in this village. The woodcarving Village name is Mas Village and Kemenuh Village, both village produce very good quality of woodcarving made from very hard wood such as teak, mahogany, ebony and hibiscus wood, those of wood import from another island Java, Sumatra and Sulawesi. Second stop Tirta Empul or Spring Water Temple, it's located in Tampaksiring. The temple was built around the springs and special bathing-pools. In Balinese legend this spring water was created by Indra God when he fought with the Mayadenawa King. This place now very crowded with the people when the secret day for bath special ritual called in Balinese Melukat. Third stop Batur Mount Volcano, this places located in Kintamani District - Bangli Regency. Penelokan Village will be the best to view of the Batur Mount and Batur Lake. Batur Mount has eruption several time already, the biggest eruption was 1926 destroyed the Batur Village, this village it was near the lake and now they move to the top. The black lava was the eruption in 1974. This is still active Volcano smoking all the time and lastly visit Ubud street market for traditional Balinese stuffs with bargaining skill is necessary. Return to hotel and overnight stay at hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 3:</b> Bali – Water Sport & Bounty Dinner Cruise
										</p>
										<p class="aj">Enjoy water adventure and Sunset Dinner Cruise as per your Bali Indonesia package tour.<br />
After having delicious breakfast in hotel restaurant. Get ready for water adventure sports at Tanjung Benoa beach. Your Bali travel package will not complete without trying Bali Water Sport activities. Your package is Inclusive of one round of Parasailing, one round of Banana Boat and one round of Jet Ski. Others water sports activities you can enjoy on personal account their like Sea Walk, Flying Fish, Flying Board, Snorkeling, Kayaking and Scuba Diving etc. In the afternoon return to hotel. In the early evening get ready for sunset dinner cruise in Bali. The Bali Dinner Cruises departs from Benoa Harbor to surround the coastal area of Benoa and serves the International Buffet Dinner with spectacular dance performance and live music on board. This is followed by a delicious international buffet dinner before you can dance the night away at our disco or enjoy our live cabaret show. This Sunset Dinner Cruise is suitable for all Couples, Bachelors and family so bring the kids along to enjoy the party.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 4:</b> Bali to Singapore Travel & Night Safari
										</p>
										<p class="aj">Collect the sweet memories of your Bali tour Package from India and travel to Singapore.<br />
After having delicious breakfast in hotel restaurant. Complete your checkout formalities at hotel reception (settle your dues if any). Be ready at hotel lobby we will transfer you airport 4 hours prior from scheduled departure time. On arrival at Changi International Airport –Singapore. Your tour representative will meet you and assist you according to Singapore tour itinerary. Transfer to hotel on SIC (Seat in Coach) basis. Check-in the hotel (STD International Check-in time start 14:00Hrs -15:00Hrs and early check-in is subject to availability of rooms at time of check-in). Time free for freshen up. In the evening get ready to enjoy legendary Singapore Night Safari goes above and beyond the typical zoo experience. Night Safari is one of the city’s top family attractions. Once you entered in Night Safari, board an open-air tram, spotting nocturnal animals as they roam and play. After the tram ride, proceed for walking trails such as Fishing Cat Trail, Wallaby Trail, and Leopard Trail. Further watch a cultural dance performance by a troupe of Thumbuakar warriors, including feats such as fire-eating and flame- throwing. Another popular attraction is the Creatures of the Night show—a 20-minute educational showcase of nocturnal animals, during which travelers can appreciate the powerful jaws of a spotted hyena, watch the African serval display its ability to leap for prey, and see many more night creatures in action. After night safari proceed to meeting point given by your driver and board return transfer to your hotel. Overnight comfortable stay in hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 5:</b> Singapore: Enjoy City Tour & Afternoon Sentosa Island Tour
										</p>
										<p class="aj">Experience city familiarization drive and Island wonder today as per your and travel to enjoy Bali Singapore travel package<br />
After having delicious breakfast in hotel restaurant. Get ready to explore the highlights of Singapore city. Singapore City Tour includes Orchard Road, Suntec City and the Fountain of Wealth. Singapore’s joy and pride- the Merlion Statue will approach you more photographic moments. Orientation tour of the Fullerton Hotel and Esplanade. Enjoy an amazing ride of Singapore Flyer (ticket cost extra) that makes your holidays amazing and catch panoramic views of Singapore city. Pass through Marina Bay Sands and the Helix Bridge and visit Little India area, China Town, and Thian Hock Temple to present beautiful touches to Singapore city tour. In the afternoon we will proceed to enjoy Sentosa Island Tour one of the best Singapore sightseeing tour. Your tour start with a scenic ride of cable car to reach Sentosa Island. Proceed to enjoy S.E.A Aquarium includes over 100,000 marine creatures, from over 800 species across 49 habitats, Maritime Experiential Museum, relive the glorious conquest of the seas, as you return to the Maritime Silk Route of eras past. Be transported through time in 15 thematic galleries, Typhoon Theater is a journey through the seas in a 4D theatre and encounter a storm in the Typhoon Theatre and Wings Of Time show,  End your day at Sentosa Island with the Award Winning Outdoor Night Show in the world set against the majestic open sea. Be mesmerized by a multi-sensory presentation of water display, laser show, fire effects and spectacular music as you soar through space and time in a magical adventure. After show proceed to meeting point given by your driver and board return transfer to your hotel. Overnight comfortable stay in hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 6:</b> Singapore: Today Experience Thrill & Adventure of Universal Studio
										</p>
										<p class="aj">Today enjoy the adventure thrill and fun of your Bali Singapore trip package.<br />
After having delicious breakfast in hotel restaurant. Get ready to enjoy and land of adventures, thrills and movies – Universal Studio Tour, Southeast Asia’s first movie-themed park, Universal Studios Singapore offers exciting attractions, including 24 movie-themed rides. The park is divided into seven themed zones Hollywood, New York, Sci-Fi City, Ancient Egypt, Lost World,<br />
Far-Far Away, and Madagascar, each with its own set of attractions. Transformer The Ride, Revenge of Mummy, Hollywood Dreams Parade or Lake Hollywood Spectacular fireworks show are on your must-see list. After such an amazing day, proceed to given meeting point to board your return transfer to Hotel. Overnight comfortable stay in the hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 7:</b> Singapore: Departure
										</p>
										<p class="aj">Collect the sweet memories of your Bali Singapore tour package<br />
After having delicious breakfast in hotel restaurant. Time free at leisure or for shopping. Pack your luggage and complete your checkout formalities at hotel reception (settle your dues if any). Standard checkout time is 1130 Hrs. – 1200 Hrs. Submit your luggage in hotel lobby. We will transfer you to airport 4 hours prior from scheduled departure time of flight.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>CP (Room + Breakfast)</li>
																						<li>Hotel</li>
																						<li>Sightseeing</li>
																				<li>03 Nights Accommodation at Bali above hotels</li><li>
03 Nights Accommodation at Singapore above hotels</li><li>
Daily breakfast at hotels</li><li>
Bali Airport – Hotel – Airport Transfer by Private AC Car</li><li>
Kintamani Volcano Tour with Ubud Village and Handicraft Center on SIC Basis</li><li>
Water Sports Activities at Tanjung Benoa Beach Parasailing, Jet Ski and Banana Boat on SIC</li><li>
Sunset Bounty Dinner Cruise On SIC Basis</li><li>
Meet & Greet at Bali Airport</li><li>
Entrance Fee According to Itinerary and Mineral Water Bottle per Person 1 Bottle per Day</li><li>
All Tours on SIC & Airport Transfers on Pvt Basis in Bali Only</li><li>
Singapore Airport – Hotel – Airport Transfer On SIC Basis</li><li>
Night Safari Tour with Tram Ride, Animal Show & Fire Work Show On SIC Basis</li><li>
Singapore City Tour On SIC (Seat in Coach Basis) Basis</li><li>
Afternoon Sentosa Island Tour with Sea Aquarium, Wings of Time-2nd Show, Maritime Experiential Museum, Typhoon Theater and Cable Car Ride (One Way) On SIC Basis</li><li>
Universal Studio Tour with Unlimited Rides and Shows on SIC Basis</li><li>
English Speaking Guide Assistance</li><li>
All Tours & Transfers On SIC Basis</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Some Advance Percentage of total booking amount</li><li>
Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
												
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</div>
												<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>Upon cancellation, refund will be made after deducting the Retention Amount.</li><li>
Retention Amount varies as per the number of days left before your package start date.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.rehmattourzandtravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bali and Singapore Package - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="193338"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/amritsar-tour-packages.htm" title="Amritsar Tour Packages">Amritsar</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/dubai-tour-packages.htm" title="Dubai Tour Packages">Dubai</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/kochi-tour-packages.htm" title="Kochi Tour Packages">Kochi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/bagdogra-tour-packages.htm" title="Bagdogra Tour Packages">Bagdogra</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/paro-tour-packages.htm" title="Paro Tour Packages">Paro</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/guwahati-tour-packages.htm" title="Guwahati Tour Packages">Guwahati</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/punakha-tour-packages.htm" title="Punakha Tour Packages">Punakha</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/bali-tour-packages.htm" title="Bali Tour Packages">Bali</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/darjeeling-tour-packages.htm" title="Darjeeling Tour Packages">Darjeeling</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/thimphu-tour-packages.htm" title="Thimphu Tour Packages">Thimphu</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/shillong-tour-packages.htm" title="Shillong Tour Packages">Shillong</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/jalpaiguri-tour-packages.htm" title="Jalpaiguri Tour Packages">Jalpaiguri</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/cherrapunji-tour-packages.htm" title="Cherrapunji Tour Packages">Cherrapunji</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/trimbakeshwar-tour-packages.htm" title="Trimbakeshwar Tour Packages">Trimbakeshwar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/kumarakom-tour-packages.htm" title="Kumarakom Tour Packages">Kumarakom</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/siliguri-tour-packages.htm" title="Siliguri Tour Packages">Siliguri</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/alleppey-tour-packages.htm" title="Alleppey Tour Packages">Alleppey</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/tawang-tour-packages.htm" title="Tawang Tour Packages">Tawang</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/espiritu-santo-tour-packages.htm" title="Espiritu Santo Tour Packages">Espiritu Santo</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/singapore-city-tour-packages.htm" title="Singapore Tour Packages">Singapore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/bomdila-tour-packages.htm" title="Bomdila Tour Packages">Bomdila</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/bangkok-tour-packages.htm" title="Bangkok Tour Packages">Bangkok</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/dharamshala-tour-packages.htm" title="Dharamshala Tour Packages">Dharamshala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/trivandrum-tour-packages.htm" title="Trivandrum Tour Packages">Trivandrum</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/munnar-tour-packages.htm" title="Munnar Tour Packages">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/chandigarh-city-tour-packages.htm" title="Chandigarh City Tour Packages">Chandigarh City</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/kalimpong-tour-packages.htm" title="Kalimpong Tour Packages">Kalimpong</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/kovalam-tour-packages.htm" title="Kovalam Tour Packages">Kovalam</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/mandla-tour-packages.htm" title="Mandla Tour Packages">Mandla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/gangtok-tour-packages.htm" title="Gangtok Tour Packages">Gangtok</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/house-boat-holidays-catid.htm" title="House Boat Packages">House Boat</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.rehmattourzandtravels.co.in/cruise-holidays-catid.htm" title="Cruise Packages">Cruise</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.rehmattourzandtravels.co.in/desert-holidays-catid.htm" title="Deserts Packages">Deserts</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Bali, Singapore</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.rehmattourzandtravels.co.in/holiday-packages/04-nights05-days-bali-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_21/627264/305548.jpg"  alt="04 Nights/05 Days Bali Package" title="04 Nights/05 Days Bali Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.rehmattourzandtravels.co.in/holiday-packages/04-nights05-days-bali-package.htm" title="04 Nights/05 Days Bali Package"><h3>04 Nights/05 Days Bali Package</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Bali</p>
															<div class="mt10px small">
							<form name="pkg_193401" id="pkg_193401" method="post" action="https://www.rehmattourzandtravels.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.rehmattourzandtravels.co.in/holiday-packages/04-nights05-days-bali-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="04 Nights/05 Days Bali Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="193401"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.rehmattourzandtravels.co.in/holiday-packages/bali-tour-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_21/627264/305418.jpg"  alt="Bali Tour Package" title="Bali Tour Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.rehmattourzandtravels.co.in/holiday-packages/bali-tour-package.htm" title="Bali Tour Package"><h3>Bali Tour Package</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Bali</p>
															<div class="mt10px small">
							<form name="pkg_193337" id="pkg_193337" method="post" action="https://www.rehmattourzandtravels.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.rehmattourzandtravels.co.in/holiday-packages/bali-tour-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Bali Tour Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="193337"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:80:"Bali Singapore Honeymoon Packages With Cruise, Bali Singapore Package for Couple";i:2;s:67:"bali singapore honeymoon packages, singapore bali honeymoon package";i:3;s:167:"Want to book Bali Singapore honeymoon packages with cruise? then visit us. We offer best tour packages which makes your holiday more memorable and at reasonable price.";i:4;s:2239:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": ""        
		                 },
		      "description": "Rehmat tour and travel is operating in Punjab and it is operated since 2010 and is offering exotic travel package to the valued customers. Traveling not only refreshes your soul but also teaches you a lot. Thus rehmat tour and travel provides various packages for students, groups, and also for honeymoon couples. Our company takes care of our clients that they have a unique travel experience at an affordable price. Our tour packages include Bali Singapore Honeymoon packages which include 6 nights and 7 days tour especially made for newly wedded couples with exotic places like Ubud, Gili islands, and many more.

Our Packages include picking up from the airport and one day stay at Bali for relaxing overnight at the hotel and also for freshening up. This package also includes sightseeing of nearby places which also includes Mount Volcano, spring water temple. Here the wood carving materials are also famous and are imported from other islands such as Java, Sumatra.

Bali is famous for beaches and lots of beaches are available for relaxing and rejuvenating. Even Bali Singapore Honeymoon packages with cruise lead to the end of Bali tour and on the next move to Singapore for exotic travel. Even various amenities are provided during travel which will take care of the needs of our trusted customers.

Our professional team members provide a hassle-free tour with various other facilities such as hotel booking, visa, flight booking, tour guide, and many more. Bali Singapore honeymoon packages include various spas, Bali parties, and also a buffet of their choices with cultural dance parties. Thus a lifetime honeymoon couples should visit this place and make it memorable for lifelong.

Hotel Details:

Bali: Holiday Inn Express Baruna or Similar 3 Star

Singapore City: Summer View/Aqueen Lavender Or Similar 3 Star",
		      "name": "Bali and Singapore Package",
		      "telephone": "+91-8699995002"
		    }
		    </script>
			";i:5;N;}