a:6:{i:0;s:50360:"				<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-->				
									<div class="h1"><h1>7 Days 6 Nights Honeymoon Deluxe Package</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.vnandamantourtravel.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.vnandamantourtravel.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>7 Days 6 Nights Honeymoon Deluxe Package</p> 
										<div class="fo dt w100"> 
					<div class="dtc vat ttw-detail pr20px pr">					
												<ul class="lsn gallery-slide" id="bxlider_ins">
																	<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296679.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296679.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296679.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296680.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296680.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296680.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296681.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296681.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296681.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296682.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296682.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296682.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296683.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296683.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296683.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296684.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296684.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296684.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296685.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296685.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296685.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296686.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296686.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296686.jpg"  alt="7 Days 6 Nights Honeymoon Deluxe Package" title="7 Days 6 Nights Honeymoon Deluxe Package" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																	</ul>
							
							<ul class="lsn" id="bxslider-pager"><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296679.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296680.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296681.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296682.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296683.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296684.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296685.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/296686.jpg"></a></li></ul>					
					<script>
					var $j = jQuery.noConflict();
					var realSlider= $j("ul#bxlider_ins").bxSlider({
					      speed:500,
					      pager:false,
					      auto: true,
					      slideWidth: 450,
					      slideMargin: 0,
					      nextText:'',
					      prevText:'',
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					        changeRealThumb(realThumbSlider,newIndex);
					        
					      }
					      
					    });
					    
					    var realThumbSlider=$j("ul#bxslider-pager").bxSlider({
					      minSlides: 4,
					      maxSlides: 4,
					      slideWidth: 200,
					      slideMargin: 5,
					      moveSlides: 1,
					      pager:false,
					      speed:1000,
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      nextText:'<span></span>',
					      prevText:'<span></span>',
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					
					      }
					    });
					    
					    linkRealSliders(realSlider,realThumbSlider);
					    
					    if($j("#bxslider-pager li").length<5){
					      $j("#bxslider-pager .bx-next").hide();
					    }
					
					// sincronizza sliders realizzazioni
					function linkRealSliders(bigS,thumbS){
					  
					  $j("ul#bxslider-pager").on("click","a",function(event){
					    event.preventDefault();
					    var newIndex=$j(this).parent().attr("data-slideIndex");
					        bigS.goToSlide(newIndex);
					  });
					}
					
					//slider!=$thumbSlider. slider is the realslider
					function changeRealThumb(slider,newIndex){
					  
					  var $thumbS=$j("#bxslider-pager");
					  $thumbS.find('.active').removeClass("active");
					  $thumbS.find('li[data-slideIndex="'+newIndex+'"]').addClass("active");
					  
					  if(slider.getSlideCount()-newIndex>=4)slider.goToSlide(newIndex);
					  else slider.goToSlide(slider.getSlideCount()-4);
					
					}
					
					</script>
					</div>
			        <div class="dtc">
			        <p class="b xlarge mb10px">7 Days 6 Nights Honeymoon Deluxe Package</p>
					
											<p class="mb5px"><b>Duration :</b> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Port Blair, Adilabad, Anantapur, Cuddapah</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px"><i class="fa fa-inr"></i> 48310						</p>
						<p class="xxsmall alpha50">Per Person</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="7 Days 6 Nights Honeymoon Deluxe Package - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px ts0 xxlarge dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="189110"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
												<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Andaman Island Houses Some Amazing Beaches and Islands along with the Beautiful Capital City to Turn Your Dream Vacation Into a Reality. Blessed with lush Green Forests and White Sand Beaches, it offers an ideal Place to Holiday with Your Family and Friends and Has a Good Time.<br />
