a:6:{i:0;s:16423:"				<div class="h1"><h1>Darjeeling Luster Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.vramanspecial.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.vramanspecial.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Darjeeling Luster 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">vs 24</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						6 Nights / 7 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Gangtok, Darjeeling, West Sikkim</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.vramanspecial.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Darjeeling Luster 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="28697"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<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_10/288519/56766.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/288519/56766.jpg"  width="150" height="150"    alt="Darjeeling Luster Tour" title="Darjeeling Luster Tour" /></a></p></div></li>
																		<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_10/288519/56767.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/288519/56767.jpg"  width="150" height="150"    alt="Darjeeling Luster Tour" title="Darjeeling Luster Tour" /></a></p></div></li>
																		<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_10/288519/56768.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/288519/56768.jpg"  width="150" height="150"    alt="Darjeeling Luster Tour" title="Darjeeling Luster Tour" /></a></p></div></li>
																		<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_10/288519/56769.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/288519/56769.jpg"  width="150" height="150"    alt="Darjeeling Luster Tour" title="Darjeeling Luster Tour" /></a></p></div></li>
																		<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_10/288519/56770.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/288519/56770.jpg"  width="150" height="150"    alt="Darjeeling Luster Tour" title="Darjeeling Luster Tour" /></a></p></div></li>
																		<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_10/288519/56771.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/288519/56771.jpg"  width="150" height="150"    alt="Darjeeling Luster Tour" title="Darjeeling Luster Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					North-East Indian Luster is a scrupulously-planned tour itinerary that covers three of the most coveted and endearing destinations of the region. Several enchanting tourist destinations of Darjeeling, Pelling and Gangtok are encompassed on this tour plan that introduces visitors to the geographical, cultural, historical and spiritual treasures of the region. The beauteous creeks, gorgeous valleys and emerald hues of the region echo soulful melodies that reverberate in every visitor’s head till eternity. Such is the aura of the region that it manages to enchant and inspire all its visitorsAdditional / personal use of vehicle.<br />
Any personal expenses, room service and special orders, mineral / packed waters, alcoholic and non<br />
alcoholic beverages, porterage, tips.<br />
Any extra excursions or sightseeing apart from the above specified itinerary.<br />
Camera fees, guide charges.<br />
Any incidental and other expenses which are not specified in the inclusions.<br />
Govt service tax - 3.09 % applicable on total billing.<br />
Air ticket<br />
Camera fees (still or movie).,<br />
laundry, horse ride,<br />
Any kind of personal expenses such as monument Fees, laundry, telephone bills and alcoholic beverages.<br />
Anything not specified in the itinerary<br />
Unspecified meals.<br />
Local car ride,<br />
Cable car ride.12-0931-03<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> Arrival and Transfer to Darjeeling
								</p>
								<p class="aj">Our representative will be there to receive the Guest at New Jalpaiguri Railway Station (NJP) / Bagdogra Airport (IXB) / Tenzing Norgay Bus Stand (Junction) OR NJP railway station - He will be assisting for the transfer - Darjeeling - Nearly 105 kilometers 3 ½ - 4 hours drive - At an height of 2123 meters / 70001 feet lies the land of breathtaking beauty, sloping tea gardens with spectacular views of the Mount Everest is the Queen of the hills - It is also home to the famous World Heritage train - The Darjeeling Himalayan Railway (DHR) - Check into hotel - Evening free to roam around Mall or local Shopping center - Over Night stay at Darjeeling.</p>					
									<p><b>Meals : </b> Dinner</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> Darjeeling Local Sight Seeing
								</p>
								<p class="aj">Early morning at around 3:45 AM drive to 8000 feet / 2440 meters through primitive forests of oak, magnolia to Tiger Hill to view sunrise over Khangchendzonga Peak (subject to clear weather) - On the way back visit Ghoom Monastery, Peace memorial & Batasia Loop - On the way back visit Ghoom Monastery, Peace memorial & Batasia Loop - Back to hotel for breakfast - After breakfast rest for half an hour After breakfast next round of sight seeing - Half Day city tour includes Padmaja Naidu Zoological Park, Himalayan Mountaineering Institute (Closed on Thursday), Rope way, Tensing Gampo Rock, Tibetan Refugee Self Help Center (Closed on Sunday), Tea Estate, Natural History Museum (Sunday Closed), Peace Pagoda - Back to hotel - Evening free to stroll around the area - Overnight stay at Darjeeling.</p>					
									<p><b>Meals : </b> Breakfast, Dinner</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> Transfer to Pelling
								</p>
								<p class="aj">Transfer to Pelling via road - This is a drive of 140 kilometers 3 ½ - 4 hours through scenic road - Check in to the hotel - Pelling is situated at an altitude of 2072 meters / 6800 feet - On a clear day guest can get a clear view of Himalayan range with snow capped mount Pandim, Kumbhakarna, Rathong, Khangchendzonga, Zopuno, Shimbho, Narsing, Sinolchu etc - It is one of the exotic settlement with varieties of Rhododendron, Orchids, historical sites, short trek routes and wildlife - Its botanical and zoological richness is inspiring and the scenic view from the top of the ridge across deep valley to the heights of Khangchendzonga ranges is something to be seen to be believed - Yuksom, Ravangla, Rinchenpong and Namchi are some of the tourist spot nearby - Check into hotel - Evening free to roam around the small settlement - Over Night stay at Pelling.</p>					
									<p><b>Meals : </b> Breakfast, Dinner</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> Pelling Local sightseeing
								</p>
								<p class="aj">After breakfast at hotel - Drive for Full Day Sight Seeing. The routes are forested and the botanical and zoological richness is inspiring. Places of visit are Rimbi water Falls, Rimbi Rock Garden, Khecheopalri Lake, it is one of the holy Buddhist lake and it is believed that any wish in front of the lake comes true - Myth is that when a leaf falls on the placid clear water surface, it is picked by a bird and thus the water surface is always free of leaves, Khecheopalri Monastery, Kanchenjunga water Falls, Pemayangtse Monastery, Rabdantse ruins, the scenic view from the top of the ruin to the mystic heights of Khangchendzonga ranges is something to be cherished - Back to hotel - Evening free to roam around the Helipad or Shopping center - Over Night stay at Pelling.</p>					
									<p><b>Meals : </b> Breakfast Dinner</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> Transfer from Pelling & Gangtok Local Sight Seeing
								</p>
								<p class="aj">Early Morning breakfast - Pelling to Gangtok Transfer - Nearly 140 kilometers and it is 4 ½ - 5 hours drive - Reach Gangtok and check into Hotel - City tour of Gangtok - Sight seeing will be for half day hence the drive will be easy and comfortable - Visit to Directorate of Handicrafts & Handloom, Research Institute of Tibetology, Do Drul Chorten (Stupa), Enchey Monastery, White Hall, Flower Show, etc - Back to hotel - Evening free to roam around M G Road (Mall) or local Shopping center or discotheque - Over Night stay at Gangtok.</p>					
									<p><b>Meals : </b> Breakfast Dinner</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> Excursion to Tsomgo Lake & Baba Mandir
								</p>
								<p class="aj">Morning breakfast at hotel - Excursion to Tsomgo Lake & Baba Mandir nearly 40 kilometers - The Lake is oval shaped lake nearly 50 feet deep - Generally covered in snow for most of the year the year - This lake is home to the Brahmini ducks & many migratory birds - Nearby is the sacred Baba Mandir known to be a very holy site for all - Nathu La Pass to Republic of China is nearly 20 kilometers and is optional tour - Back to Gangtok - Evening free to roam around M G Road (Mall) or local Shopping center - Over Night stay at Gangtok. (Incase of Landslide or due to any other reasons if Tshangu Lake is closed then an alternate sightseeing will be provided).</p>					
									<p><b>Meals : </b> Breakfast Dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 7:</b> Departure
								</p>
								<p class="aj">Morning breakfast - After breakfast transfer to Siliguri / New Jalpaiguri Railway Station (NJP) / Bagdogra Airport (IXB) / Tenzing Norgay Bus Stand (Junction) - Nearly 135 kilometers 4 ½ - 5 hours drive - Guest are advised to start early and not to rush - Forwarding Journey.</p>					
									<p><b>Meals : </b> Breakfast</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>Sightseeing</li>
																		<li>Transport</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Additional / personal use of vehicle.</li><li>
Any personal expenses, room service and special orders, mineral / packed waters, alcoholic and non</li><li>
alcoholic beverages, porterage, tips.</li><li>
Any extra excursions or sightseeing apart from the above specified itinerary.</li><li>
Camera fees, guide charges.</li><li>
Any incidental and other expenses which are not specified in the inclusions.</li><li>
Govt service tax - 3.09 % applicable on total billing.</li><li>
Air ticket</li><li>
Camera fees (still or movie).,</li><li>
laundry, horse ride,</li><li>
Any kind of personal expenses such as monument Fees, laundry, telephone bills and alcoholic beverages.</li><li>
Anything not specified in the itinerary</li><li>
Unspecified meals.</li><li>
Local car ride,</li><li>
Cable car ride.</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.vramanspecial.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Darjeeling Luster 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="28697"/>
						</form>
						</div>
						
						";i:1;s:61:"Book Darjeeling Luster Tour - 6 Nights / 7 Days Tour Packages";i:2;s:131:"book darjeeling luster tour - 6 nights / 7 days tour packages, valley tour packages, gangtok, darjeeling, west sikkim tour packages";i:3;s:162:"Vraman Special offers Darjeeling Luster Tour - 6 Nights / 7 Days tour package, budget Valley tour packages for Gangtok, Darjeeling, West Sikkim at exciting price.";i:4;s:1716:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Gangtok, Darjeeling, West Sikkim"        
		                 },
		      "description": "North-East Indian Luster is a scrupulously-planned tour itinerary that covers three of the most coveted and endearing destinations of the region. Several enchanting tourist destinations of Darjeeling, Pelling and Gangtok are encompassed on this tour plan that introduces visitors to the geographical, cultural, historical and spiritual treasures of the region. The beauteous creeks, gorgeous valleys and emerald hues of the region echo soulful melodies that reverberate in every visitor’s head till eternity. Such is the aura of the region that it manages to enchant and inspire all its visitorsAdditional / personal use of vehicle.
Any personal expenses, room service and special orders, mineral / packed waters, alcoholic and non
alcoholic beverages, porterage, tips.
Any extra excursions or sightseeing apart from the above specified itinerary.
Camera fees, guide charges.
Any incidental and other expenses which are not specified in the inclusions.
Govt service tax - 3.09 % applicable on total billing.
Air ticket
Camera fees (still or movie).,
laundry, horse ride,
Any kind of personal expenses such as monument Fees, laundry, telephone bills and alcoholic beverages.
Anything not specified in the itinerary
Unspecified meals.
Local car ride,
Cable car ride.12-0931-03",
		      "name": "Darjeeling Luster Tour",
		      "telephone": "+91-9874035665"
		    }
		    </script>
			";i:5;N;}