a:6:{i:0;s:27529:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Amazing Laddakh With Stay At Pangong Tour ( 7N-8D )</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.mokshtourandtravels.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.mokshtourandtravels.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> Amazing Laddakh With Stay At Pangong Tour ( 7N-8D )</p>
					</div>
					</div>
					</div>
					<script>jQuery('#breadcrumbA').append(jQuery('#append2PageTittle').html());jQuery('#append2PageTittle').remove()</script>
									<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-->				
								
						<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> Leh Ladakh</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 39999 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.mokshtourandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing laddakh with stay at Pangong Tour ( 7N-8D ) - 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="193153"/>
						</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_22/640271/304841.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_22/640271/304841.jpg"  width="150" height="92"    alt="Amazing laddakh with stay at Pangong Tour ( 7N-8D )" title="Amazing laddakh with stay at Pangong Tour ( 7N-8D )" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</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 in Leh
										</p>
										<p class="aj">If you are planning to have an anti-altitude pill before travel such as Diamox, then we strongly recommend consulting an experienced doctor before you have it.<br />
In the morning, board your flight for Leh. Arrive at Leh.<br />
LEH: Leh, Ladakh is the largest province within the North-Indian state of Jammu and Kashmir, covering approximately 60,000 square miles (100,000 sq. km). It is surrounded and bisected by some of the highest mountain ranges in the world. Running in a generally northwest to southeast direction through Ladakh, the great Himalayan Range separates the valley of Kashmir from Ladakh. <br />
You will be met upon arrival by a MakeMyTrip representative who will transfer you to your hotel in Leh. Upon arrival, proceed for check-in at your hotel.<br />
Remainder of the day will be for rest, to acclimatize.<br />
Since you are reaching an altitude of 4000 mtrs approximately from 200 mtrs in just one hour’s time, you may be excited and would want to explore everything on your very first day. However, it is your body which needs to get acclimatized to such height and climate. We sincerely suggest that you rest on the first day for body acclimatization.<br />
Dinner and overnight stay at the hotel.</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> Leh | Monastery Tour
										</p>
										<p class="aj">In the morning, after breakfast, drive to Hemis monastery.<br />
Hemis Monastery: The Hemis monastery located 40 kms from Leh is the wealthiest, best-known and biggest Gompa of Ladakh. Its popularity stems from the major annual festival held here in summer in honor of Guru Padma Sambhava’s birth anniversary. Within the monastery there's to be seen a copper-gilt statue of the Lord Buddha, various stupas made of gold and silver, sacred thangkas and many objects. The monastery, said to exist even before the 11th century, was re-established by the 1st incarnation of Stagsang Raspa Nawang Gyatso in 1630. Belonging to the Drukpa sect, this Tibetan monastery has a very colourful and attractive architecture.<br />
Afterwards drive to Thiksey Monastery for a visit.<br />
Thiksey Monastery: The Thiksey Monastery is situated at a distance of approximately 18 km from the town of Leh. One of the most beautiful monasteries of Ladakh, it belongs to the Gelukpa Order of Buddhism. Sherab Zangpo of Stod got the Thiksey Monastery built for the first time, at Stakmo. However, later Spon Paldan Sherab, the nephew of Sherab Zangpo, reconstructed the monastery in the<br />
year 1430 AD. The new monastery was situated on a hilltop, to the north of Indus River.  It has a 15 meter high statue of the Maitreya Budhha, the largest such statue in Ladakh.<br />
After these visits return to Leh and you will be dropped at Leh Market / hotel for Lunch (on direct payment basis).<br />
Post lunch you will leave for the sightseeing of Shanti Stupa. <br />
Shanti Stupa: Shanti Stupa of Ladakh is located on the hilltop at Changspa. It can be reached quite easily from the Fort Road. The Stupa was constructed by a Japanese Buddhist or</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> Leh to Nubra Valley Via Khardungla Pass: 140Km / 5 -6 Hours
										</p>
										<p class="aj">Early morning proceed to Nubra Valley via the World’s Highest Motorable road (5602 Mts) Khardungla pass.  <br />
Khardung la Pass (18,380ft above sea level): It is not very often that one gets to drive on a road at an altitude of 18,380 feet. That is where Khardungla Pass, meaning the ‘Pass of Lower Castle,’ is located on the way from Leh to the Nubra Valley in Ladakh. It is the highest motorable road in the world as signs put up by the Border Roads Organization proudly proclaim.<br />
Arrive Nubra Valley and proceed for a visit to the White Sand Dunes at Hunder. You can also enjoy a camel ride here (Camel ride on direct payment basis).<br />
Nubra Valley: Popularly called the orchard of Ladakh, Nubra valley offers a graceful view of yellow and pink wild roses in summer and a carpet of wild lavender in the post-monsoon season. You will definitely be overwhelmed to see the Bactrian Camels (Shaggy double hump Camel) around sand dunes.<br />
Thereafter, check in at Swiss comfortable Camp or Hotel.<br />
Evening at leisure. <br />
Dinner & overnight stay at the camp or hotel.</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> Nubra Vally to Leh Via Khardungla Pass: 140 Kms / 5 - 6 Hours
										</p>
										<p class="aj">Morning after Breakfast proceed for Diskit Monastery.<br />
Diskit Monastery: One of the oldest temples of this area, the temple has a huge idol of Tsong-kha-pa, crowned with a Gelugpa yellow hat. The Diskit Gompa dates back to the 14th century and owes its inception to Changzem Tserab Zangpo, a disciple of Tsong-kha-pa.<br />
Diskit Gompa has quite an interesting legend attached to it. It is believed that a Mongol demon once lived here and was considered to be a sworn enemy of Buddhism. He was annihilated near the monastery. However, even after his death, his body kept coming back to the monastery again and again. It is said that even today the wrinkled head and hand of the demon lie inside a temple of the monastery, which is filled with fierce Gods and Goddesses.<br />
Post the Diskit Monastery, proceed for backward journey to Leh, once again driving via Khardungla pass the World Highest Motorable road.<br />
Evening explore Leh bazaar for souvenir and some shopping on your own.<br />
Dinner & overnight stay at the hotel.</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> Leh - Pangong Lake (approx. 140kms one way)
										</p>
										<p class="aj">Morning after breakfast drive to to Pangong Lake on the Indo China border. Enroute you will cross Changla Pass, the third highest motorable road in the world.<br />
Pangong Lake: The picturesque lake is one of the major draws of the Leh-Ladakh valley. a location of several film shootings and known for its pristine waters surrounded by awe-inspiring mountains, Pangong Lake is a prime tourist attraction. The long and narrow lake lies in the neighbourhood of the famous Chushul Mountains. The mirror-calm water is cold, clear and extremely salty. The lake is a breeding ground for a variety of birds.<br />
In the evening check in at your camps in Pangong<br />
Dinner and overnight stay at the hotel.</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> Pangong Lake to Leh (approx. 140kms one way)
										</p>
										<p class="aj">In the morning have breakfast at your camps in Pangong. Thereafter, proceed for your journey back to Leh.<br />
Upon your arrival in Leh, you may enjoy the evening at leisure.<br />
Dinner and overnight stay at the hotel.</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> Sham Valley Tour
										</p>
										<p class="aj">In the morning, after breakfast, drive to Sangam (Confluence). En route visit Magnetic Hill and Gurudwara Patthar Sahib. Visit Confluence of Zanskar and Indus River.<br />
The Sangam (Confluence): Confluence of the Indus and Zanskar Rivers lies in Ladakh at Nimu. The Indus runs through Ladakh all along by your side serving as a constant companion and you feel a sense of respect for this ifeline of the people of Ladakh, especially since Ladakh experiences rainfall of only 2 to 3 inches throughout the year. Both Indus and Zanskar Rivers merge with each other as if they had flown all along just for that purpose. From this point on, beyond this Confluence of the two, the waters are regarded as the Indus River.<br />
Magnetic Hill: Can anyone ever imagine the movement of a vehicle up a steep mountain with its engines off? Reach Magnetic Hill to experience this phenomenon which sounds unbelievable.<br />
Gurudwara Pathhar Sahib: Gurudwara Pathar Sahib is a beautiful Gurudwara constructed in the memory of Guru Nanak, about 25 miles away from Leh, on the Leh-Kargil road, 12000 ft above sea level. The Gurudwara was built in 1517 to commemorate the visit to the Ladakh region of Guru Nanak Dev, the founder Guru of the Sikh faith.<br />
On your way back, visit Ladakh Hall of fame.<br />
Hall of Fame: Hall of Fame in Leh is a must visit for every individual of India. This is constructed by the Indian Army. You will find memorabilia, eminent defence personalities’ biographies, images and weapons used during Kargil war and belongings of enemy soldiers found at war site.</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">Leave on time for Leh airport.</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>EP (No Meal)</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</li><li>
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">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>39999</b> <small>/
			
			                		Adult			
			                	( With Tax )			
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 					
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</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.</li><li>
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.mokshtourandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing laddakh with stay at Pangong Tour ( 7N-8D ) - 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="193153"/>
						</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.mokshtourandtravels.com/srinagar-tour-packages.htm" title="Srinagar Tour Packages">Srinagar</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/gulmarg-tour-packages.htm" title="Gulmarg Tour Packages">Gulmarg</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/pahalgam-tour-packages.htm" title="Pahalgam Tour Packages">Pahalgam</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/kargil-tour-packages.htm" title="Kargil Tour Packages">Kargil</a> <b class="alpha50 bn small">(1)</b></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.mokshtourandtravels.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/house-boat-holidays-catid.htm" title="House Boat Packages">House Boat</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/motor-bike-holidays-catid.htm" title="Motor Bike Packages">Motor Bike</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mokshtourandtravels.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</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 Leh Ladakh</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.mokshtourandtravels.com/holiday-packages/laddakha-life-time-experince-tour6n7d.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_22/640271/304857.jpg"  alt="Laddakh -  A Life Time Experince Tour  ( 6N-7D )" title="Laddakh -  A Life Time Experince Tour  ( 6N-7D )"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.mokshtourandtravels.com/holiday-packages/laddakha-life-time-experince-tour6n7d.htm" title="Laddakh -  A Life Time Experince Tour  ( 6N-7D )"><h3>Laddakh -  A Life Time Experince Tour  ( 6..</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> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_193156" id="pkg_193156" method="post" action="http://www.mokshtourandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.mokshtourandtravels.com/holiday-packages/laddakha-life-time-experince-tour6n7d.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Laddakh -  A Life Time Experince Tour  ( 6N-7D ) - 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="193156"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.mokshtourandtravels.com/holiday-packages/laddakh-via-srinagara-fantastic-trip8n9d.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_22/640271/304859.jpg"  alt="Laddakh via Srinagar : A Fantastic Trip (8N-9D)" title="Laddakh via Srinagar : A Fantastic Trip (8N-9D)"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.mokshtourandtravels.com/holiday-packages/laddakh-via-srinagara-fantastic-trip8n9d.htm" title="Laddakh via Srinagar : A Fantastic Trip (8N-9D)"><h3>Laddakh Via Srinagar : A Fantastic Trip (8..</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> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Srinagar, Leh Ladakh, Kargil</p>
															<div class="mt10px small">
							<form name="pkg_193158" id="pkg_193158" method="post" action="http://www.mokshtourandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.mokshtourandtravels.com/holiday-packages/laddakh-via-srinagara-fantastic-trip8n9d.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Laddakh via Srinagar : A Fantastic Trip (8N-9D) - 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="193158"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.mokshtourandtravels.com/holiday-packages/bikers-paradise-leh-tour4n5d.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_22/640271/304842.jpg"  alt="Biker's Paradise - Leh Tour ( 4N-5D )" title="Biker's Paradise - Leh Tour ( 4N-5D )"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.mokshtourandtravels.com/holiday-packages/bikers-paradise-leh-tour4n5d.htm" title="Biker's Paradise - Leh Tour ( 4N-5D )"><h3>Biker's Paradise - Leh Tour ( 4n-5d )</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> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_193154" id="pkg_193154" method="post" action="http://www.mokshtourandtravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.mokshtourandtravels.com/holiday-packages/bikers-paradise-leh-tour4n5d.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Biker's Paradise - Leh Tour ( 4N-5D ) - 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="193154"/>
							</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:90:"Book Amazing laddakh with stay at Pangong Tour ( 7N-8D ) - 7 Nights / 8 Days Tour Packages";i:2;s:144:"book amazing laddakh with stay at pangong tour ( 7n-8d ) - 7 nights / 8 days tour packages, hill station tour packages, leh ladakh tour packages";i:3;s:181:"MOKSH TOUR & TRAVELS offers Amazing laddakh with stay at Pangong Tour ( 7N-8D ) - 7 Nights / 8 Days tour package, budget Hill Station tour packages for Leh Ladakh at exciting price.";i:4;s:433:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Leh Ladakh"        
		                 },
		      "description": "",
		      "name": "Amazing laddakh with stay at Pangong Tour ( 7N-8D )",
		      "telephone": "+91-9302255333"
		    }
		    </script>
			";i:5;N;}