a:6:{i:0;s:20012:"				<div class="h1"><h1>Andaman Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.grandindiatrip.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.grandindiatrip.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Andaman Package</p>
				<br />
				
								
						<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">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Tour Code </td>
						<td class="p5px pl0px vat">ANDAMAN DELIGHTS</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Port Blair, Kolkata</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 15775 Per Person						</td>
						</tr>
												<tr>
						<td class="b p5px dif w125px vat">Special Offer </td>
						<td class="p5px pl0px dif vat">Hotels<br />
City Name	Hotel Name<br />
Havana	t Hotel Blue Bird/ Similar<br />
Port Blair	Hotel Sun Sea / Similar<br />
Note: Under unavoidable circumstances Hotels are subject to change, in such condition substitute hotel of similar category is provided</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.grandindiatrip.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman 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="58938"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_9/257644/111420.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/257644/111420.jpg"  width="150" height="150"    alt="Andaman Package" title="Andaman Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Highlights<br />
It is a group of about 300 islands deep in the Bay of Bengal. Only a few islands have population. These islands are of volcanic origin. The land surface is hilly and rocky and is covered with thick forests. The Union Territory of Andaman and Nicobar Islands consists of these islands. Port Blair is the capital of this Union Territory. Port Blair is connected with Chennai and Calcutta by air and sea routes. The climate of Andaman and Nicobar Islands is warm and humid. It gets rain almost throughout the year. Rubber, coconut, tobacco, and coffee are grown in abundance. Fruits like lemon, orange, banana, mango and pineapple are also grown here.Hotels<br />
City Name	Hotel Name<br />
Havana	t Hotel Blue Bird/ Similar<br />
Port Blair	Hotel Sun Sea / Similar<br />
Note: Under unavoidable circumstances Hotels are subject to change, in such condition substitute hotel of similar category is providedAny meals other than those mentioned above<br />
All optional are charged<br />
Any portage at airport and hotels, tips, insurance, wine , mineral water, telephone charges, boating charges, entrance fees and all items of personal nature<br />
Any services not specifically mentioned in the inclusions.<br />
Expenses caused by factors beyond our control like rail and flight delays, roadblocks, vehicle mal-functions, political disturbances, taxes etc.<br />
GST 3.50% extra on total billing.<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
								</p>
								<p class="aj">On arrive at Port Blair airport, our representative will receive and escorted to the hotel. After check-in at the hotel and little relax, we proceed to covers Cellular Jail (National Memorial), and after Light & Sound Show at Cellular Jail: At evening, we move for the Light and Sound Show at Cellular Jail where the saga of the freedom struggle brought alive.</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 - Ross Island - North Bay Island (Coral Island)
								</p>
								<p class="aj">Today, after breakfast we will proceed for a full day cruising towards Ross Island, & North Bay(Coral Island) Ross Island : First we starts the exhilarating journey(by boat) to Ross Island the erstwhile capital of Port Blair during the British regime, it now stands an imposing relic, with the structure almost in debris. A small museum displays photographs and other antiques of the Britishers, relevant to these islands. North Bay (Coral Island) : From Ross Island, we proceed for a joyful trip to North Bay island (Coral Island) offering exotic coral, colorful fishes and underwater marine life. We can view these colorful corals & underwater marine life via in glass bottom boat and Snorkelling (Optional)</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> Port Blair - Havelock Island
								</p>
								<p class="aj">Today we start our journey towards Havelock Island via ferry from Port Blair Harbour. On arrival at Havelock Island, our representative will receive and escort you to check-in to the resort.</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> Havelock Island
								</p>
								<p class="aj">After breakfast, we proceed to Radhanagar Beach (Beach No. 7), the Times Magazine rated the finest beach among the best beaches in Asia. It is an ideal place for swimming, sea bathing and basking on the sun kissed beach.</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> Havelock Island - Port Blair - City Sightseeing
								</p>
								<p class="aj">Morning Check out from Havelock Island & proceed back towards Port Blair (via ferry). Afternoon we take you for the tour of Port Blair city which covers Cellular Jail (National Memorial), Samundrika (Naval Marine Museum), Anthropological Museum, which displays the tools, models habitats, art and handcrafts of the aboriginal tribes of Andaman & Nicobar Islands, After that Shopping : At evening, we proceed to Sagarika ( the Govt. Emporium of Handcraft) and local market for shopping.</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> Departure from Port Blair
								</p>
								<p class="aj">After morning breakfast at hotel you will get departure transfers from Hotel to Airport.</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
													<div class="headHr">
				            <p class="p7px b pl10px xlarge">Hotel Detail : </p>
				            </div>
															<div class="data lh13em p20px aj mb7px">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px"><p class="fr lh0">
								
																	<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_on.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																		<img class="vam" src="https://static.tourtravelworld.com/images/star_ratings_off.png" alt=""/>
																	
								</p>
								<div class="mb5px">
								<h2 class="dif b xxlarge">Havelockislandbeachresort</h2>
								</div>
								<p class="cb"></p>
								<p><b>Address :</b> Port Blair, Andaman & Nicobar Islands, India</p>
								<p><b>Facility :</b> </p>
								<div class="mt7px">
The Resort offers you its definite impeccable service through the Deluxe Cottages and Sea Facing suites Cottages, with a true service of luxurious Resort. The resort enchant your holiday into a memorable treasure that will last forever … Know More...	 	Savour your taste buds at Sea Dragon restaurant with global flavours, fresh ingredients by talented chefs. Sea dragon restaurant by HIBR takes you on a culinary magic carpet ride giving you the experience of mouth-watering delicacies. Know More...	 	From the green terraces of the resort to the sandy white beach we provide Pleasurable Pastimes and various water activities to enrich each and every stay of yours</div>
								</td>
								
																	<td class="p10px vat imgWidth150 w150px lh0">
									<div class="demo-wrap">
									<ul class="lsn m0px p0px" >
																					<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage2" href="https://ttw.wlimg.com/hotel-package-images/photo-big/dir_9/257644/9192.jpg"><img src="https://ttw.wlimg.com/hotel-package-images/photo-small/dir_9/257644/9192.jpg"  width="150" height="78"    alt="havelock island beach resort" title="havelock island beach resort" class="bdr"  /></a></p></div></li>
																					</ul>
									</div>
									</td>
																	
								</tr>
								</table>
								</div>
															<br />
													 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>Sightseeing</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Any meals other than those mentioned above</li><li>
All optional are charged</li><li>
Any portage at airport and hotels, tips, insurance, wine , mineral water, telephone charges, boating charges, entrance fees and all items of personal nature</li><li>
Any services not specifically mentioned in the inclusions.</li><li>
Expenses caused by factors beyond our control like rail and flight delays, roadblocks, vehicle mal-functions, political disturbances, taxes etc.</li><li>
GST 3.50% extra on total billing.</li></ul><br />
												<p class="large b mb5px dif">Specific Departure Dates :</p>Check Price and Dates:<br />
April 2016May 2016June 2016<br />
Su	Mo	Tu	We	Th	Fr	Sa<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
19<br />
20<br />
21<br />
22<br />
23<br />
24<br />
25<br />
INR<br />
14,715<br />
26<br />
INR<br />
14,715<br />
27<br />
INR<br />
14,715<br />
28<br />
INR<br />
14,715<br />
29<br />
INR<br />
14,715<br />
												<p class="large b mb5px dif">Departure Cities with rates :</p>Check Price and Dates:
April 2016May 2016June 2016
Su	Mo	Tu	We	Th	Fr	Sa
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
INR
14,715
26
INR
14,715
27
INR
14,715
28
INR
14,715
29
INR
14,715
30
Holiday Price<br /><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<h3>Cancellation Policy</h3>

<div>
<h3 style="box-sizing: border-box; line-height: 1.1; margin-top: 0px; font-family: ProximaNovaRegular, ProximaNovaRegular, Helvetica, Arial, sans-serif !important; margin-bottom: 10px; color: rgb(0,0,0); font-size: 26px">Remarks</h3>

<ul>
	<li style="box-sizing: border-box; margin: 0px 0px 10px; font-family: ProximaNovaRegular, 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(68,68,68); font-size: 12px">Per person rates - applicable on 2 persons staying together sharing the same room</li>
	<li style="box-sizing: border-box; margin: 0px 0px 10px; font-family: ProximaNovaRegular, 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(68,68,68); font-size: 12px">Package rates are subject to change without prior notice</li>
	<li style="box-sizing: border-box; margin: 0px 0px 10px; font-family: ProximaNovaRegular, 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(68,68,68); font-size: 12px">The package cannot be combined with any other offer</li>
	<li style="box-sizing: border-box; margin: 0px 0px 10px; font-family: ProximaNovaRegular, 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(68,68,68); font-size: 12px">Refund on cancellation strictly depends upon concerned hotel&#39;s cancellation policy</li>
	<li style="box-sizing: border-box; margin: 0px 0px 10px; font-family: ProximaNovaRegular, 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(68,68,68); font-size: 12px">The above package is not valid during national holidays, festivals &amp;long weekends</li>
	<li style="box-sizing: border-box; margin: 0px 0px 10px; font-family: ProximaNovaRegular, 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(68,68,68); font-size: 12px">Grand india tours &amp; travels reserves the right to change/modify or terminate the offer any time at its own discretion and without any prior notice.</li>
</ul>

<p style="box-sizing: border-box; margin: 0px 0px 10px; font-family: ProximaNovaRegular, 'Helvetica Neue', Helvetica, Arial, sans-serif; color: rgb(68,68,68); font-size: 12px">&nbsp;

<h3>Cancellation Policy</h3>

<div>
<ul>
	<li>Cancellations must be intimated to us in writing. Cancellationfee applicable is as follows:</li>
	<li>45days or prior: Non-refundable booking amount</li>
	<li>30days or prior: 50% of the total booking amount</li>
	<li>15days or prior: 75% of the total booking amount</li>
	<li>0-14 Days prior : 100% of the tour cost</li>
	<li>Incase of Visa refusal, cancellation charges will be applicableas per theairline and hotel policy.</li>
	<li>Incase of no show, 100 % of the package cost will be applicablewithout anyrefund</li>
	<li>In theevent that a tour participant cancels his / her booking ortransfer from onetour to another will be treated as a cancellation. In case youhave to withdrawfrom a tour after it has begun for reasons such as illness. Weregret that weare not able to make refunds for absences from a tour or for anymissedsightseeing.</li>
</ul>
</div>
</div>						
    	<p class="h dif xlarge b mb5px">Package Cost</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="data p5px">Room Type</td>
				<td class="data p5px">Price(INR)</td>
				<td class="data p5px">Total Price(INR)</td>
				<td class="data p5px">Current Discount(INR)</td>
				<td class="data p5px">Tax(INR)</td>
				<td class="data p5px">null(INR)</td>
				<td class="data p5px">Discounted Price(INR)</td>
			</tr>
			<tr>
				<td class="data p5px">Adult on Twin/Double Sharing basis</td>
				<td class="data p5px">14,200</td>
				<td class="data p5px">14,200</td>
				<td class="data p5px">0</td>
				<td class="data p5px">515</td>
				<td class="data p5px">0</td>
				<td class="data p5px">14,715</td>
			</tr>
			<tr>
				<td class="data p5px">Adult on triple sharing basis</td>
				<td class="data p5px">14,100</td>
				<td class="data p5px">14,100</td>
				<td class="data p5px">0</td>
				<td class="data p5px">512</td>
				<td class="data p5px">0</td>
				<td class="data p5px">14,612</td>
			</tr>
			<tr>
				<td class="data p5px">Single Adult</td>
				<td class="data p5px">24,200</td>
				<td class="data p5px">24,200</td>
				<td class="data p5px">0</td>
				<td class="data p5px">878</td>
				<td class="data p5px">0</td>
				<td class="data p5px">25,078</td>
			</tr>
			<tr>
				<td class="data p5px">Child without bed</td>
				<td class="data p5px">8,300</td>
				<td class="data p5px">8,300</td>
				<td class="data p5px">0</td>
				<td class="data p5px">301</td>
				<td class="data p5px">0</td>
				<td class="data p5px">8,601</td>
			</tr>
			<tr>
				<td class="data p5px">Child with bed</td>
				<td class="data p5px">8,900</td>
				<td class="data p5px">8,900</td>
				<td class="data p5px">0</td>
				<td class="data p5px">323</td>
				<td class="data p5px">0</td>
				<td class="data p5px">9,223</td>
			</tr>
			<tr>
				<td class="data p5px">Extra Bed</td>
				<td class="data p5px">13,500</td>
				<td class="data p5px">13,500</td>
				<td class="data p5px">0</td>
				<td class="data p5px">490</td>
				<td class="data p5px">0</td>
				<td class="data p5px">13,990</td>
			</tr>
		</table></div><br>						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.grandindiatrip.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman 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="58938"/>
						</form>
						</div>
						
						";i:1;s:54:"Book Andaman Package - 5 Nights / 6 Days Tour Packages";i:2;s:122:"book andaman package - 5 nights / 6 days tour packages, beach and islands tour packages, port blair, kolkata tour packages";i:3;s:166:"Grand India Tours & Travels offers Andaman Package - 5 Nights / 6 Days tour package, budget Beach and Islands tour packages for Port Blair, Kolkata at exciting price.";i:4;s:1768:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair, Kolkata"        
		                 },
		      "description": "Highlights
