a:6:{i:0;s:29813:"				<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>Glimpses of Ladakh – 07 nights 08 days Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.nomadicsteps.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.nomadicsteps.in/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Glimpses of Ladakh – 07 nights 08 days Tour</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> 
						7 Nights / 8 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.nomadicsteps.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Glimpses of Ladakh – 07 nights 08 days Tour - 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="119549"/>
						</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_16/479432/193675.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/479432/193675.jpg"  width="150" height="150"    alt="Glimpses of Ladakh – 07 nights 08 days Tour" title="Glimpses of Ladakh – 07 nights 08 days Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								07 night accommodation in a standard hotel/camp on twin/triple occupancy<br />
07 Breakfasts + 07 Dinners<br />
Transportation: 01 Mahindra Scorpio/Xylo (not on disposal basis, vehicle available as per itinerary only, on point to point basis from arrival at Leh airport till departure at Leh airport) including all sightseeing<br />
Driver Allowance, Parking Fees, Toll charges, etc.<br />
Meal Served in Hotel as per hotel fix menu basis. (No En Route meal)<br />
Exclusive Vehicle for transfers & sightseeing.<br />
Inner Line Permit for tourists<br />
LAHDC environment fees - Base category room used in the package.<br />
All hotel taxes etc.Personal expenses such as room heater, laundry, telephone calls, tips & gratuity, mineral water, soft & hard drinks, rafting, rock climbing, or porterage<br />
In Nubra Valley: Camel ridesAdditional Meal (lunch) & En route Meal.Monument or monastery entrance fees<br />
Additional sightseeing or extra usage of vehicle, other than mentioned in above itinerary.<br />
Camera Fees, Guide & Entry Fees.<br />
If any cost arising due to natural calamities like, landslides, road blockage, political disturbances, etc. (to be borne by the client which is directly payable on the spot).<br />
If any increase in fuel price or taxes, package cost will increase which may come into effect prior to departure.<br />
Travel Insurance.Anything which is not included in the "Package Inclusions.”								</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 at Leh Airport – Shanti Stupa – Leh Palace
										</p>
										<p class="aj">Upon arrival at Leh airport in morning, our representative will be there to meet you and transfer to the pre-booked hotel for check in. It is advisable you use this day to acclimatize to the low air pressure at higher altitudes (11,562 ft.) of Leh. Afternoon free for leisure. Later in the evening, we will take you to Shanti Stupa and Leh Palace. Shanti Stupa is a Buddhist white-domed stupa (chorten) on a hilltop in Chanspa, Leh district, Ladakh, in the north Indian state of Jammu and Kashmir. It was built in 1991 by Japanese Buddhist Bhikshu, Gyomyo Nakamura and part of the Peace Pagoda mission. The Shanti Stupa holds the relics of the Buddha at its base, enshrined by the 14th Dalai Lama. The stupa has become a tourist attraction not only due to its religious significance but also due to its location which provides panoramic views of the surrounding landscape Leh Palace is a former royal palace overlooking the Ladakhi Himalayan town of Leh. Modelled on the Potala Palace in Lhasa, Tibet, the palace was built by King Sengge Namgyal in the 17th century. It is nine storeys high; the upper floors accommodated the royal family, while the lower floors held stables and store rooms. Overnight stay in 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 – Shey – Thiksey – Hemis – Leh (approx 120 km)
										</p>
										<p class="aj">After breakfast, we will be visiting Shey Gompa, Thiksey Gompa and Hemis monastery. Shey Gompa is about 15 kms from Leh. It used to be the summer palace of the kings of Ladakh. There are lots of Stupas and Gompas built around the palace. Shey Gompa was built in the beginning of 17th century AD by Deldan Namgyal. One of the major attractions in Shey is the 12m Shakyamuni Buddha statue located inside the Dresthang Gompa. Thiksey Gompa is located close to Shey and is about 17 kms from Leh. This monastery is considered to be one of the most beautiful monasteries in Ladakh and belongs to the Gelukspa order. Hemis monastery is about 45 kms south of Leh. It is one of the most famous and largest monasteries in Ladakh. This beautiful monastery belongs to the Drukpa order and was founded in the early 17'Th century. Stop at Rancho School (popularized by movie 3 Idiots) on your way back. Dinner and overnight stay at hotel in Leh.</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 – Sham Valley – Kargil (approx 220 km)
										</p>
										<p class="aj">After breakfast at hotel, leave for Kargil. The first stop on your journey will be the monastery at Phyang. Built in the fifteenth century by the founder of the Namgyal dynasty, the gompa is at the head of a side valley, above a quaint village. Your next stop can be at Gurudwara Pathar Sahib. According to legend, in 1517 when Guru Nanak was on his way back after a two year journey to Nepal, Sikkim and Tibet, he stopped and spent time here. The Gurudwara holds the rock with the imprint of Guru Nanak’s sitting body and is visited by people of all the faiths. The next stop is not one to be missed – around 5km further, you will find a sign on your side of the road that reads “Magnetic Hill”. Park your vehicle, turn off the engine, release the brake and you will find yourself moving uphill for a good 10ft or more, without any external assistance! The explanation for this gravity-defying feat is something as mundane as an optical illusion but you be the judge!! Five kilometers further, you follow the Indus running through a deep gorge, and emerge to view a dramatic confluence of the muddy Indus with the sparkling blue Zanskar (confluence of Indus and Zanskar rivers). After crossing the Indus, few kilometers ahead of Basgo, a steep winding road ascends 2km, past a collection of chortens, to the picturesque village of Alchi. Its location, the beauty of its gompa and the availability of comfortable accommodation is rapidly making Alchi quite a favorite of tourists. Unlike other gompas you actually walk downhill through the village to the unassuming entrance to the Chos-kor (religious enclave) – a complex of five unique temples surrounded by a white mud wall with a patchwork of cultivated fields alongside. It is a charming walk winding past village homes midst apricot trees, with channeled water gurgling alongside as you approach the Dharma Chakra Monastery. Overnight stay in hotel at Kargil.</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> Kargil – Lamayuru – Likir – Leh (approx 220 km)
										</p>
										<p class="aj">After breakfast, leave for Lamayuru (“Moonland”), known for its moonland like landscape. Lamayuru monastery is located on the main Kargil Leh highway between Bodhkharbu and Kha-la-che, on a steep rock mountain Lamayuru is amongst the oldest monasteries in Leh and is believed to be in existence along the same time as Alchi monastery. Though almost in ruins Lamayuru monastery is home to about 150 monks of Red-Hat sect of Buddhism. It is believed to have housed more than 400 monks in earlier times. A peculiar landscape near Lamayuru on Leh-Kargil Road is the MoonLand. It is called so fondly, because the landscapes here are said to be like that of the moon. It has also been said often, that on a full moon night, the area is an extraordinary sight to behold, something one doesn't get see every day, making it a must visit area of the town. On the way back, take a small detour to reach Likir Gompa, which towers over a village of the same name. The 5km road completes a half circle leading to the top and provides great views, from different angles, of the stark white cluster of buildings and recently built golden Buddha statue reaching towards the heavens. Founded in the eleventh century under the direction of Tibetan Monks, it was taken over by the Gelugpa order in the fifteenth century. On the way back if time permits, you can visit Army Hall of Fame, located near the Leh Airfiled. This museum is constructed as well as maintained by the Indian Army in the memory of the soldiers who had lost their lives during the Indo-Pak wars. It is also termed as a memorial for the war heroes. This building consists of two floors. While on the ground floor, there is information about the brave soldiers as and a souvenir shop but on the first floor, there are artifacts of various wars (mainly Kargil war) such as the weapons used during the war and some important documents, related to the same. Overnight stay in hotel at Leh.</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 - Khardung La - Diskit - Hundur - Nubra Valley (approx 150 km)
										</p>
										<p class="aj">After breakfast in the morning, we will drive to Nubra Valley. En route visit Khardung-La, the highest motorable road in the world at 18,380ft. The pass on the Ladakh Range lies north of Leh and is the gateway to the Shyok and Nubra valleys. The Siachen Glacier lies part way up the latter valley. Built in 1976, it was opened to public motor vehicles in 1988 and has since seen many automobile, motorbike and mountain biking expeditions. Maintained by the Border Roads Organization, the pass is strategically important to India as it is used to carry supplies to the Siachen Glacier. Nubra literally means the "Valley of Flowers". Nubra Valley is popularly known as Ldorma or the valley of flowers. It is situated to the north of Ladakh between the Karakoram and Ladakh ranges of the Himalayas. In the evening, visit Sand dunre, the double hump Bacterium Camel ride in the sand dune is something one must experience. Later, visit Diskit Village which is famous for its monastery. The town is dominated by the huge 14th century monastery which is the oldest and largest in the valley. It houses the remains of a respected 14th century lama from Nubra who returned from Tibet after serving as regent to the first Dalai Lama at Tashilhunpo Monastery in Tibet. The monastery has been a very sacred place since centuries. Here lies the landmark of the valley – the impressive 32-metre statue of the Buddha Maitreya. It took four years to complete and was inaugurated by the Dalai Lama on 24th July 2010. Dinner and overnight stay 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 6:</b> Nubra Valley – Shyok – Durbuk – Tangste – Pangong Tso (approx 170 km)
										</p>
										<p class="aj">After early breakfast, check out early and start your journey alongside Shyok River. This route follows the Shyok River from Agham to Shyok Village, 36 km. You will have to cross the water streams on the way. Stop at Shyok village for a quick bite and snacks and move to Pangong Tso which is perhaps one of the most amazing lakes in Asia which changes its color 4 – 5 times a day. At evening, enjoy the breathtaking view of Pangong Lake. The Pangong Lake or “lake of the great hollow” is considered as the largest lake in Asia. The water is clearer though salty. It is believed that these waters must have been fresh at some ancient age. The mountain ranges at the Pangong’s north-western extremity are of lime stones which seem to affect its water. The Crystal clear salty water shines in many shades of blue depending upon its depth. It literally changes shades with sunlight. With a backdrop of mountains of various hues and colors, it is a sight for the Gods. At an elevation of 4300 meter, the air is cool even in summers at Ladakh. Pangong Lake is about 4 Km wide on the average and at least 136 Km long. The extent of the known portion is, therefore, upwards of 250 square miles (400 sq km). Overnight at Camp at Pangong Lake.</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> Pangong Tso – Chang-La – Leh (approx 160 km)
										</p>
										<p class="aj">After breakfast at campsite, we will start our journey to Leh. En route you will cross Spangmik, Lukung, Tangste, Durbuk and Chang-La. Chang-La is situated at a height of 5360m. ASL (considered to be world’s 3rd highest motorable road). Stop here for quick tea and snacks and move towards Leh. Evening free for shopping at Leh market. Overnight stay at hotel in Leh.</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> Leh airport drop
										</p>
										<p class="aj">After breakfast at hotel, we will drop you at Leh airport for your onward journey</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>Hotel</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Personal expenses such as room heater, laundry, telephone calls, tips & gratuity, mineral water, soft & hard drinks, rafting, rock climbing, or porterage</li><li>
In Nubra Valley: Camel ridesAdditional Meal (lunch) & En route Meal.Monument or monastery entrance fees</li><li>
Additional sightseeing or extra usage of vehicle, other than mentioned in above itinerary.</li><li>
Camera Fees, Guide & Entry Fees.</li><li>
If any cost arising due to natural calamities like, landslides, road blockage, political disturbances, etc. (to be borne by the client which is directly payable on the spot).</li><li>
If any increase in fuel price or taxes, package cost will increase which may come into effect prior to departure.</li><li>
Travel Insurance.Anything which is not included in the "Package Inclusions.”</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 
* 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. 
* 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.nomadicsteps.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Glimpses of Ladakh – 07 nights 08 days 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="119549"/>
						</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.nomadicsteps.in/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-mount-abu.htm" title="Packages in Mount Abu">Mount Abu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/packages-in-kanyakumari.htm" title="Packages in Kanyakumari">Kanyakumari</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-kullu.htm" title="Packages in Kullu">Kullu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-kinnaur.htm" title="Packages in Kinnaur">Kinnaur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-dubai.htm" title="Packages in Dubai">Dubai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-rampur.htm" title="Packages in Rampur">Rampur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-bali.htm" title="Packages in Bali">Bali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-chittorgarh.htm" title="Packages in Chittorgarh">Chittorgarh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-naggar.htm" title="Packages in Naggar">Naggar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-lahaul-spiti.htm" title="Packages in Lahaul & Spiti">Lahaul & Spiti</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</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="http://www.nomadicsteps.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/mountain-climbing-holidays-catid.htm" title="Mountain Climbing Packages">Mountain Climbing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/paragliding-holidays-catid.htm" title="Paragliding Packages">Paragliding</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/river-rafting-holidays-catid.htm" title="River Rafting Packages">River Rafting</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.nomadicsteps.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/mountaineering-holidays-catid.htm" title="Mountaineering Packages">Mountaineering</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/skiing-holidays-catid.htm" title="Skiing Packages">Skiing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/rock-climbing-holidays-catid.htm" title="Rock Climbing Packages">Rock Climbing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.nomadicsteps.in/jeep-safari-holidays-catid.htm" title="Jeep Safari Packages">Jeep Safari</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>
				</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:84:"Book Glimpses of Ladakh – 07 nights 08 days Tour - 7 Nights / 8 Days Tour Packages";i:2;s:138:"book glimpses of ladakh – 07 nights 08 days tour - 7 nights / 8 days tour packages, hill station tour packages, leh ladakh tour packages";i:3;s:183:"Book Glimpses of Ladakh – 07 nights 08 days Tour - 7 Nights / 8 Days tour packages from Nomadic Steps - Get attractive 7 Nights / 8 Days Hill Station  tour packages for  Leh Ladakh.";i:4;s:1788:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Leh Ladakh"        
		                 },
		      "description": "07 night accommodation in a standard hotel/camp on twin/triple occupancy
