a:6:{i:0;s:22612:"				<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>seven days ladakh tour( one weak)</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.himalayanexpedia.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.himalayanexpedia.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>seven days ladakh tour( one weak)</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> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> leh,,nubara vcalley,pangong,khardongla pass,etc,</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 21999 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.himalayanexpedia.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="seven days ladakh tour( one weak) - 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="199111"/>
						</form>
						
												</p>
											</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="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								in these weak long tour you will enjoy the beautiful picturesque highland, snowcapped colorful mountains , lake, monasteries, wildlife , history and culture of ladakh.								</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> . Airport pick up to Hotel/Guest house.
										</p>
										<p class="aj">All the you need to have  rest for the acclimatization.  in the afternoon you may warm up walk around the market.</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> . Visit Shanti Stupa , Leh palace, hall of fame and spituk.
										</p>
										<p class="aj">Shanti Stupa built in 1985 for world peace and harmony on around the wall of big Stupa a complete life story of Lord Buddha.  Leh palace the legend of Ladakh was built in the 17th century during the reign of King Sengay Namgail the one and only prominent and very successful king of Ladakh.</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> •	Day 3. Visit Shey, Thiksey, Hemis monasteries
										</p>
										<p class="aj">Early in the morning drive to the east from Leh to visit the daily assembly prayer of Thiksay monastery and after driving against the Indus River to Hemis monastery which lies in the hidden mountain of Stok range.<br />
Shey palace was remained the ancient capital of Ladakh during the first King Lachen Spalkigon, still the ruined palace can be seen on the top of hill. The contemporary palace was built in the dusk of 16th century during the reign of King Deldan Namgail in the nostalgia of his father.</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> Visit Basgo castle, Likir and Alchi monasteries.
										</p>
										<p class="aj">Driving toward the west of Ladakh or Lower Ladakh which is famous for apricot and vegetables as well. Basgo castle is one among the very important heritage monument in the world which is situated on fragile soft soil and was built during the reign of King Jamayang Namgail and Sengay Namgail in 16th century. Likir monastery was built in the 14th century during the reign of fifth King Lhachan Gyalpo offered the land to Lama Duwang Chosjay he was a great mediator and in the 15th century Lawang Lodoz introduced Gylukpa order under the head of great Lama Tsongkhapa.<br />
Likir monastery is located in middle of gorge valley on hillock with beautiful mountain. Alchi is a small temple though it is the only one all around Ladakh the oldest Buddhist temple which is founded in 11th century by a very prominent translator Lotsava Rinchen Zangpo and the temple is totally different than the rest of other monastery in comparison to its wall painting and the architecture</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> nubra valley
										</p>
										<p class="aj">leh to nubra valley: today you will pass through highest motorable road of the world khardongla  pass 5359mtr and after descend to diskit of nubra covering of diskit monastery. You can have double hump bactarian camel ride. Overnight at diskit/hunder.</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> nubra to pangong via shayok valley
										</p>
										<p class="aj">: nubra to pangong via shayok valley: visit the samtanling monastery and panamik hot spring water and proceed to pangong lake, one of the most beautiful and scenic salt water  lake.   Overnight at camp.</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> pangon to leh
										</p>
										<p class="aj">pangong to leh:check out from camp for return to leh via changla pass 173560ft. leh market visit in the evening. Overnight at hotel.</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>CP (Room + Breakfast)</li>
																						<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																						<li>Transport</li>
																						<li>Transfers</li>
																						<li>Airport Pickup-Drop</li>
																						<li>Private Cab</li>
																						<li>Pickup-Drop</li>
																				<li>Accommodation on twin sharing basis (double occupancy) in base category rooms in hotels / camps mentioned or similar as per the itinerary.</li><li>
All meals in buffet on fixed menu as per chosen meal plan (MAP or AP).</li><li>
	Round trip airport transfers at Leh.</li><li>
	Sightseeing& excursions as per itinerary by independent Non-A/C Taxi (Xylo /Scorpio /Innova/ similar).</li><li>
Note on transport service:</li><li>
	The vehicleprovided is for sightseeing as per the itinerary on point–to-point basis and not at disposal after or outside the prescribed tour .</li><li>
	Places / sites not visited as per the given tour sequence / route on guest's own advice / choice will not be revisited except on extra payment as per applicable transport rate .</li><li>
	Driver of the taxi is not a guide. He will only provide basic information about the tour route.</li><li>
	All currently applicable hotel taxes (but not future tax / levies, if any)</li><li>
	Pre-paid package: No refund on unutilized services of the package (hotel, transport, meals etc.)</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Airfare / train fares etc.</li><li>
	Entrance Fees for visiting Monument, Monasteries & Museums.</li><li>
	Rafting / Camel Safari Charges, if any.</li><li>
	Any kind of drinks (Alcoholic, Mineral, Aerated).</li><li>
	Any expense of personal nature such as tips, laundry, telephone calls, fax etc.</li><li>
	Costs incidental to any change in the itinerary.</li><li>
	Any expense incurred or loss caused by reasons beyond our control such as bad weather, natural calamities, flight delays / rescheduling / cancellations, any accidents / medical evacuations, riots/ strikes/war, & etc.</li><li>
	Anything not specifically mentioned under the head “Package Cost Inclusions”.</li><li>
	Any expenses incurred on extra transport service</li><li>
	Room service & additional meals, if any.</li><li>
	Medical & Travel insurance.</li><li>
General Terms & Conditions of Service & Payment :</li><li>
	25% advance ( Non Refundable ) to be deposited in our bank account for booking of the final tour.</li><li>
	50 % of the tour cost to be deposited in our account at least 15 days before arrival at Leh.</li><li>
Balance 25% to be paid at the time of checking -in at Leh.</li><li>
	Booking confirmation is subject to availability of accommodation in specified hotels / camps.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>	25% advance ( Non Refundable ) to be deposited in our bank account for booking of the final tour.</li><li>
	50 % of the tour cost to be deposited in our account at least 15 days before arrival at Leh.</li><li>
	Balance 25% to be paid at the time of checking -in at Leh.</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>21999</b> <small>/
			
			                		Adult			
			                	( With Tax )			
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 								<div class="data mt20px p15px">            
							<div class="mb7px"> 
							<p class="b xlarge mb10px dib">notes</p>
							</div>
									
							<ul><li>Accommodation on twin sharing basis (double occupancy) in base category rooms in hotels / camps mentioned or similar as per the itinerary.</li><li>
	All meals in buffet on fixed menu as per chosen meal plan (MAP or AP).</li><li>
	Round trip airport transfers at Leh.</li><li>
	Sightseeing& excursions as per itinerary by independent Non-A/C Taxi (Xylo /Scorpio /Innova/ similar).</li><li>
Note on transport service:</li><li>
	The vehicleprovided is for sightseeing as per the itinerary on point–to-point basis and not at disposal after or outside the prescribed tour .</li><li>
	Places / sites not visited as per the given tour sequence / route on guest's own advice / choice will not be revisited except on extra payment as per applicable transport rate .</li><li>
	Driver of the taxi is not a guide. He will only provide basic information about the tour route.</li><li>
	All currently applicable hotel taxes (but not future tax / levies, if any)</li><li>
	Pre-paid package: No refund on unutilized services of the package (hotel, transport, meals etc.)</li><li>
Package Cost Exclusions :</li><li>
	Airfare / train fares etc.</li><li>
	Entrance Fees for visiting Monument, Monasteries & Museums.</li><li>
	Rafting / Camel Safari Charges, if any.</li><li>
	Any kind of drinks (Alcoholic, Mineral, Aerated).</li><li>
	Any expense of personal nature such as tips, laundry, telephone calls, fax etc.</li><li>
	Costs incidental to any change in the itinerary.</li><li>
	Any expense incurred or loss caused by reasons beyond our control such as bad weather, natural calamities, flight delays / rescheduling / cancellations, any accidents / medical evacuations, riots/ strikes/war, & etc.</li><li>
	Anything not specifically mentioned under the head “Package Cost Inclusions”.</li><li>
	Any expenses incurred on extra transport service</li><li>
	Room service & additional meals, if any.</li><li>
	Medical & Travel insurance.</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></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.himalayanexpedia.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="seven days ladakh tour( one weak) - 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="199111"/>
						</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="https://www.himalayanexpedia.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/alchi-tour-packages.htm" title="Alchi Tour Packages">Alchi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/shey-tour-packages.htm" title="Shey Tour Packages">Shey</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/hemis-tour-packages.htm" title="Hemis Tour Packages">Hemis</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/kargil-tour-packages.htm" title="Kargil Tour Packages">Kargil</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/tabo-tour-packages.htm" title="Tabo Tour Packages">Tabo</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/zanskar-tour-packages.htm" title="Zanskar Tour Packages">Zanskar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/sangla-tour-packages.htm" title="Sangla Tour Packages">Sangla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/sarhan-tour-packages.htm" title="Sarahan Tour Packages">Sarahan</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.himalayanexpedia.com/likir-tour-packages.htm" title="Likir Tour Packages">Likir</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.himalayanexpedia.com/kaza-tour-packages.htm" title="Kaza Tour Packages">Kaza</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.himalayanexpedia.com/pelling-tour-packages.htm" title="Pelling Tour Packages">Pelling</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.himalayanexpedia.com/kalpa-tour-packages.htm" title="Kalpa Tour Packages">Kalpa</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.himalayanexpedia.com/jispa-tour-packages.htm" title="Jispa Tour Packages">Jispa</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.himalayanexpedia.com/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</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="https://www.himalayanexpedia.com/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.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="https://www.himalayanexpedia.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/affordable-budget-holidays-catid.htm" title="Affordable & Budget Packages">Affordable & Budget</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.himalayanexpedia.com/food-drink-holidays-catid.htm" title="Food and Drink Packages">Food and Drink</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</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:72:"Book seven days ladakh tour( one weak) - 6 Nights / 7 Days Tour Packages";i:2;s:171:"book seven days ladakh tour( one weak) - 6 nights / 7 days tour packages, affordable & budget tour packages, leh,,nubara vcalley,pangong,khardongla pass,etc, tour packages";i:3;s:220:"Book seven days ladakh tour( one weak) - 6 Nights / 7 Days tour packages from Himalayan Expedia - Get attractive 6 Nights / 7 Days Affordable & Budget  tour packages for  leh,,nubara vcalley,pangong,khardongla pass,etc,.";i:4;s:620:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "leh,,nubara vcalley,pangong,khardongla pass,etc,"        
		                 },
		      "description": "in these weak long tour you will enjoy the beautiful picturesque highland, snowcapped colorful mountains , lake, monasteries, wildlife , history and culture of ladakh.",
		      "name": "seven days ladakh tour( one weak)",
		      "telephone": "+91-9419292076"
		    }
		    </script>
			";i:5;N;}