a:6:{i:0;s:38192:"				<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>Northeast Honeymoon Package</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.highhilltoursandtravels.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.highhilltoursandtravels.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Northeast Honeymoon Package</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>Duration :</b> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Darjeeling, Kalimpong</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Northeast Honeymoon Package - 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="123348"/>
						</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_16/454852/198916.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/454852/198916.jpg"  width="150" height="150"    alt="Northeast Honeymoon Package" title="Northeast Honeymoon Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<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
										</p>
										<p class="aj">Arrive in Siliguri at New Jalpaiguri Railway Station (68 km) / Bagdogra Airport (69 km) / Tenzing Norgay Bus Stand (62 km), met our tour representative. He would help you in taking an assisted transfer to Darjeeling.<br />
<br />
Home to the World Heritage Train- the Darjeeling Himalayan Railway (DHR) or the toy train, Darjeeling is an enchanting hill station. Lying at a height of 7100 feet above the sea level, Darjeeling has aromatic lush tea estates, tranquility in abundance, breathtaking scenery, Buddhist monasteries, bustling streets and several striking views.<br />
<br />
After you arrive in Darjeeling, check- into the hotel. You can relax for a while. The evening is at leisure and you can spend it as per your own liking. Have a leisure walk up to the Mall or visit the local shopping centers to get your hands on some memorabilia. Over Night stay 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 2:</b> Darjeeling sightseeing
										</p>
										<p class="aj">Day 2 starts quite early. Get-up around 3:45 AM to drive towards Tiger Hill (11 km) to view sunrise over the Kanchendzonga Peak (subject to clear weather). One of the major attractions in Darjeeling, the route taking to you the hill, amid Oak forests, is an extremely refreshing one. It is advisable to start early top save yourself from traffic snarls up the hill. When the sun rises behind from the hill, it illuminates the Peak and looks like an orange-colored ball. Treat your eyes to the scenery and soak-in the tranquility.<br />
<br />
On your way back, visit Ghoom Monastery- also called Yiga Choeling monastery, it is one of Darjeeling’s oldest gompas. Belonging to the Yellow sect of Buddhism, the construction of this monastery started in 1850. The statue of Maitreya Buddha, Lord Buddha of the future is the main attraction here. Next attraction is the War memorial, lying in the well-maintained garden, bounded by Batasia Loop. The memorial is built in the memory of Gorkha martyrs who sacrificed their lives in the wars to save their country. You can also opt for a ride in the toy train on the loop, offering enchanting landscape views.<br />
<br />
Return to the hotel for breakfast and start the second leg of sightseeing including Padmaja Naidu Himalayann Zoological Park, Himalayan Mountaineering Institute (Closed on Thursday), Ropeway, Tensing Gumpo Rock, Tibetan Refugee Self Help Center (Closed on Sunday), Tea Estate, Natural History Museum (Sunday Closed), Peace Pagoda<br />
<br />
Padmaja Naidu Himalayann Zoological Park- Known all around the globe, it is popular for its conservation breeding programs of Red Panda, Tibetan Wolf, Snow Leopards and other endangered animal species of the Eastern Himalaya. Take a walk in the sprawling Tea estates to soak-in the serenity and refreshing aroma. The sight of greenery spread all around looks quite soothing. The Cable car ride on Darjeeling Ropeway offers spectacular views Rangeet Valley. The white colored Peace-pagoda is a huge dome-like structure is another attraction here that has golden-colored Buddha statues in varied postures.<br />
<br />
Overnight stay in 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 3:</b> A day’s visit to Mirik
										</p>
										<p class="aj">The day after breakfast is for a day’s trip to Mirik. Perched at an elevation of 1494 m above the sea level, Mirik is an off-beat destination that is becoming a popular tourist destination, near Darjeeling. The drive from Darjeeling to Mirik has a few scenic spots from where you can stop for photo opportunity. With Sumendu Lake in its mid-point, beautiful Mirik town is blessed with verdant tea gardens, landscaped gardens, cardamom groves and the mighty Himalayas. Spend the day here, indulging in activities like boating in Sumendu Lake and horse riding to explore the place.<br />
<br />
In the evening, back to Darjeeling. On your way back, taka a stoppage at Pashupati Market (on the India-Nepal Border). You can get your hands on antiques, souvenirs, foreign goods and other knick-knacks.<br />
<br />
in Darjeeling, the evening is free for visiting the Mall Road or the Local market area.<br />
<br />
Overnight in 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- Kalimpong
										</p>
										<p class="aj">Start your day with an early morning breakfast. Check-out formalities, followed by transfer to Kalimpong. Placed at the foothills of the Himalayas, the lush destination of Kalimpong is located at an altitude of 1250 meters above the sea level.<br />
<br />
Offering a relaxed ambiance for a peaceful retreat, Kalimpong boasts of some of the most striking views of the Himalayan peaks. This bustling town has colonial-style architecture and Buddhist monasteries. The serenity spread all around the place attracts the tourists from all around. On arrival, complete the check-in formalities at the hotel.<br />
<br />
Leave the hotel room to begin sightseeing in Kalimpong including the popular attractions such as Forest Museum (Closed On Thursday), Deolo Hill, Hanuman Mandir- a Hindu temple with a huge statue of Lord Hanuman that is near Durga temple, Dr Graham Homes, Durpin Monastery, Mangal Dham- another beautiful tranquil temple complex in Kalimpong that has temples of Lord Krishna and Guru Mangal Das Ji, Pine View Nurseries (Cactus Only)<br />
<br />
Located on Durpin hill (1372 m), Durpin Gompa boasts of being the largest monastery of Kalimpong, formally known as Zangtok Pelri Phodang. Dalai Lama, in the year 1976, had consecrated this monastery. The Gompa is 5 km southwards of the town. When inside the monastery, do not miss the attractive religious murals. From the monastery’s terrace, enjoy nice views of Khangchendzonga. Started in 1900, by Dr JA Graham- a Scottish missionary, Dr Graham Homes is a school and an orphanage that co-educates children of the workers in tea-estates. The school structure is Scottish in architecture and the premise has a museum too. Once you get on the top of Deolo Hill, treat your eyes to the mesmerizing views of the Kanchenjunga, the world’s third highest mountain and the town. There is a well-maintained park too. Pony rides are offered for kids.<br />
<br />
Stay overnight in Kalimpong.</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> Kalimpong- Gangtok
										</p>
										<p class="aj">Today, have your breakfast and begin driving towards Gangtok, the capital city of the north-eastern state of Sikkim.<br />
<br />
Located at an elevation of 1600 meters above the sea level, the beautiful and peaceful hill town of Gangtok, is known to be one of the most popular tourist destinations of North-eastern region of the country. Its Buddhist monasteries, abundant lush scenery and pleasant climate allure honeymooners from all around. Hold hands in hands and admire the enchanting scenery of the town. Gangtok also houses a vast variety of butterflies, and colorful flowers like Orchids and Rhododendron.<br />
<br />
On arrival, complete the check-in formalities at the hotel. Now you can rest for a while. The evening is at leisure. If you want, you can visit the very popular M G Road (Mall) to indulge in shopping and collecting memorabilia. Get your hands on woolen clothes, Thangka paintings, handicrafts and more. Overnight stay 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 6:</b> Gangtok sightseeing
										</p>
										<p class="aj">The sixth day of the itinerary is for visiting the popular attractions of Gangtok, after morning breakfast Visit to Directorate of Handicrafts & Handloom, Research Institute of Tibetology, Do Drul Chorten (Stupa), Enchey Monastery, White Hall, Flower Show, Ganesh Tok- a temple dedicated to Lord Ganesha, placed on a small hill on the Gangtok-Nathula Road, Hanuman Tok, Tashi View Point, Banjhakri Falls, one of the finest falls close to Gangtok, place amidst a lush green well-maintained Shamanistic- themed park.<br />
<br />
One of Sikkim’s most renowned temples, Hanuman Tok is dedicated to Lord Hanuman. The temple complex is well taken care of by the Indian Army. As the temple is placed on high altitudes, the complex offers wonderful opportunities for photography as the views of the peaks are stunning from here.<br />
<br />
Probably the biggest stupa of Sikkim, Do Drul Chorten is located on a hill. This sacred spot was built in the year 1945 by Late Truslshi Rimpoche, the head of Nyingma sect of Tibetan Buddhism. The golden-colored dome is the highlight of the structure. You can spot lamas engrossed in their prayers.<br />
<br />
Founded in the year 1909, Enchey Monastery is one of the Gangtok’s most popular Gompas. Placed on a hill, the monastery offers exciting views of Mt Kanchenjunga. The structure of the monastery is inspired from a Chinese Pagoda and the images of deities adorn the inner walls. Spot the statues of Guru Rinpoche and Lord Buddha, who are worshipped here.<br />
<br />
If you are a nature lover, do visit the permanent flower show held at the Flower Exhibition Center, another popular attraction. The floral exhibition site is near Ride Park and White Hall, and is a place where you must not miss clicking photographs. This exhibition area has a green house effect and consists of a vast variety of floral species such as celosia, gerberas, roses, orchids and more.<br />
<br />
During the night hours, you can visit the discotheques in Gangtok. 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 7:</b> Tsomgo Lake and Baba Mandir
										</p>
										<p class="aj">The day is scheduled for excursion to Tsomgo Lake and Baba Mandir. Have your breakfast and leave for your trip.<br />
<br />
Tsomgo Lake or Changu Lake, lying at an elevation of 12,400 feet above the sea level is a glacial lake, which is 37 km away from Gangtok. This stunning attraction, it is frequently visited by Brahmin ducks and other colorful migratory birds. This oval-shaped lake is 50 feet deep and is covered with snow all round the year. Let your kids can yak rides; there are shops near the lake selling Yak cheese. On the banks of the Lake, there is a temple also, dedicate to Lord Shiva temple. Capture the beautiful scenery through your camera.<br />
<br />
After exploring the Lake site, continue towards the next attraction of the day Baba Harbhajan Singh Memorial War temple, around 20 km from here. Originally a war memorial, built in the memory of soldier Harbhajan Singh of the 23rd Punjab Regiment, who sacrificed his life in the Indo-China was of year 1962, it slowly turned into a temple. It was constructed in 1983 by the Indian Army after the deceased soldier appeared in the dream of his soldier friend. This temple made inside the bunker of the soldier and consists of his personal belongings like photographs. There is a wishing pond near the temple. Throw a coin in the pond and make a wish.<br />
<br />
In the evening, return to Gangtok. If time permits, you can visit the Mall Road or simply relax in your room. (Note- If there is landslide or we are not able to take you to Tsomgo Lake, there will be an alternate sightseeing).</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> Departure
										</p>
										<p class="aj">On the last day of the tour, after breakfast get on-time transfer to Siliguri -New Jalpaiguri Railway Station / Bagdogra Airport / Tenzing Norgay Bus Stand for your onward journey.</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>Sightseeing</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* 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.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Northeast Honeymoon 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="123348"/>
						</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.highhilltoursandtravels.com/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</a> <b class="alpha50 bn small">(26)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(21)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-kathmandu.htm" title="Packages in Kathmandu">Kathmandu</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-paro.htm" title="Packages in Paro">Paro</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-kalimpong.htm" title="Packages in Kalimpong">Kalimpong</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-bagdogra.htm" title="Packages in Bagdogra">Bagdogra</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-thimphu.htm" title="Packages in Thimphu">Thimphu</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-pokhara.htm" title="Packages in Pokhara">Pokhara</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-pelling.htm" title="Packages in Pelling">Pelling</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-nagarkot.htm" title="Packages in Nagarkot">Nagarkot</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-punakha.htm" title="Packages in Punakha">Punakha</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-chitwan.htm" title="Packages in Chitwan">Chitwan</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-yumthang.htm" title="Packages in Yumthang">Yumthang</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-lachung.htm" title="Packages in Lachung">Lachung</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-lachen.htm" title="Packages in Lachen">Lachen</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-wangdue-phodrang.htm" title="Packages in Wangdue Phodrang">Wangdue Phodrang</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.highhilltoursandtravels.com/packages-in-bumthang.htm" title="Packages in Bumthang">Bumthang</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.highhilltoursandtravels.com/packages-in-lumbini.htm" title="Packages in Lumbini">Lumbini</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.highhilltoursandtravels.com/packages-in-gorakhpur.htm" title="Packages in Gorakhpur">Gorakhpur</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.highhilltoursandtravels.com/packages-in-bhaktapur.htm" title="Packages in Bhaktapur">Bhaktapur</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.highhilltoursandtravels.com/packages-in-trongsa.htm" title="Packages in Trongsa">Trongsa</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.highhilltoursandtravels.com/packages-in-jomsom.htm" title="Packages in Jomsom">Jomsom</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.highhilltoursandtravels.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(45)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(32)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.highhilltoursandtravels.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Darjeeling, Kalimpong</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.highhilltoursandtravels.com/tour-packages/beautiful-sikkim-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/454852/198901.jpg"  alt="Beautiful Sikkim Tour" title="Beautiful Sikkim Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.highhilltoursandtravels.com/tour-packages/beautiful-sikkim-tour.htm" title="Beautiful Sikkim Tour"><h3>Beautiful Sikkim Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Pelling, Bagdogra</p>
															<div class="mt10px small">
							<form name="pkg_123332" id="pkg_123332" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.highhilltoursandtravels.com/tour-packages/beautiful-sikkim-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Beautiful Sikkim Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="123332"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.highhilltoursandtravels.com/tour-packages/darjeeling-gangtok-pelling-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/454852/198910.jpg"  alt="Darjeeling Gangtok Pelling Tour" title="Darjeeling Gangtok Pelling Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.highhilltoursandtravels.com/tour-packages/darjeeling-gangtok-pelling-tour.htm" title="Darjeeling Gangtok Pelling Tour"><h3>Darjeeling Gangtok Pelling Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Pelling</p>
															<div class="mt10px small">
							<form name="pkg_123342" id="pkg_123342" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.highhilltoursandtravels.com/tour-packages/darjeeling-gangtok-pelling-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Darjeeling Gangtok Pelling Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="123342"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.highhilltoursandtravels.com/tour-packages/gemsof-north-east-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/454852/198914.jpg"  alt="Gems of North East Tour" title="Gems of North East Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.highhilltoursandtravels.com/tour-packages/gemsof-north-east-tour.htm" title="Gems of North East Tour"><h3>Gems Of North East Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Kalimpong, Mirik</p>
															<div class="mt10px small">
							<form name="pkg_123346" id="pkg_123346" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.highhilltoursandtravels.com/tour-packages/gemsof-north-east-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Gems of North East Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="123346"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.highhilltoursandtravels.com/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/454852/198903.jpg"  alt="Mesmerizing Darjeeling Gangtok Tour" title="Mesmerizing Darjeeling Gangtok Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.highhilltoursandtravels.com/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm" title="Mesmerizing Darjeeling Gangtok Tour"><h3>Mesmerizing Darjeeling Gangtok Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling</p>
															<div class="mt10px small">
							<form name="pkg_123334" id="pkg_123334" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.highhilltoursandtravels.com/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Mesmerizing Darjeeling Gangtok Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="123334"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.highhilltoursandtravels.com/tour-packages/blissful-sikkim-with-darjeeling-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/454852/198915.jpg"  alt="Blissful Sikkim with Darjeeling Tour" title="Blissful Sikkim with Darjeeling Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.highhilltoursandtravels.com/tour-packages/blissful-sikkim-with-darjeeling-tour.htm" title="Blissful Sikkim with Darjeeling Tour"><h3>Blissful Sikkim With Darjeeling Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Pelling</p>
															<div class="mt10px small">
							<form name="pkg_123347" id="pkg_123347" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.highhilltoursandtravels.com/tour-packages/blissful-sikkim-with-darjeeling-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Blissful Sikkim with Darjeeling Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="123347"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.highhilltoursandtravels.com/tour-packages/gangtok-kalimpong-darjeeling-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/454852/198909.jpg"  alt="Gangtok Kalimpong Darjeeling Tour" title="Gangtok Kalimpong Darjeeling Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.highhilltoursandtravels.com/tour-packages/gangtok-kalimpong-darjeeling-tour.htm" title="Gangtok Kalimpong Darjeeling Tour"><h3>Gangtok Kalimpong Darjeeling Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Kalimpong</p>
															<div class="mt10px small">
							<form name="pkg_123341" id="pkg_123341" method="post" action="http://www.highhilltoursandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.highhilltoursandtravels.com/tour-packages/gangtok-kalimpong-darjeeling-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Gangtok Kalimpong Darjeeling Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="123341"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</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:66:"Book Northeast Honeymoon Package - 7 Nights / 8 Days Tour Packages";i:2;s:131:"book northeast honeymoon package - 7 nights / 8 days tour packages, hill station tour packages, darjeeling, kalimpong tour packages";i:3;s:175:"High Hill Tours And Travels offers Northeast Honeymoon Package - 7 Nights / 8 Days tour package, budget Hill Station tour packages for Darjeeling, Kalimpong at exciting price.";i:4;s:420:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Darjeeling, Kalimpong"        
		                 },
		      "description": "",
		      "name": "Northeast Honeymoon Package",
		      "telephone": "+91-9933310111"
		    }
		    </script>
			";i:5;N;}