At VN Andaman Tour Travel, we offer 6 nights and 7 days Port Blair, Havelock with Baratang Island,& Rose island &Neil Island. Tours that will cover most of the Andaman Excursion you would like to explore while Honeymoon holidaying in Andaman Island. Our Tour includes a visit to some wonderful Beaches of The Island along with a Port Blair City Tour so that you can make the most of your vacation and take away many lifetime memories with us. This is a Perfect Tour for Those Coming Honeymoon for 7 Days to The Andaman Islands. You cover all the top 6 islands in Andaman and good enough leisure time is also present. All attractions in Havelock and Baratang Island are covered in This Tour Program.</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Arrive to Port Blair: -										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												On arrive at Port Blair, our representative receives you at the Airport and drop you to your hotel to rest and relax. After Lunch proceeds to the nearest Beach, Corbin’s Cove. The Crescent shaped coconut palm fringed Corbyn's Cove ideal for swimming & bathing. Coastal drive to this beach is awesome; a stretch of around 4 Km with an open sea towards your left is a sight to experience. Take pit stops during this ride to click pictures and to explore the beauty. Later proceed to attend the enthralling Sound and Light Show at Cellular Jail - where the heroic saga of the Indian freedom struggle is brought alive. Enacting of freedom fighters and their struggle for India's Independence is enacted during this trip. Post completion of this trip, we drop you back to your Hotel																											   
												<div class="mt10px">
												
																	
														<p class="dib">Accommodation :<span class="b"> North Reef Or haywizz Resort</span></p> 
																										</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Port Blair – Baratang Island: -										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Depart to Baratang Island by road through the dense tropical forest and Jarawa Tribal reserve in a convoy. Often you might see a member of the Jarawa Tribe while passing through the tribal reserve. At the end of this forest journey, you would reach Baratang jetty. Launch service is available to cross the sea bay. Enjoy the breathtaking fiber boat ride through a fascinating Mangrove drive, which leads to the start point of the trek to Limestone caves. Trek through dense forest to reach the Limestone Cave. Made up of the mineral calcite (calcium carbonate) the cave contains beautiful cave formation. Return back for an overnight stay at respective Hotel at Port Blair by the same route. Note: Baratang Island is CLOSED on Mondays.															   
												<div class="mt10px">
												
																	
														<p class="dib">Accommodation :<span class="b"> North Reef Or haywizz Resort</span></p> 
																										</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Port Blair – Havelock Island: -										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today we depart to the Andaman Islands most amazing destination, Havelock Island. The destination is rated as the best island in India. Today, we start a journey towards Havelock Island via luxury cruise from Port Blair. On arrival at Havelock Island, our representative will receive and escort you to check-in to the resort. After lunch, we proceed to Radhanagar Beach, which rated the #7 among the finest beach in Asia. Explore this white sand beach and bask in the beauty of this natural wonder. Post this we drop you back to your resort where you relax. Night stay at Havelock.															   
												<div class="mt10px">
												
																	
														<p class="dib">Accommodation :<span class="b"> Haywizz Hotel & Resorts</span></p> 
																										</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Havelock Island to Neil Island: -										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Well, how about exploring something underwater? Today, we begin our journey to the most visited snorkeling destination in Havelock Island, Elephant Beach. Around 30 Minutes by boat, Elephant Beach flaunts one among the best reefs in Havelock Island. The great thing is that the reef here starts at a depth of less than a meter. Upon reaching Elephant beach, we rest and relax. Later, our guide takes you to snorkel underwater where you explore the amazing reef in Elephant beach. Later we return back from Elephant beach to the Havelock dock in a boat <br />
This we drop you back to your resort where you relax. Night stay at Havelock.															   
												<div class="mt10px">
												
																	
														<p class="dib">Accommodation :<span class="b"> Haywizz Hotel & Resorts</span></p> 
																										</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Havelock Island to Neil Island: -										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After Breakfast Check out Hotel and visit Neil Island. Today, we begin our journey from Havelock to Neil Island to explore the beauty of Neil Island. Firstly we cover, Bharatpur Beach. The closest white sand beach to Neil dock, Bharatpur beach. The reef here is still unexplored and travelers can avail snorkeling, glass-bottom boat rides and Jet Ski rides here. Then, visit Sitapur beach which is a perfect picturesque beach for travelers. We also visit Laxmanpur beach. Known as the sunset point at Neil Island, Laxmanpur beach is a vast open white sand beach. Post completion we drop you back to the dock to your hotel in Neil Island for overnight stay In Neil Island.															   
												<div class="mt10px">
												
																	
														<p class="dib">Accommodation :<span class="b"> Holiday INN Beach Resort</span></p> 
																										</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 6											
											:</b> Neil Island to Port Blair: -										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today we return back from the exotic journey of Havelock and Neil Island to Port Blair. Upon reaching Port Blair our representative attends you and drop you back to your hotel. Rest and relax and then go visit the city market to purchase gifts and souvenirs for your friends and family.															   
												<div class="mt10px">
												
																	
														<p class="dib">Accommodation :<span class="b"> Haywizz Hotel & Resorts</span></p> 
																										</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 7											
											:</b> Depart Port Blair - Airport Dropping										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Drop to the Airport. Return home with sweet memories of this exotic destination, the Andaman Islands.															   
												<div class="mt10px">
												
																	
														<p class="dib">Accommodation :<span class="b"> North Reef</span></p> 
																										</div>	
															
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>MAP (Room + Breakfast + Lunch/Dinner)</li>
																						<li>4 Star Hotel</li>
																				<li>All Entry Tickets and ferry tickets & Permit Charges.</li><li>