07 Breakfasts + 07 Dinners
Transportation: 01 Mahindra Scorpio/Xylo (not on disposal basis, vehicle available as per itinerary only, on point to point basis from arrival at Leh airport till departure at Leh airport) including all sightseeing
Driver Allowance, Parking Fees, Toll charges, etc.
Meal Served in Hotel as per hotel fix menu basis. (No En Route meal)
Exclusive Vehicle for transfers & sightseeing.
Inner Line Permit for tourists
LAHDC environment fees - Base category room used in the package.
All hotel taxes etc.Personal expenses such as room heater, laundry, telephone calls, tips & gratuity, mineral water, soft & hard drinks, rafting, rock climbing, or porterage
In Nubra Valley: Camel ridesAdditional Meal (lunch) & En route Meal.Monument or monastery entrance fees
Additional sightseeing or extra usage of vehicle, other than mentioned in above itinerary.
Camera Fees, Guide & Entry Fees.
If any cost arising due to natural calamities like, landslides, road blockage, political disturbances, etc. (to be borne by the client which is directly payable on the spot).
If any increase in fuel price or taxes, package cost will increase which may come into effect prior to departure.
Travel Insurance.Anything which is not included in the "Package Inclusions.”",
		      "name": "Glimpses of Ladakh – 07 nights 08 days Tour",
		      "telephone": "+91-9811752057"
		    }
		    </script>
			";i:5;N;}