a:6:{i:0;s:22867:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Ladakh Tour 6 Days</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.browseladakh.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.browseladakh.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> Ladakh Tour 6 Days</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> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Leh Ladakh</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.browseladakh.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Ladakh Tour 6 Days - 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="194979"/>
						</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_24/691677/308825.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_24/691677/308825.jpg"  height="150"  width="150"    alt="Ladakh Tour 6 Days" title="Ladakh Tour 6 Days" /></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 at KBR Airport
										</p>
										<p class="aj">Arrival at KBR Airport and Browse Ladakh representative will greet you and take you to the Hotel/Guest House in Leh. After Lunch visiting of Leh Palace, Shanti Stupa and back to room at Hotel/Guest House</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> Visiting of Pathar Sahib Gurdwara, Hall of Fame and Sangam (meeting of two rivers)
										</p>
										<p class="aj">Gurdwara Shri Patthar Sahib : Situated 25 miles from Leh, Gurudwara Pathar Sahib stands at the place where Guru Nanak, the founder of Sikh religion and the first guru, is believed to have vanquished a demon. According to legend, during his sojourn in Ladakh, Guru Nanak was attacked by a demon. The demon threw a large boulder on the guru as he sat at the base of a hill meditating. However, the rock became soft like molten wax and failed to cause any harm to the Sikh guru. The demon was in for a surprise when he found the Sikh guru unscathed. Bristling with fury, the demon tried to crush Guru Nanak by kicking the boulder with all his might. To his surprise, the demon’s foot caused a deep impression in the boulder which had turned soft. Realizing that the man in front of him was no mortal soul, the demon underwent a transformation and stopped harassing the people. The boulder with the imprints of Guru Nanak Dev Ji and the foot of daemon still rests there. The gurudwara is maintained today by the Indian Army. It is a tradition for vehicles to stop and pay obeisance at the temple.<br />
Ladakh Hall of Fame : The Hall of Fame is a glorious museum constructed by the Indian Army. It is worth a visit for every citizen. You can see the memorabilia, eminent defense personalities with biographies, images and weapons used during the Kargil and other key strategic battles fought in Ladakh. And belongings of the enemy soldiers found at war site. All the martyr and the gallantry awards. Here’s something that you will be proud of our defense personnel who sacrificed themselves so that we could live in peace.<br />
Conflence Of The Zanskar & Indus : On way to Sham Valley before Nimu village one can have this magnificent view of two rivers in wed-lock! In seasons they have different colors and flow and wildness.</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
										</p>
										<p class="aj">Leh to Nubra Valley via Khardungla, world highest motorable road 18380 feet to enjoy the double hump camel safari in sand dune at Nubra Valley, visit of diskit monastery and view of Nubra valley.<br />
Khardungla Pass : The road journey to Nubra valley leads through Khardung La pass (The highest Motorable road in the world) 18,390 ft. around 39 Kms. Away from Leh. There are two checkpoints on the both sides of the pass. Khardong is the first village of Nubra valley at higher altitude than Deskit and other villages.<br />
Deskit Village : Deskit is the main village of headquarter of Nubra valley, which has a small market consisting of a row of shops and about 500 years old Gompa on the hilltop. Spectacular view of the valley can be seen form the monastery.<br />
Deskit Gompa : Deskit Gompa was founded by Lama Sherab Zangpo of Stod in about 1420 AD during the reign of King Dragspa. About 100 monks are residing in the Gompa, which is a branch of Thikse Monastery. The monastic festival called Gustor takes place on 20th and 21st days of the 12th month of Tibetan calendar.<br />
Hundar Village : Hundar is a beautiful village to stay with lot of trees and you will really enjoy your stay at Hundar. It has a small monastery and ruined fort above the village. The walk or Camel Safari (Double Hump bacterian camels) from Hundar to Deskit, through sand dunes for two hours is wonderful (on own).</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 valley to Pangong Lake
										</p>
										<p class="aj">Nubra valley to Pangong Lake viz Shayok river to enjoy the beauty of Pongong Lake near Chinese Border with a Night Stay at Pangong, Tantsey or Durbuk.<br />
Pangong Lake: The main attraction of this circuit is the Pangong Lake, situated at 14,000 feet (4,267 M). A long narrow basin of inland drainage, hardly six to seven kilometers at its widest point to which foreigners are permitted, is only some seven km along the southern shore from the head of the lake, but it affords spectacular views of the mountains of the Changchenmo range to the north, their reflection shimmering in the ever-changing blues and greens of the lakes brackish water. Above Spangmik are the glacier and snow-capped peaks of the Pangong rang</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> Pangong to Leh
										</p>
										<p class="aj">Pangong to Leh viz crossing the Changla Pass via visiting the Rancho School at Shey</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> Departure
										</p>
										<p class="aj">Hotel to Airport drop, tour end.</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">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.browseladakh.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Ladakh Tour 6 Days - 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="194979"/>
						</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.browseladakh.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</a> <b class="alpha50 bn small">(6)</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.browseladakh.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.browseladakh.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.browseladakh.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(3)</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.browseladakh.com/holiday-packages/5-days-leh-ladakh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_24/691677/308829.jpg"  height="100"  width="100"    alt="5 Days Leh Ladakh Tour" title="5 Days Leh Ladakh Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.browseladakh.com/holiday-packages/5-days-leh-ladakh-tour.htm" title="5 Days Leh Ladakh Tour"><h3>5 Days Leh Ladakh 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> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_194983" id="pkg_194983" method="post" action="http://www.browseladakh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.browseladakh.com/holiday-packages/5-days-leh-ladakh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="5 Days Leh Ladakh 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="194983"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.browseladakh.com/holiday-packages/ladakh-tour8-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_24/691677/308826.jpg"  height="100"  width="100"    alt="Ladakh Tour 8 Days" title="Ladakh Tour 8 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.browseladakh.com/holiday-packages/ladakh-tour8-days.htm" title="Ladakh Tour 8 Days"><h3>Ladakh Tour 8 Days</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> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_194980" id="pkg_194980" method="post" action="http://www.browseladakh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.browseladakh.com/holiday-packages/ladakh-tour8-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Ladakh Tour 8 Days - 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="194980"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.browseladakh.com/holiday-packages/ladakh-tour4-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_24/691677/308824.jpg"  height="100"  width="100"    alt="Ladakh Tour 4 Days" title="Ladakh Tour 4 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.browseladakh.com/holiday-packages/ladakh-tour4-days.htm" title="Ladakh Tour 4 Days"><h3>Ladakh Tour 4 Days</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> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_194978" id="pkg_194978" method="post" action="http://www.browseladakh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.browseladakh.com/holiday-packages/ladakh-tour4-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Ladakh Tour 4 Days - 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="194978"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.browseladakh.com/holiday-packages/leh-ladakh-tour8-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_24/691677/308827.jpg"  height="100"  width="100"    alt="Leh Ladakh Tour 8 Days" title="Leh Ladakh Tour 8 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.browseladakh.com/holiday-packages/leh-ladakh-tour8-days.htm" title="Leh Ladakh Tour 8 Days"><h3>Leh Ladakh Tour 8 Days</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> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_194981" id="pkg_194981" method="post" action="http://www.browseladakh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.browseladakh.com/holiday-packages/leh-ladakh-tour8-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Leh Ladakh Tour 8 Days - 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="194981"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.browseladakh.com/holiday-packages/ladakh-package8-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_24/691677/308828.jpg"  height="100"  width="100"    alt="Ladakh Package 8 Days" title="Ladakh Package 8 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.browseladakh.com/holiday-packages/ladakh-package8-days.htm" title="Ladakh Package 8 Days"><h3>Ladakh Package 8 Days</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> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_194982" id="pkg_194982" method="post" action="http://www.browseladakh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.browseladakh.com/holiday-packages/ladakh-package8-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Ladakh Package 8 Days - 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="194982"/>
							</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:57:"Book Ladakh Tour 6 Days - 5 Nights / 6 Days Tour Packages";i:2;s:111:"book ladakh tour 6 days - 5 nights / 6 days tour packages, hill station tour packages, leh ladakh tour packages";i:3;s:156:"Book Ladakh Tour 6 Days - 5 Nights / 6 Days tour packages from browse ladakh - Get attractive 5 Nights / 6 Days Hill Station  tour packages for  Leh Ladakh.";i:4;s:400:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Leh Ladakh"        
		                 },
		      "description": "",
		      "name": "Ladakh Tour 6 Days",
		      "telephone": "+91-9906947141"
		    }
		    </script>
			";i:5;N;}