a:6:{i:0;s:17471:"				<div class="h1"><h1>North East Panorama With Pelling</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.apexholidaysandadventures.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.apexholidaysandadventures.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>North East Panorama With Pelling</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">Duration </td>
						<td class="p5px pl0px vat">
						7 Nights / 8 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Gangtok, Darjeeling, Pelling</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.apexholidaysandadventures.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="North East Panorama With Pelling - 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="69628"/>
						</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_15/426591/126323.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/426591/126323.jpg"  width="150" height="150"    alt="North East Panorama With Pelling" title="North East Panorama With Pelling" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</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> Arrival and Transfer to Darjeeling
								</p>
								<p class="aj">On reaching Bagdogra Airport (69 km away from Darjeeling)/ New Jalpaiguri Railway Station (68 km) / Tenzing Norgay Bus Stand (62 km), meet our tour representative who helps you with an assisted transfer to Darjeeling.<br />
Placed at an elevation of 7100 m above sea level, Darjeeling is known for offering spectacular views of verdant aromatic tea gardens and the strong Himalayan Mountains. This serene hill town also boasts of housing the UNESCO World Heritage Site of the Darjeeling Himalayan Railway, which is popular as the toy train. The tranquil surroundings and the various attractions allure travelers from all around.<br />
After arriving in Darjeeling, check-in at the hotel. You can relax for some time. Thereafter, the evening is at leisure; spend it as per your liking. Take a stroll at the Mall road or visit the popular shopping centers to get your hands on some nice handicrafts etc. Stay overnight.</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 Sightseeing
								</p>
								<p class="aj">Day 2 starts very early. Leave the bed around 3:45 AM to enjoy a drive up the Tiger Hill for having a memorable sunrise view (subject to clear weather), 11 km away from the city. On returning back, explore the other attractions of Darjeeling including Ghoom Monastery, War Memorial and Batasia Loop. Once at the hotel have breakfast. After breakfast, begin the second leg of your sightseeing that take you to Padmaja Naidu Zoological Park, Himalayan Mountaineering Institute (Closed on Thursday), Ropeway, Tibetan Refugee Self Help Center (Closed on Sunday), Tea Estate, Natural History Museum (Sunday Closed) and Peace Pagoda.<br />
Sunrise view at the Tiger Hill over the Kanchendzonga Peak is a must if you are on your tour to Darjeeling. When the sun rays of the rising sun radiate its light on the Peak, it forms a stunning view for the on-looker. The sun rising from behind the hill looks like an orange ball. The lofty Tiger hill stands amid dense oak forests and the road route from the city to the hill is very refreshing during the wee hours of the morning.<br />
Opened for visitors in November 1992, Peace Pagoda – placed on Jalaphar hill slopes is an important attraction of Darjeeling. This is a sanctified spot that consists of 4 avatars of Lords Buddha. This white-colored Pagoda is the tallest free-standing structure here and has 2 concrete lion structure on both the sides of the wall of the lower level. The statues of the presiding deity are carved in the wall and are golden in color. To treat your eyes to the beautiful views of the surroundings, climb the stairs to reach the top. As you make a round of the huge dome-like structure (take Parikrama), notice the Buddha statues in different postures.<br />
The Cable Ride of Darjeeling takes you to the gorgeous Rangit Valley. While aboard the cable car, enjoy stunning views of the lush landscape with tea estates and the snow-capped peaks. Do visit the flourishing verdant tea gardens- the sight will refresh you while the fresh aroma fills in your nostrils. Located in the well-maintained garden at the Batasia Loop, the Gorkha War Memorial has been constructed in the memory of the Gorkha soldiers who had sacrificed their lives in the battles to protect their country. If you opt for a toy train ride around the Batasia Loop, which is located at a high altitude, you can enjoy a 360 degree view of the landscape.<br />
The evening is free. Stay overnight.</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> Darjeeling- Kalimpong
								</p>
								<p class="aj">Have your breakfast and complete the check-out formalities. Get an assisted transfer to Kalimpong.<br />
Perched at an altitude of 1243 m above the sea level, Kalimpong lies on the foothills of the Himalayas and is one of the most enchanting tourist destinations. Friendly locals, colonial structures, bustling market, Buddhist monasteries and beautiful views of the Himalayas attract tourists every year in decent numbers.<br />
On arrival, check-in at the hotel. After settling in, proceed for sightseeing. The list of attractions in Kalimpong include Forest Museum (Closed On Thursday), Deolo Hill, Hanuman Mandir- a temple with a huge Hanumana state that is built near Durga temple, Dr Graham Homes, Durpin Monastery, Mangal Dham- a temple complex with temples dedicated to Lord Krishna and late Guru Mangal Das, Pine View Nurseries (Cactus Only) .<br />
Placed on Durpin hill (1372 m), Durpin Gompa is the largest monastery of Kalimpong that is formally known as Zangtok Pelri Phodang. Dalai Lama had consecrated the monastery in 1976. Around 5 km southwards of the main town, the monastery has a prayer hall with striking religious murals. From the terrace of the Gompa, enjoy nice views of Khangchendzonga. Dr Graham Homes is a school and an orphanage started by a Scottish missionary, Dr JA Graham in 1900 so that you could co-educate the kids of tea-estates workers. The school has a Scottish architecture and there a museum too within the premises. Other attraction Deolo hill has viewpoints offering panoramic views of Durpin hill, the town and the Kanchenjunga. There is verdant green park here with colorful flowers. Kids can enjoy pony rides here.<br />
In the evening back to the hotel. Overnight stay.</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> Kalimpong- Pelling
								</p>
								<p class="aj">Today, get transferred to Pelling via Jorethang. The road from here offers clear views of the bordering Himalayan ranges such as Mount Kumbhakarna, Pandim, Khangchendzonga, Shimbho, Zopuno, Khangchendzonga, Narsing and more. Halt at beautiful points on the road to click memorable photographs.<br />
Lying at an altitude of 7200 feet above the sea level, Pelling is one of the most popular tourist destinations of Sikkim. Boasting of zoological and botanical richness, Pelling is home to colorful exotic flower like Orchids and Rhododendron, has small trekking routes and a few popular historical sites.<br />
As you arrive in Pelling, complete the check-in formalities at the hotel. You can relax in the afternoon. The evening is at leisure. If you wish you can take a stroll around the small village settlement around the town and interact with the locals. Stay overnight in Pelling.</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> Pelling Sightseeing
								</p>
								<p class="aj">The day is scheduled for full day sightseeing post breakfast. Visit the main attractions of Pelling Rimbi waterfalls (12 km) - a nice place to indulge in activities like swimming and fishing, Rimbi Rock Garden- a picnic spot with recreation amenities and a nice set-up, Khecheopalri Lake- a holy Buddhist lake known to fulfill people’s wishes, Rabdantse ruins- the views from of the Kanchendzonga ranges are mesmerizing.<br />
Other attractions include Khecheopalri Monastery- located in village near the Khecheopalri Lake, this is a small Buddhist monastery, Kanchenjunga waterfalls (28 km)- falling near a sharp curve on the side of the road, these waterfalls are huge in size and can be visited all round the year in west Sikkim and Pemayangtse Monastery- (2 km)- belonging to Ngingma sect of Tibbetan Buddhism, this Gompa is the second oldest monastery in Sikkim and was established in 1705 by Lama Lhatsun Chempoway. Standing on a hill with an elevation of 2085 m, this monastery offers nice views of the surroundings.<br />
The evening is free for you to roam around the helipad- placed at a high altitude; it offers nice scenic views or you can also visit the popular shopping center to collect souvenirs. Stay overnight.</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> Pelling- Gangtok
								</p>
								<p class="aj">Post morning breakfast, get transferred to Gangtok. Standing at an above sea level 1600 meters above the sea level, Gangtok is a serene hill town, famed for its Buddhist monasteries, abundant lush scenery and a pleasant climate. One of the most popular tourist destinations in north-east India, Gangtok boasts of several of viewpoints, offering mesmerizing views of the landscape. The place has different varieties of butterflies, Orchids and Rhododendron in abundance. After reaching, check-in is followed by sightseeing, including the popular tourist attractions of Gangtok-Directorate of Handicrafts & Handloom, Research Institute of Tibetology, Do Drul Chorten (Stupa), Enchey Monastery, White Hall and Flower Show.<br />
Built on a hillock by Late Truslshi Rimpoche, the head of Nyingma sect of Tibetan Buddhism in 1945, Do Drul Chorten is probably Sikkim’s biggest stupa that has 2 huge statues of Guru Rinpoche. The golden dome is the highlight. Spot lamas indulged in their prayers.<br />
Established in 1909, Enchey Monastery is located on a hill, offering views of Mt Kanchenjunga. Known for its Chinese-Pagoda like structure, the monastery has images of deities on the inner walls. Guru Rinpoche and Lord Buddha are worshipped here.<br />
The permanent flower show at Flower Exhibition Center is another popular attraction. Near Ride Park and White Hall, this is a place to click photographs for keeps. This exhibition area with green house effect has several floral species including celosia, gerberas, roses, orchids and more.<br />
In the evening, if time permits, visit the popular markets of Gangtok including M G Road or Lal Market. Shop for souvenirs like woolen clothes, Thangka paintings and handicraft items. Overnight stay.</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> A day’s trip to Tsomgo Lake and Baba Mandir
								</p>
								<p class="aj">Post breakfast, day 7 is scheduled for an excursion to Tsomgo Lake and Baba Mandir.<br />
Changu Lake or Tsomgo Lake (12,400 feet) is a glacial lake, 37 km from Gangtok. A site offering stunning site, the Lake is frequented by Brahmin ducks and other migratory birds. Kids can buy yak rides to explore the scenery and do buy Yak cheese. The banks of the Lake has Lord Shiva temple. Do not forget to click photographs here.<br />
Later, continue to Baba Harbhajan Singh Memorial War temple, 20 km from here. A temple at an elevation of 13000 feet, this shrine is originally a memorial, dedicated to a soldier Harbhajan Singh of the 23rd Punjab Regiment, who sacrificed his life in the Indo-China was of 1962. After he appeared in a colleague’s dream, the Indian Army built this structure in 1983 in his bunker that consists of his personal belongings. You can also make a wish by throwing a coin in the nearby pond.<br />
Evening is at leisure. Overnight in Gangtok.</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 8:</b> Gangtok to Siliguri for departure
								</p>
								<p class="aj">After morning breakfast, get transfer to Siliguri / New Jalpaiguri Railway Station / Bagdogra Airport / Tenzing Norgay Bus Stand for your onward journey. The tour ends here.</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">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.apexholidaysandadventures.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="North East Panorama With Pelling - 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="69628"/>
						</form>
						</div>
						
						";i:1;s:71:"Book North East Panorama With Pelling - 7 Nights / 8 Days Tour Packages";i:2;s:145:"book north east panorama with pelling - 7 nights / 8 days tour packages, lakes & rivers tour packages, gangtok, darjeeling, pelling tour packages";i:3;s:205:"Book North East Panorama With Pelling - 7 Nights / 8 Days tour packages from Apex Holidays and Adventures - Get attractive 7 Nights / 8 Days Lakes & Rivers  tour packages for  Gangtok, Darjeeling, Pelling.";i:4;s:432:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Gangtok, Darjeeling, Pelling"        
		                 },
		      "description": "",
		      "name": "North East Panorama With Pelling",
		      "telephone": "+91-8554854111"
		    }
		    </script>
			";i:5;N;}