All sightseeing By 02 Personal A/c Vehicles.</li><li>
Havelock Transfers in luxury Makruzz Cruise's /Green Ocean Cruise.</li><li>
Full day Tour with all Transfers including Airport Pickup and Drop.</li><li>
Personal Tour Coordinator to help you with any requirements during the tour.</li><li>
Travel assistance by field executive at all the major entry exit points (Airport / Jetty /Jail / Water Sports    Complex, etc.).</li><li>
Accommodation in AC Rooms as given at Hotels in Port Blair & Havelock & NEIL Island with Breakfast and Dinner all taxes.</li><li>
Complementary Scuba Diving 2 Person in North Bay Island</li><li>
Complimentary Breakfast & Dinner.</li><li>
Complimentary snorkeling In Elephant beach in Havelock Island.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Flight fares are not included.</li><li>
Any Personal expenses room Service & Special Orders. Alcohol and non-alcoholic Beverage. </li><li>
Any extra excursion or sights caning apart From the suggested tour itinerary.</li><li>
Camera Tickets are not including in the mentioned cost of Sightseeing & Transfers.</li><li>
Other meals not mentioned, laundry, telephone calls.</li><li>
Vehicles are not at disposal at any of the islands.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>20% Advance Percentage of total booking amount</li><li>
Airfare/Transport fare to be paid full at one time in advance.</li><li>
Payments: For all the services contracted, certain advance payment should be made to hold the booking, on confirmed basis & the balance amount can be paid either before your departure from your country or upon arrival in INDIA but definitely before the commencement of the services. Management personnel’s hold the right to decide upon the amount to be paid as advance payment, based on the nature of the service & the time left for the commencement of the service.</li><li>
Apart from above in some cases like Special Train Journeys, hotels or resorts bookings during the peak season (X-Mas, New Year), full payment is required to be sent in advance</li></ul>						
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								Our Liabilities & Limitations:

 Please note that after the finalization of the Tour/ service Cost, if there are any Hike in entrance fees of monuments / museums, Taxes, fuel cost or guide charges – by Govt of India, the same would be charged as extra. We act only in the capacity of agent for the hotels, airlines, transporters, railways & contractors providing other services & all exchange orders, receipts, contracts & tickets issued by us are issued subject to terms & conditions under which these services are provided by them.
