a:6:{i:0;s:26406:"				<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>Andaman Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.phoenixtandt.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.phoenixtandt.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Andaman Tour</p> 
									
						<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>Tour Code :</b> PT&T/PHNT /2018</p>
												<p class="mb5px"><b>Duration :</b> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Port Blair, Havelock</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 11000 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.phoenixtandt.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Tour - 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="146854"/>
						</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_18/510229/228118.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_18/510229/228118.jpg"  height="150"  width="150"    alt="Andaman Tour" title="Andaman Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div><br />
														<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Galathea National Park is nestled away in the Andaman and Nicobar Islands and forms part of the larger Great Nicobar Biosphere Reserve. This Park is geographically situated at the Great Nicobar Island, the most sizeable island in the Nicobar Islands, which is south most part of the Andaman archipelago. Stretching across about 110 square kilometers this Park is known for its lush flora and exotic fauna. A trip to Galathea National Park is not only an adventure but also a life changing experience; it gives the traveller a rare opportunity to be one with nature.<br />
<br />
Note:<br />
<br />
All taxes, hotel rates, transport rates, etc. are as applicable on date. Any future hike on same would be charged extra.<br />
Price not valid long weekend / Festive Time etc.<br />
AC is not working in Hill Area.<br />
The above is only an offer and not confirmation of your bookings. We shall proceed with your booking once we receive the payment from you & if we are not able to get the original hotels, shall provide equivalent / alternative hotels.<br />
Normal hotel check in /Check out time 1400 / 1200hrs.<br />
Hotels can be customized as per your requirements with cost variation.<br />
<br />
Tour Requirements:<br />
<br />
For Adults – Photo identification in the form of Voters ID / Passport / Aadhar Card / Driving Licence / Ration card<br />
For students – Photo identification in the form of Passport / Aadhar Card / PAN card Carry original as well as 2 photocopies of school or college Photo Identity card<br />
For Infants – Carry 2 passport sized photographs.<br />
 <br />
Things to Carry<br />
<br />
Mobile phone with appropriate sim card.<br />
Along with your necessary clothing and toiletries carry sun screen lotion, hand sanitizer, sun glasses, cap, sports shoes, umbrella / windcheater, camera etc. and woollens if needed<br />
If you are on any medication, carry sufficient stock of the medicines with prescription.<br />
<br />
Shopping<br />
<br />
Handicrafts, dress materials, Jewellery both modern and ethnic, leather goods, Artefacts, Bead-work, lacquer work etc.Air / Train / Bus Fare.<br />
Entrance Fee.<br />
Camera Fee.<br />
Guide Fee.<br />
Personal Expenses.<br />
AC will not work when the vehicle is parked/ stopped.<br />
Insurance etc.<br />
Meal: Lunch/ Dinner.<br />
TIPS / Portages etc.<br />
Early Check-in / Late Check-out.<br />
GST@5%.<br />
Any Other things not mentioned in the program.								</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> Arrive Port Blair Airport
										</p>
										<p class="aj">Meet assist at Port Blair airport and transfer to hotel.<br />
<br />
Afternoon visit Cellular jail, this is a must visit for any person as this place has many stories to tell people who love their countries dearly. Freedom fighters of India, were prisoner here. This place for its jail was also known as Kala Paani. Death water. one who comes here, never returns. Rightfully it is so. 1300 kms away from the main land, in between the ocean, swimming is not the option. Spend time seeing the architecture and the way prisoners were treated. After seeing this place to your contempt, head towards Corby’s cove beach, one of the attractive beaches in Port Blair. Indulge in some water sports there. Jet ski or a speed boat ride to snake island will thrill you. In the evening return to the cellular jail to see the light and sound show. The light and sound show for an hour will enlighten you with the history of the Cellular Jail. After the show, head back to the hotel.<br />
<br />
Overnight in Port Blair.</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> Port Blair to Havelock Island and Stay
										</p>
										<p class="aj">Early morning rise and the cab will pick up at 7:00am for the 8:00am cruise. Be dropped at Port Blair jetty at 7:15am. Cruise sailing to Havelock is one hour thirty minutes on a good weather day. Reach Havelock by 9:45am. A/c cab with private driver will pick you from Havelock jetty and drop you to the respective hotel. After check in, rest for a while. First trip will be a visit to kalapathar beach. Its one of the most beautiful beaches in Havelock Island. Pristine blue waters welcomes you. Spend quality time at the beach and return to the hotel or any restaurant for lunch. After lunch head towards Radhanagar beach.Radhanagar beach is the 7th best beach in Asia, rated by Times and is the 25th best beach in the world. The sunset at Radhanagar beach is one of the best in the islands. After sunset return to the hotel and retire for the day.<br />
<br />
Overnight in Havelock Island.</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> Scuba Diving and Visit to Elephant Beach and Return
										</p>
										<p class="aj">Early morning rise by 5am, cab will pick you from the hotel and drop you at the dive centre. The dive centre will then take you on their private speed boat to the dive spot for diving. It will be a fun dive. After the dive is over you will return to the dive centre. Breakfast at Havelock jetty and at around 9:00 am reach Havelock jetty. Our coordinator will guide you to board the speed boat that will take you to Elephant beach. Elephant beach is known for its pristine beach and the coral reef with loads of fish life. Snorkelling is complimentary. You can indulge in sea walking too organized by sea link adventures.  Return to Havelock Jetty by lunch time. Head back to the hotel and retire for the day.<br />
<br />
Overnight in Havelock Island.<br />
<br />
Scuba diving is not included in the package. Scuba diving depends on your choice & health conditions.</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> Arrival from Havelock Island to Neil Island
										</p>
										<p class="aj">Early morning rise and after breakfast& checking out of the hotel, head to Havelock jetty to board the cruise to Neil Island by 9:00 am for the sailing at 10:15 am. Reach Neil Island at 11:15 am. A/c cab with private driver will pick you and drop you at the hotel for check in. After some rest head to Bharathpur beach.One of the best beaches in Neil Island. Indulge in some water sport activities like jet skie, glass bottom boat ride etc, on spot payments. Spend time until late evening and then head to Laxmanpur beach to see one of the best sunsets. Evening return to the hotel and retire for the day.</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> Sunrise View and Return to Port Blair in the Evening
										</p>
										<p class="aj">Early morning rise by 4:00am, the cab will pick you to drive you to sitapur beach. Sitapur beach is known for its beautiful beach and also the awesome sunrises. After the sunrise, head back to the hotel for breakfast. Checkout of the hotel, leave the luggage in the hotel and head towards natural bridge. Natural bridge, by its name is formed due to natural weather conditions in the island. Spend quality time at the bridge and then to have lunch and head back to Neil jetty to board the cruise back to Port Blair. Reach Port Blair in the evening and check into the hotel. Retire for the day.<br />
 <br />
Overnight in Port Blair.</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> Depart At Port Blair Airport
										</p>
										<p class="aj">After breakfast transfer to Port Blair airport for catch flight to back home.</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>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																				<li>05 Night in Hotel accommodation on Double sharing basis.</li><li>
Meal Plan: Breakfast  Basis.</li><li>
AC Vehicle as per given program only.</li><li>
Pick-up & Drop point at Port Blair.</li><li>
Cellular jail.</li><li>
Light and sound show.</li><li>
Cruise tickets to Havelock Island from Port Blair.</li><li>
Cruise tickets to Port Blair from Neil Island.</li><li>
Speed boat tickets on sharing basis.</li><li>
Cruise ticket to Neil Island from Havelock.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Air / Train / Bus Fare.</li><li>
Entrance Fee.</li><li>
Camera Fee.</li><li>
Guide Fee.</li><li>
Personal Expenses.</li><li>
AC will not work when the vehicle is parked/ stopped.</li><li>
Insurance etc.</li><li>
Meal: Lunch/ Dinner.</li><li>
TIPS / Portages etc.</li><li>
Early Check-in / Late Check-out.</li><li>
GST@5%.</li><li>
Any Other things not mentioned in the program.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Rate Card</p>
								</div>
								
    	<p class="h dif xlarge b mb5px">Cost</p>
    	<div class="otherDetails aj">Valid: 01 April, 2018 – 30 August 2018</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Particulars</td>
				<td class="headHr p5px b">Cost in INR</td>
			</tr>
			<tr>
				<td class="data p5px">02 Person in Double Room  </td>
				<td class="data p5px">Rs. 46500 for 02 Person</td>
			</tr>
		</table></div><br>								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>You can pay by Cash/ Cheque / Demand Draft / Debit Card / Credit Card/ Internet Banking /NEFT/ Demand draft & Bank Transfer favouring Phoenix Travel and Tourism.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>11000</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 							
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.phoenixtandt.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Tour - 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="146854"/>
						</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.phoenixtandt.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-kullu.htm" title="Packages in Kullu">Kullu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-pokhara.htm" title="Packages in Pokhara">Pokhara</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-moscow.htm" title="Packages in Moscow">Moscow</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/packages-in-dubai.htm" title="Packages in Dubai">Dubai</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.phoenixtandt.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</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.phoenixtandt.com/packages-in-bagdogra.htm" title="Packages in Bagdogra">Bagdogra</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.phoenixtandt.com/packages-in-namchi.htm" title="Packages in Namchi">Namchi</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.phoenixtandt.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</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.phoenixtandt.com/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</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.phoenixtandt.com/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</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.phoenixtandt.com/packages-in-kochi.htm" title="Packages in Kochi">Kochi</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.phoenixtandt.com/packages-in-kathmandu.htm" title="Packages in Kathmandu">Kathmandu</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.phoenixtandt.com/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</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.phoenixtandt.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</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.phoenixtandt.com/packages-in-paris.htm" title="Packages in Paris">Paris</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.phoenixtandt.com/packages-in-tashkent-travel.htm" title="Packages in Tashkent">Tashkent</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.phoenixtandt.com/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</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.phoenixtandt.com/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</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.phoenixtandt.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/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="http://www.phoenixtandt.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.phoenixtandt.com/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 "><a class="dif" href="http://www.phoenixtandt.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.phoenixtandt.com/luxury-holidays-catid.htm" title="Luxury Packages">Luxury</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.phoenixtandt.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</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>
				
								
				</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:52:"Book Andaman Tour - 5 Nights / 6 Days Tour Packages";i:2;s:121:"book andaman tour - 5 nights / 6 days tour packages, beach and islands tour packages, port blair, havelock tour packages";i:3;s:164:"Phoenix Travel and Tourism offers Andaman Tour - 5 Nights / 6 Days tour package, budget Beach and Islands tour packages for Port Blair, Havelock at exciting price.";i:4;s:2673:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair, Havelock"        
		                 },
		      "description": "Galathea National Park is nestled away in the Andaman and Nicobar Islands and forms part of the larger Great Nicobar Biosphere Reserve. This Park is geographically situated at the Great Nicobar Island, the most sizeable island in the Nicobar Islands, which is south most part of the Andaman archipelago. Stretching across about 110 square kilometers this Park is known for its lush flora and exotic fauna. A trip to Galathea National Park is not only an adventure but also a life changing experience; it gives the traveller a rare opportunity to be one with nature.

