a:6:{i:0;s:10331:"				<div class="h1"><h1>Ladakh - Moonland on Earth Tour - 01</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.geetcompany.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.geetcompany.com/holiday-tour-packages.htm" title="Holiday Tour Packages">Holiday Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Ladakh - Moonland on Earth Tour - 01</p>
				<br />
				
									<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>
					
					<table class="w100 formTable imgWidth">
					<tr>
					
											<td class="p10px vat imgWidth150 w150px">
						<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_1/22362/22529.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/22362/22529.jpg"  width="150" height="150"    alt="Ladakh - Moonland on Earth Tour - 01" title="Ladakh - Moonland on Earth Tour - 01" /></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_1/22362/22531.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/22362/22531.jpg"  width="150" height="150"    alt="Ladakh - Moonland on Earth Tour - 01" title="Ladakh - Moonland on Earth Tour - 01" /></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_1/22362/22532.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/22362/22532.jpg"  width="150" height="150"    alt="Ladakh - Moonland on Earth Tour - 01" title="Ladakh - Moonland on Earth Tour - 01" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Tour Code :</b> MOE-1</p>
												<p class="mb5px"><b>Duration :</b> 
						3 Nights / 4 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Leh Ladakh</p>
												<p><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.geetcompany.com/travel-inquiry.htm">
						<input type="hidden" name="subject" value="Ladakh - Moonland on Earth Tour - 01 - 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="4975"/>
						</form>
						</p>
											</td>
					</tr>
					</table>
										<br />
					
					<div class="packageTabs myTabs horizontal mc"><!--MY TABS STARTS-->
					<ul class="fo lsn m0px p0px">
					
											<li id="tab2"><a href="#data2">Itinerary</a></li>
												<li id="tab4"><a href="#data4">Tour Detail</a></li>
												<li id="tab5"><a href="#data5">Rate Card</a></li>
												<li id="tab6"><a href="#data6">Terms &amp; Conditions</a></li>
											</ul>
					
					
											<div class="ic bdr" id="data2"><!--DATA2 START-->
						<br />
						<ul class="lsn m0px p0px">
									<li>
									<p class="b mb5px">Day 1: Arrive Leh
									</p>
									<div class="data p10px">Upon arrival at Leh Airport you will met by our representative and transfer to Hotel for Check in. Complete day for rest and leisure to acclimatize. Evening Visit to Leh Market & Shanti Stupa. Overnight at Hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Leh (Excursion to Monasteries)
									</p>
									<div class="data p10px">Post Breakfast we proceed for Indus Valley Monastery tour including Shey Palace, The ancient capital of Ladakh, Thiksey an impressive complex rising tier upon tier on a hill above the village, Hemis Gompa, the largest monastic foundation of Drukpa Kagyu Order of Tibetan Buddhism, Sindhu Ghat & Stok Palace Museum. Packed or Hot Lunch will be provided. Overnight at Hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Leh (Excursion to Khardungla Top - 18,390 Ft.)
									</p>
									<div class="data p10px">Post Breakfast we drive to Khardung la, the highest motorable road in the world at 18,390 ft. is around 39 Kms away from Leh. The views from the top of the pass are amazing. Return to the hotel for hot lunch. Afternoon at leisure for last day shopping. Overnight at hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Depart Leh (Fly Out)
									</p>
									<div class="data p10px">Tour concludes. We thank you for your patronage and ensure a punctual transfer to Domestic Airport to catch the flight for your onward Destination.</div>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						Duration: 03 Nights / 04 Days (Validity: January to December)<br />
Other Charges: Nett & Non Commission able:-<br />
Professional Tourist Guide Rs. 1200 Per Day.<br />
Camel Safari In Nubra Valley Rs. 800 Per Person.<br />
River Rafting Rs. 1200 Per Person (Phey To Nimu)Note:Season For Rafting Is From 25Th June Until 30 August)<br />
Cultural Program Rs. 5000 Per Program.<br />
Note:-<br />
Prices Valid For Minimum 02, 04 & 06 Pax Traveling Together In One Vehicle & Above 06 Pax Based On Maxi Cab (12 Seater).<br />
Cost Incidental To Any Change In The Itinerary/ Stay On Account Of Flight Cancellation Due To Bad Weather, Ill Health, Roadblocks And/Or Any Factors Beyond Control.Airfare To And From Leh.<br />
Any Kind Of Personal Expenses Or Optional Tours / Extra Meals Ordered.<br />
Any Thing Not Specifically Mentioned Under The Head "Prices Included".<br />
Tips, Insurance, Laundry, Phone Calls.<br />
The Services Of Vehicle Is Not Included On Leisure Days & After Finishing The Sightseeing Tour As Per The Itinerary.<br />
Any Kind Of Drinks (Alcoholic, Mineral, Aerated).<br />
Guide Fee, Camera Fee, Soft Or Hard Drinks, Starters.<br />
Medical & Travel Insurance.<br />
Additional Costs Due To Flight Cancellation, Road Blocks Etc.							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																				<li>Meals</li>
																				<li>Sightseeing</li>
																				<li>Transfers</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Exclusions :</p> <ul><li>Airfare To And From Leh.</li><li>