It is a group of about 300 islands deep in the Bay of Bengal. Only a few islands have population. These islands are of volcanic origin. The land surface is hilly and rocky and is covered with thick forests. The Union Territory of Andaman and Nicobar Islands consists of these islands. Port Blair is the capital of this Union Territory. Port Blair is connected with Chennai and Calcutta by air and sea routes. The climate of Andaman and Nicobar Islands is warm and humid. It gets rain almost throughout the year. Rubber, coconut, tobacco, and coffee are grown in abundance. Fruits like lemon, orange, banana, mango and pineapple are also grown here.Hotels
City Name	Hotel Name
Havana	t Hotel Blue Bird/ Similar
Port Blair	Hotel Sun Sea / Similar
Note: Under unavoidable circumstances Hotels are subject to change, in such condition substitute hotel of similar category is providedAny meals other than those mentioned above
All optional are charged
Any portage at airport and hotels, tips, insurance, wine , mineral water, telephone charges, boating charges, entrance fees and all items of personal nature
Any services not specifically mentioned in the inclusions.
Expenses caused by factors beyond our control like rail and flight delays, roadblocks, vehicle mal-functions, political disturbances, taxes etc.
GST 3.50% extra on total billing.",
		      "name": "Andaman Package",
		      "telephone": "+91-9415285186"
		    }
		    </script>
			";i:5;N;}