Note:

All taxes, hotel rates, transport rates, etc. are as applicable on date. Any future hike on same would be charged extra.
Price not valid long weekend / Festive Time etc.
AC is not working in Hill Area.
The above is only an offer and not confirmation of your bookings. We shall proceed with your booking once we receive the payment from you & if we are not able to get the original hotels, shall provide equivalent / alternative hotels.
Normal hotel check in /Check out time 1400 / 1200hrs.
Hotels can be customized as per your requirements with cost variation.

Tour Requirements:

For Adults – Photo identification in the form of Voters ID / Passport / Aadhar Card / Driving Licence / Ration card
For students – Photo identification in the form of Passport / Aadhar Card / PAN card Carry original as well as 2 photocopies of school or college Photo Identity card
For Infants – Carry 2 passport sized photographs.
 
Things to Carry

Mobile phone with appropriate sim card.
Along with your necessary clothing and toiletries carry sun screen lotion, hand sanitizer, sun glasses, cap, sports shoes, umbrella / windcheater, camera etc. and woollens if needed
If you are on any medication, carry sufficient stock of the medicines with prescription.

Shopping

Handicrafts, dress materials, Jewellery both modern and ethnic, leather goods, Artefacts, Bead-work, lacquer work etc.Air / Train / Bus Fare.
Entrance Fee.
Camera Fee.
Guide Fee.
Personal Expenses.
AC will not work when the vehicle is parked/ stopped.
Insurance etc.
Meal: Lunch/ Dinner.
TIPS / Portages etc.
Early Check-in / Late Check-out.
GST@5%.
Any Other things not mentioned in the program.",
		      "name": "Andaman Tour",
		      "telephone": "+91-8192997664"
		    }
		    </script>
			";i:5;N;}