Any Kind Of Personal Expenses Or Optional Tours / Extra Meals Ordered.</li><li>
Any Thing Not Specifically Mentioned Under The Head "Prices Included".</li><li>
Tips, Insurance, Laundry, Phone Calls.</li><li>
The Services Of Vehicle Is Not Included On Leisure Days & After Finishing The Sightseeing Tour As Per The Itinerary.</li><li>
Any Kind Of Drinks (Alcoholic, Mineral, Aerated).</li><li>
Guide Fee, Camera Fee, Soft Or Hard Drinks, Starters.</li><li>
Medical & Travel Insurance.</li><li>
Additional Costs Due To Flight Cancellation, Road Blocks Etc.</li></ul><br />
													<!--DATA4 EMD--></div>
							
						<div class="ic bdr" id="data5"><!--DATA5 START-->
						<br />
						
    	<p class="h dif xlarge b mb5px">Hotel Details</p>
    	<div class="otherDetails aj">Hotels Incorporated</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Destination</td>
				<td class="headHr p5px b">Budget</td>
				<td class="headHr p5px b">Standard</td>
				<td class="headHr p5px b">Deluxe</td>
				<td class="headHr p5px b">Super Deluxe</td>
				<td class="headHr p5px b">Luxury</td>
			</tr>
			<tr>
				<td class="data p5px">Leh</td>
				<td class="data p5px">Nezerview guest House or similar</td>
				<td class="data p5px">Hotel Panaroma Nezerview Holiday Inn</td>
				<td class="data p5px">Antelope Holiday Ladakh La ri sa</td>
				<td class="data p5px">Gawaling International Lasermo Hotel Dragon Hotel</td>
				<td class="data p5px">The Grand Dragon</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Package Cost</p>
    	<div class="otherDetails aj">Cost of the Package (Per Person)</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headVr p5px">Hotel</td>
				<td class="data p5px">Pax - 06</td>
			</tr>
			<tr>
				<td class="headVr p5px">Budget</td>
				<td class="data p5px">Rs 4970 per person</td>
			</tr>
			<tr>
				<td class="headVr p5px">Standard</td>
				<td class="data p5px">Rs 5990 per person</td>
			</tr>
			<tr>
				<td class="headVr p5px">A class</td>
				<td class="data p5px">Rs 6600 per person</td>
			</tr>
			<tr>
				<td class="headVr p5px">A class deluxe</td>
				<td class="data p5px">Rs 6885 per person</td>
			</tr>
			<tr>
				<td class="headVr p5px">Luxury</td>
				<td class="data p5px">Rs 17100 per person</td>
			</tr>
		</table></div><br>						<!--DATA5 EMD--></div>
												<div class="ic bdr" id="data6"><!--DATA6 START-->
						<br />
						* 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. ~^#^~						<!--DATA6 EMD--></div>
											
					<!--MY TABS END--></div>
					";i:1;s:75:"Book Ladakh - Moonland on Earth Tour - 01 - 3 Nights / 4 Days Tour Packages";i:2;s:123:"book ladakh - moonland on earth tour - 01 - 3 nights / 4 days tour packages, valley tour packages, leh ladakh tour packages";i:3;s:154:"Geet & Company offers Ladakh - Moonland on Earth Tour - 01 - 3 Nights / 4 Days tour package, budget Valley tour packages for Leh Ladakh at exciting price.";i:4;s:1588:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Leh Ladakh"        
		                 },
		      "description": "Duration: 03 Nights / 04 Days (Validity: January to December)
Other Charges: Nett & Non Commission able:-
Professional Tourist Guide Rs. 1200 Per Day.
Camel Safari In Nubra Valley Rs. 800 Per Person.
River Rafting Rs. 1200 Per Person (Phey To Nimu)Note:Season For Rafting Is From 25Th June Until 30 August)
Cultural Program Rs. 5000 Per Program.
Note:-
Prices Valid For Minimum 02, 04 & 06 Pax Traveling Together In One Vehicle & Above 06 Pax Based On Maxi Cab (12 Seater).
Cost Incidental To Any Change In The Itinerary/ Stay On Account Of Flight Cancellation Due To Bad Weather, Ill Health, Roadblocks And/Or Any Factors Beyond Control.Airfare To And From Leh.
Any Kind Of Personal Expenses Or Optional Tours / Extra Meals Ordered.
Any Thing Not Specifically Mentioned Under The Head "Prices Included".
Tips, Insurance, Laundry, Phone Calls.
The Services Of Vehicle Is Not Included On Leisure Days & After Finishing The Sightseeing Tour As Per The Itinerary.
Any Kind Of Drinks (Alcoholic, Mineral, Aerated).
Guide Fee, Camera Fee, Soft Or Hard Drinks, Starters.
Medical & Travel Insurance.
Additional Costs Due To Flight Cancellation, Road Blocks Etc.",
		      "name": "Ladakh - Moonland on Earth Tour - 01",
		      "telephone": "+91-9896771268"
		    }
		    </script>
			";i:5;N;}