All itineraries are sample itineraries, intended to give you a general idea of the likely trip schedule. Numerous factors such as weather, road conditions, the physical ability of the participants etc. may dictate itinerary changes either before the tour or while on the trail. We reserve the right to change any schedule in the interest of the trip participants' safety, comfort & general wellbeing.
Our rates are based on the prevailing rates as negotiated by us with the hotels, airlines etc. Hotels and Airlines retain the right to modify the rates without notice. In case of such changes the rates quoted before the modification, can be changed by us according to the modifications by hotels or airlines. All hotel bookings are based on usual check in and check out time of the hotels until unless indicated in the itinerary. We shall not be responsible for any delays & alterations in the programmer or expenses incurred – directly or indirectly – due to natural hazards, flight cancellations, accident, breakdown of machinery or equipment’s, breakdown of transport, weather, sickness, landslides, political closures or any untoward incidents. We shall not be responsible for any loss, injury or damage to person, property, or otherwise in connection with any accommodation, transportation or other services, resulting – directly or indirectly – from any act of GOD, dangers, fire, accident, breakdown in machinery or equipment, breakdown of transport, wars, civil disturbances, strikes, riots, thefts, pilferages, epidemics, medical or custom department regulations, defaults, or any other causes beyond our control.
We do not have any insurance policy covering the expenses for accident, sickness, loss due to theft, or any other reasons. Visitors are advised to seek such insurance arrangements in their home country. All baggage’s & personal property/s at all times are at the client's risk.
Please Note: We will not be responsible for any costs arising out of unforeseen circumstances like landslides, road blocks, bad weather, etc.								</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, a 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><li>
Refund will be made within 15 working days from the date of receipt of the cancellation.</li><li>
Cancellation Policy: In the event of cancellation of tour/travel services due to any avoidable/unavoidable reason/s we must be notified of the same in writing. Cancellation charges will be effective from the date we receive advice in writing, and cancellation charges would be as follows:</li><li>
45 days prior to arrival: 10% of the Tour/service cost.</li><li>
15 days prior to arrival: 25% of the Tour/service cost.</li><li>
07 days prior to arrival: 50% of the Tour/service cost.</li><li>
48 hours prior to arrival OR No Show: No Refund.</li><li>
Note: Written cancellation will accept on all working days, except Sunday, Any cancellation sent on Sunday's will be considered on next working day (Monday).</li><li>
For the X-mas and New Year period from 20 Dec to 05 Jan the payment is non-refundable.</li><li>
In case you cancel the trip after commencement, refund would be restricted to a limited amount only which too would depend on the amount that we would be able to recover from the hoteliers/ contractors we patronize. For unused hotel accommodation, chartered transportation & missed meals, etc. we do not bear any responsibility to refund.</li><li>
Please Note: We will not be responsible for any costs arising out of unforeseen circumstances like landslides, roadblocks, bad weather, etc.</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="7 Days 6 Nights Honeymoon Deluxe 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="189110"/>
						</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="http://www.vnandamantourtravel.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(22)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(19)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-genting.htm" title="Packages in Genting">Genting</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-moga.htm" title="Packages in Moga">Moga</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-kolhapur.htm" title="Packages in Kolhapur">Kolhapur</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-mansa.htm" title="Packages in Mansa">Mansa</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-cuddapah.htm" title="Packages in Cuddapah">Cuddapah</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-adilabad.htm" title="Packages in Adilabad">Adilabad</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-anantapur.htm" title="Packages in Anantapur">Anantapur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/packages-in-south-andaman.htm" title="Packages in South Andaman">South Andaman</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="http://www.vnandamantourtravel.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(28)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/group-holidays-catid.htm" title="Group Packages">Group</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/boat-safari-holidays-catid.htm" title="Boat Safari Packages">Boat Safari</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/paddle-boats-holidays-catid.htm" title="Paddle Boats Packages">Paddle Boats</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/water-skiing-holidays-catid.htm" title="Water Skiing Packages">Water Skiing</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/snorkeling-holidays-catid.htm" title="Snorkeling Packages">Snorkeling</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.vnandamantourtravel.in/scuba-diving-holidays-catid.htm" title="Scuba Diving Packages">Scuba Diving</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/parasailing-holidays-catid.htm" title="Parasailing Packages">Parasailing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.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 spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/kayaks-holidays-catid.htm" title="Kayaks Packages">Kayaks</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/water-scooters-holidays-catid.htm" title="Water Scooters Packages">Water Scooters</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/family-holidays-catid.htm" title="Family Packages">Family</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/jet-ski-ride-holidays-catid.htm" title="Jet Ski Ride Packages">Jet Ski Ride</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.vnandamantourtravel.in/snorkelling-holidays-catid.htm" title="Snorkelling Packages">Snorkelling</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 Port Blair, Adilabad, Anantapur, Cuddapah</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='http://www.vnandamantourtravel.in/tour-packages/honeymoon-package5-day4-nights.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/310210.jpg"  alt="Honeymoon Package 5 Day 4 Nights" title="Honeymoon Package 5 Day 4 Nights"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.vnandamantourtravel.in/tour-packages/honeymoon-package5-day4-nights.htm" title="Honeymoon Package 5 Day 4 Nights"><h3>Honeymoon Package 5 Day 4 Nights</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> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_195612" id="pkg_195612" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.vnandamantourtravel.in/tour-packages/honeymoon-package5-day4-nights.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Honeymoon Package 5 Day 4 Nights - 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="195612"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.vnandamantourtravel.in/tour-packages/andaman-ltc-tour-packages.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/312333.jpg"  alt="Andaman LTC Tour Packages" title="Andaman LTC Tour Packages"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.vnandamantourtravel.in/tour-packages/andaman-ltc-tour-packages.htm" title="Andaman LTC Tour Packages"><h3>Andaman Ltc Tour Packages</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> :  Port Blair, Havelock, Genting</p>
															<div class="mt10px small">
							<form name="pkg_196628" id="pkg_196628" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.vnandamantourtravel.in/tour-packages/andaman-ltc-tour-packages.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman LTC Tour Packages - 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="196628"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.vnandamantourtravel.in/tour-packages/5-days4-nights-budget-packages-minimum6-person.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/302087.jpg"  alt="5 Days 4 Nights Budget Packages (Minimum 6 Person)" title="5 Days 4 Nights Budget Packages (Minimum 6 Person)"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.vnandamantourtravel.in/tour-packages/5-days4-nights-budget-packages-minimum6-person.htm" title="5 Days 4 Nights Budget Packages (Minimum 6 Person)"><h3>5 Days 4 Nights Budget Packages (minimum 6..</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> :  Port Blair, Havelock, Genting, Moga, Man..</p>
															<div class="mt10px small">
							<form name="pkg_191740" id="pkg_191740" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.vnandamantourtravel.in/tour-packages/5-days4-nights-budget-packages-minimum6-person.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="5 Days 4 Nights Budget Packages (Minimum 6 Person) - 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="191740"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.vnandamantourtravel.in/tour-packages/6-nights7-days-best-family-packages.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/303101.jpg"  alt="6 Nights 7 Days Best Family Packages" title="6 Nights 7 Days Best Family Packages"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.vnandamantourtravel.in/tour-packages/6-nights7-days-best-family-packages.htm" title="6 Nights 7 Days Best Family Packages"><h3>6 Nights 7 Days Best Family Packages</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> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Adilabad, Anantapur, Cuddapa..</p>
															<div class="mt10px small">
							<form name="pkg_192183" id="pkg_192183" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.vnandamantourtravel.in/tour-packages/6-nights7-days-best-family-packages.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="6 Nights 7 Days Best Family Packages - 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="192183"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.vnandamantourtravel.in/tour-packages/romantic-honeymoon6-days5-nights-packages.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/291303.jpg"  alt="Romantic Honeymoon  6 Days 5 Nights Packages" title="Romantic Honeymoon  6 Days 5 Nights Packages"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.vnandamantourtravel.in/tour-packages/romantic-honeymoon6-days5-nights-packages.htm" title="Romantic Honeymoon  6 Days 5 Nights Packages"><h3>Romantic Honeymoon  6 Days 5 Nights Packag..</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> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_187062" id="pkg_187062" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.vnandamantourtravel.in/tour-packages/romantic-honeymoon6-days5-nights-packages.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Romantic Honeymoon  6 Days 5 Nights Packages - 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="187062"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.vnandamantourtravel.in/tour-packages/andaman-nicobar5-days-4nights-luxury-pacakages.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536349/179453.jpeg"  alt="Andaman Nicobar 5 Days 4nights  Luxury  Pacakages" title="Andaman Nicobar 5 Days 4nights  Luxury  Pacakages"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.vnandamantourtravel.in/tour-packages/andaman-nicobar5-days-4nights-luxury-pacakages.htm" title="Andaman Nicobar 5 Days 4nights  Luxury  Pacakages"><h3>Andaman Nicobar 5 Days 4nights  Luxury  Pa..</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> :  Port Blair, Havelock, Genting</p>
															<div class="mt10px small">
							<form name="pkg_179453" id="pkg_179453" method="post" action="http://www.vnandamantourtravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.vnandamantourtravel.in/tour-packages/andaman-nicobar5-days-4nights-luxury-pacakages.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Nicobar 5 Days 4nights  Luxury  Pacakages - 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="179453"/>
							</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:79:"Book 7 Days 6 Nights Honeymoon Deluxe Package - 6 Nights / 7 Days Tour Packages";i:2;s:169:"book 7 days 6 nights honeymoon deluxe package - 6 nights / 7 days tour packages, beach and islands tour packages, port blair, adilabad, anantapur, cuddapah tour packages";i:3;s:226:"Book 7 Days 6 Nights Honeymoon Deluxe Package - 6 Nights / 7 Days tour packages from Vn Andaman Tour & Travels - Get attractive 6 Nights / 7 Days Beach and Islands  tour packages for  Port Blair, Adilabad, Anantapur, Cuddapah.";i:4;s:1431:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair, Adilabad, Anantapur, Cuddapah"        
		                 },
		      "description": "Andaman Island Houses Some Amazing Beaches and Islands along with the Beautiful Capital City to Turn Your Dream Vacation Into a Reality. Blessed with lush Green Forests and White Sand Beaches, it offers an ideal Place to Holiday with Your Family and Friends and Has a Good Time.
At VN Andaman Tour Travel, we offer 6 nights and 7 days Port Blair, Havelock with Baratang Island,& Rose island &Neil Island. Tours that will cover most of the Andaman Excursion you would like to explore while Honeymoon holidaying in Andaman Island. Our Tour includes a visit to some wonderful Beaches of The Island along with a Port Blair City Tour so that you can make the most of your vacation and take away many lifetime memories with us. This is a Perfect Tour for Those Coming Honeymoon for 7 Days to The Andaman Islands. You cover all the top 6 islands in Andaman and good enough leisure time is also present. All attractions in Havelock and Baratang Island are covered in This Tour Program.",
		      "name": "7 Days 6 Nights Honeymoon Deluxe Package",
		      "telephone": "+91-8008089220"
		    }
		    </script>
			";i:5;N;}