a:6:{i:0;s:17694:"				<div class="h1"><h1>Darjeeling Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.journey99.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.journey99.com/packages.htm" title="Holiday Packages">Holiday Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>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">Duration </td>
						<td class="p5px pl0px vat">
						3 Nights / 4 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Darjeeling</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 12750 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.journey99.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="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="183407"/>
						</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_12/354567/279523.jpeg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279523.jpeg"  width="150" height="99"    alt="Darjeeling Tour" title="Darjeeling 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_12/354567/279522.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279522.jpg"  width="150" height="100"    alt="Darjeeling Tour" title="Darjeeling 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_12/354567/279524.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279524.jpg"  width="150" height="112"    alt="Darjeeling Tour" title="Darjeeling 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_12/354567/279525.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279525.jpg"  width="150" height="88"    alt="Darjeeling Tour" title="Darjeeling 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_12/354567/279526.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279526.jpg"  width="150" height="100"    alt="Darjeeling Tour" title="Darjeeling 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_12/354567/279527.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279527.jpg"  width="150" height="78"    alt="Darjeeling Tour" title="Darjeeling 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_12/354567/279529.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279529.jpg"  width="150" height="150"    alt="Darjeeling Tour" title="Darjeeling 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_12/354567/279531.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279531.jpg"  width="150" height="150"    alt="Darjeeling Tour" title="Darjeeling Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Payment Policy ( Advance Booking Fee )   <br />
<br />
45 or more days before departure         :  30%  of total Invoice amount. <br />
45-30 days before departure                 :  50%  of total Invoice amount. <br />
30-20 days before departure                 :  75%  of total Invoice amount. <br />
Less than 20 days before departure      : 100% of total Invoice amount. <br />
Important: The booking liable to be cancelled if 100% payment is not received less than 20 days before date of departure.   <br />
<br />
NOTE: Rates applicable for Indian Nationals only. 1.     <br />
<br />
No Room Reservations made until Final Confirmation along with Advance received.<br />
1.	Rooms & Rates subject to availability on specific time Period.<br />
2.	Bed type subject to availability.<br />
3.	Pvt Transfers are Point to Point only.<br />
4.	For Any deviations, delay or extra transfers, added charges will be applied for transport. The extra amount will be informed to the guests by the driver / escort and the amount has to be settled immediately.<br />
5.	Pick Up and Return time will be advised to the guests upon arrival.<br />
6.	Please let the guests know that once the timing has been informed to them, it has to be strictly adhered.<br />
7.	If Flight Cancel / Delay , Company is not Liable to be….<br />
8.	No Refund / Cancellation accepted on Final Confirmation made.<br />
9.	Quality & Quantity will assured service level.<br />
10.	95 % will assure Guest Satisfaction<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">Meet Our Ihpl Representative Who Will Be There to Assist You While You Take a Transfer to Darjeeling from New Jalpaiguri Railway Station (70.3 Km) / Bagdogra Airport (65.3 Km) / Tenzing Norgay Bus Stand (61.9 Km).<br />
<br />
a Serene Hill Station Set At An Elevation of 2050 Meter, Darjeeling Opens Arms to Tourists from all Over the World to Explore Its Untouched Beauty. the Weather of the Hill Town is So Alluring that Nothing in the World Can Make You Leave It. Take a Toy Train Ride (unesco World Heritage Site), have a Look At the Beautiful Tea Plantations While Crossing the Valleys, Enjoy a Stroll Around the Mall Road, Enjoy the Breathtaking Views of the Kanchenjunga Peak from the Tiger Hill and Sip in a Cup of the Best Tea in the World.<br />
<br />
on Reaching Darjeeling, Check-in to the Hotel. in the Evening, Go Out for a Stroll Around the Mall or Local Shopping Center of Darjeeling. have a Comfortable Overnight Stay At Darjeeling.</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/354567/279525.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279525.jpg"  width="150" height="88"    alt="Darjeeling Tour" title="Darjeeling Tour" /></a></p></div></li>
									</ul>
									</div>
									</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 (full Day)
								</p>
								<p class="aj">This Morning, Wake Up Early and Then Leave for Tiger Hill. Get Ready to Experience a Sunrise like Never Before. Tiger Hill is Considered the Best Place to Enjoy a Sunrise in Darjeeling. this is Because the Hill is Located At An Elevation of 7,407 Meter Feet Above Sea Level and It Offers Great View of the Himalayan Range During Sunrise. Let the Shining Rays of the Sun and Soothing Ambience of the Hill Make You Forget all Concerns of the World.<br />
<br />
while Going Back to Darjeeling, Visit Major Tourist Attractions like Ghoom Monastery, War Memorial and Batasia Loop.<br />
<br />
batasia Loop is the Place Through Which the Toy Train Passes in a Loop like Pattern. It is a Great Location to Enjoy a 360 Degree View of Darjeeling’s Picture Perfect Landscape. At the Center of the Batasia Loop Garden, There is War Memorial, Which Was Built to Honor the Gorkha Soldiers Who Lost Their Lives in Different Operations and Wars After India’s Independence.<br />
<br />
built Back in the Year 1875, Ghoom Monastery Holds Immense Importance as It is Dedicated to Maitreya Buddha, Who is Believed to Be ‘the Buddha to Come’. the Monastery Preserves Some Rare, Handwritten Buddhist Manuscripts.<br />
<br />
enjoy Your Breakfast At the Hotel and Then Leave for Your Next Round of Sightseeing.<br />
<br />
visit One of the Most Popular Attractions of Darjeeling, Peace Pagoda. Peace Pagoda Was Purposely Built in Order to Bring Peace and Prosperity in the World. It Displays Four Different Avatars of Buddha and is Open to People of all Races and Creeds. Don’t Miss Taking a Cable Car Ride Which Offers Breathtaking Views of the Himalayas. Walk Through the Beautiful Tea Estates and Pick Up the Best Tea in the World for Yourself.<br />
<br />
also, Visit other Attractions of Darjeeling such as Padmaja Naidu Zoological Park, Himalayan Mountaineering Institute (closed On Thursday), Tensing and Gumpo Rock, Tibetan Refugee Self Help Center (closed On Sunday) and Natural History Museum (sunday Closed).<br />
<br />
later, Return to the Hotel and Take Some Rest. Go for a Walk Around the Local Market Area in the Evening. Enjoy a Comfortable Overnight Stay At Darjeeling.</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/354567/279526.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279526.jpg"  width="150" height="100"    alt="Darjeeling Tour" title="Darjeeling Tour" /></a></p></div></li>
									</ul>
									</div>
									</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> Excursion to Mirik (full Day)
								</p>
								<p class="aj">After Having Your Breakfast, Start Driving Towards Mirik. as You Drive Through Picturesque Valleys and Lush Green Meadows, Experience the Soft Breeze Caressing Your Face and Tranquility Calling You Closer. Mirik is One of the Most Serene Tourist Attractions of Darjeeling.<br />
<br />
relax By the Beautiful Sumendu Lake and Let the Pleasing Weather and Breathtaking Views Leave You Mesmerized. Enjoy Activities like Boating, Horse Ride and Canoeing At Mirik. Mirik is a Great Location for Trekkers as It Offers a Number of Trails from Where Tourists Can Enjoy the View of Thick and Beautiful Forests. Walk Through the Tea Gardens and Enjoy the Sight of Himalayan Range, Orange Orchards and Cardamom Groves.<br />
<br />
on Your Way Back to Darjeeling, Visit Pashupati Market and Shop for Imported Clothes and Cosmetics from Thailand. in the Evening, Go for a Stroll Around the Mall or the Local Market Area. Stay Overnight At Darjeeling.</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/354567/279527.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/354567/279527.jpg"  width="150" height="78"    alt="Darjeeling Tour" title="Darjeeling Tour" /></a></p></div></li>
									</ul>
									</div>
									</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> Departure Darjeeling to Siliguri
								</p>
								<p class="aj">Munch Some Breakfast and Then Leave for Siliguri / New Jalpaiguri Railway Station (70 Km) / Bagdogra Airport (69 Km) / Tenzing Norgay Bus Stand (62 Km). On Reaching, Leave for Your Onward Journey.</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>CP (Room + Breakfast)</li>
																		<li>Hotel</li>
																		<li>Sightseeing</li>
																		<li>Airport Pickup-Drop</li>
																		<li>Stay Included</li>
																		<li>Pickup-Drop</li>
																<li>•	04 Nights Accommodation</li><li>
•	01 Bottle Complimentary mineral water.</li><li>
•	Complimentary Gift & Sweets for Child on Board ( Below 05 Years )</li><li>
•	Friends of the Day</li><li>
•	All tours & transfers on Private basis.</li><li>
•	Rate Offered on Per Heads</li>
													</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>•   Peak Period / Convention Period Surcharge, if any</li><li>
•  Entry Fee , Camera Charges & Porter Charges.</li><li>
•  Mineral Water / Alcoholic Drink During the Tour.</li><li>
•  Room Heater Supplementary Cost as per the Hotel Norms.</li><li>
•  Personal Expenses, local or trunk calls, luggage tips and Porter age</li><li>
•  Bank Remittance Charges</li><li>
•  Rate Not Include Tax (Extra on total Invoice amount ).</li><li>
•  Those not mentioned in Price Includes</li><li>
•  Child Accommodation as per Child Policy.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* 20% 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.
* Refund will be made within 15 working days from the date of receipt of the cancellation.~^#^~Documents Required For Other than INDIAN CITIZEN.   
ADULT - PASSPORT + PASSPORT SIZE PHOTO (02 Nos). 
CHILD -  PASSPORT + PASSPORT SIZE PHOTO (02 Nos).												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.journey99.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="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="183407"/>
						</form>
						</div>
						
						";i:1;s:54:"Book Darjeeling Tour - 3 Nights / 4 Days Tour Packages";i:2;s:108:"book darjeeling tour - 3 nights / 4 days tour packages, hill station tour packages, darjeeling tour packages";i:3;s:166:"Journey 99 ( a Unit of Dynamic Holidays ) offers Darjeeling Tour - 3 Nights / 4 Days tour package, budget Hill Station tour packages for Darjeeling at exciting price.";i:4;s:1781:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Darjeeling"        
		                 },
		      "description": "Payment Policy ( Advance Booking Fee )   

