a:6:{i:0;s:9201:"				<div class="h1"><h1>Gangtok & Darjeeling Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.holidaymasti.co.in/" title="Home">Home</a> 
				
								
				<b class="ffv p2px">&rsaquo;</b>Gangtok & Darjeeling Tour</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">3985</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						4 Nights / 5 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Gangtok, Darjeeling</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 10000 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.holidaymasti.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Gangtok & Darjeeling 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="40725"/>
						</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_2/30465/81455.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/30465/81455.jpg"  width="150" height="150"    alt="Gangtok & Darjeeling Tour" title="Gangtok & Darjeeling Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Lunch  is not included in the package.<br />
Nathula Pass is optional . Therefore, if you wish to travel to Nathula Pass along with Changu Lake, Baba Mandir, additional charges to be paid extra as per the prevailing rates.<br />
Note: Please bring 2 photocopies of your voter id /driving license /Passports along with 3 passport sized photographs for the passes.<br />
Porterage charges are not included<br />
Entry fee to sightseeing points are not included.<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> Gangtok
								</p>
								<p class="aj">At an altitude of 1750m, Gangtok became the state capital in the mid 19th century and has undergone rapid development since then. The downtown area is dominated by huge government buildings decorated with traditional Buddhist symbols. Gangtok is also a resting ground for people traveling to North Sikkim. Surrounded by Monasteries and Orchids, Gangtok is truly a travellers delight.<br />
Overnight at The Maplewood 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 2:</b> Gangtok
								</p>
								<p class="aj">Breakfast at the hotel and full Day Local Sightseeing to Ganesh Tok, Hanuman Tok, Tashi View Point ,Zoo, Flower Show, Bakthang Falls, Handicraft Industry and Ropeway and back to the resort.  Evenings free to Shop at Mg Marg.<br />
Overnight at The Maplewood Resort.<br />
 </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> Gangtok - Namchi - Darjeeling
								</p>
								<p class="aj">Breakfast at the hotel and drive to South Sikkim- Namchi to see the Temi Tea Garden- It is the only Tea Estate existing in the state, produces top variety tea for International Market. The most striking piece of attraction of Namchi is the 135 ft high statue of Guru Padmasambhava on Samdruptse Monastery located on top of a rising hill. Other attractions include Solophok, which is still under construction and is expected to house the replicas of the ‘Chaar Dhaams’, the pilgrimage sites of Hindus. Lunch at Namchi Bazar and & transfer to Darjeeling is one of the most magnificent hill resorts in the world. Evening free to explore this Hill Queen. Overnight Halt at Darjeeling.</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> Darjeeling sightseeing
								</p>
								<p class="aj">After breakfast at hotel, depart for the full day sightseeing tour of  Darjeeling : Padmaja Naidu Himalayan Zoological Park, Himalayan Mountaineering Institute, Ropeway, Tenzing-Gombu Rock, Tibetan  Refugee Self  Help Centre, Tea Estate, Lebong Race Course , Japanese Temple-Peace Pagoda, Lal Kothi, Dhirdham Temple , Ava Art Gallery , Natural History Museum <br />
Evening at leisure <br />
Overnight stay at Hotel​</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 5:</b> Darjeeling  to Bagdogra/NJP
								</p>
								<p class="aj">Breakfast at the hotel and drive to Bagdogra/NJP in time for flight/train to onward destination with sweet memories.</p>
								</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>Lunch  is not included in the package.</li><li>
Nathula Pass is optional . Therefore, if you wish to travel to Nathula Pass along with Changu Lake, Baba Mandir, additional charges to be paid extra as per the prevailing rates.</li><li>
Note: Please bring 2 photocopies of your voter id /driving license /Passports along with 3 passport sized photographs for the passes.</li><li>
Porterage charges are not included</li><li>
Entry fee to sightseeing points are not included.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount * Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. * Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.holidaymasti.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Gangtok & Darjeeling 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="40725"/>
						</form>
						</div>
						
						";i:1;s:64:"Book Gangtok & Darjeeling Tour - 4 Nights / 5 Days Tour Packages";i:2;s:129:"book gangtok & darjeeling tour - 4 nights / 5 days tour packages, lakes & rivers tour packages, gangtok, darjeeling tour packages";i:3;s:159:"Holiday Masti offers Gangtok & Darjeeling Tour - 4 Nights / 5 Days tour package, budget Lakes & Rivers tour packages for Gangtok, Darjeeling at exciting price.";i:4;s:855:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Gangtok, Darjeeling"        
		                 },
		      "description": "Lunch  is not included in the package.
Nathula Pass is optional . Therefore, if you wish to travel to Nathula Pass along with Changu Lake, Baba Mandir, additional charges to be paid extra as per the prevailing rates.
Note: Please bring 2 photocopies of your voter id /driving license /Passports along with 3 passport sized photographs for the passes.
Porterage charges are not included
Entry fee to sightseeing points are not included.",
		      "name": "Gangtok & Darjeeling Tour",
		      "telephone": "+91-8090952150"
		    }
		    </script>
			";i:5;N;}