45 or more days before departure         :  30%  of total Invoice amount. 
45-30 days before departure                 :  50%  of total Invoice amount. 
30-20 days before departure                 :  75%  of total Invoice amount. 
Less than 20 days before departure      : 100% of total Invoice amount. 
Important: The booking liable to be cancelled if 100% payment is not received less than 20 days before date of departure.   

NOTE: Rates applicable for Indian Nationals only. 1.     

No Room Reservations made until Final Confirmation along with Advance received.
1.	Rooms & Rates subject to availability on specific time Period.
2.	Bed type subject to availability.
3.	Pvt Transfers are Point to Point only.
4.	For Any deviations, delay or extra transfers, added charges will be applied for transport. The extra amount will be informed to the guests by the driver / escort and the amount has to be settled immediately.
5.	Pick Up and Return time will be advised to the guests upon arrival.
6.	Please let the guests know that once the timing has been informed to them, it has to be strictly adhered.
7.	If Flight Cancel / Delay , Company is not Liable to be….
8.	No Refund / Cancellation accepted on Final Confirmation made.
9.	Quality & Quantity will assured service level.
10.	95 % will assure Guest Satisfaction",
		      "name": "Darjeeling Tour",
		      "telephone": "+91-9647433338"
		    }
		    </script>
			";i:5;N;}