a:6:{i:0;s:31244:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Ladakh  8 Days & 7 NightsCamps And Rides Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.snowlionhimalayatravel.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.snowlionhimalayatravel.in/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> Ladakh  8 Days & 7 NightsCamps And Rides Tour</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> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.snowlionhimalayatravel.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Ladakh  8 Days & 7 NightsCamps And Rides 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="125774"/>
						</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_18/516946/202349.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_18/516946/202349.jpg"  width="150" height="150"    alt="Ladakh  8 Days & 7 NightsCamps And Rides Tour" title="Ladakh  8 Days & 7 NightsCamps And Rides 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>
													
								Rider: Rs.34900 - Max 15 rider<br />
Pillion: Rs.19900 - Min 10 rider<br />
<br />
<b.>Overview</b.><br />
The tour includes organised camping in some of the isolated and beautiful valleys. (except Leh where its Hotel/guest house <br />
The camping includes 2 men tents for clients , Kitchen tent , Dinning tent and toilet tents.<br />
The tour is very much flexible and you can choose the camping site according to your will and you can even cook your own favourite meal and the evening is spent with music and bonfire.<br />
Since as Leh based company no one knows Ladakh better than us and thereby our tour includes all the major attractions and the virgin track also which we explore every year.<br />
The tour is really meant for adventure travel enthusiast’s .So do enjoy the adrenalin rush, in the hidden kingdom of Ladakh. You will remember the rush for your entire lifetime. Such is the magic of Ladakh along with ladakh bike rental.<br />
 <br />
<b.>LIST OF THINGS TO BRING </b.><br />
Here's a list of things to carry for your motorcycle tours in Ladakh. This is designed for a period of 07 days or more. <br />
Pen and a small diary <br />
Torch light(LED flash light/head lamp - with two spare batteries) <br />
Sunglass recommended one <br />
Small water bottle <br />
Chocolates ,mouth freshener, dry fruit etc <br />
Toiletries ,shaving kit <br />
Clothing kit <br />
Hats and caps <br />
Hand gloves waterproof with grip suitable for biking <br />
Rain coat if riding gear is not waterproof <br />
Personal Sleeping bags<br />
Sunscreen lotion UV protection (SPF > 50) and Lip guard <br />
Sleepers <br />
Pain relief spray <br />
Your on - going regular medicines if any <br />
Full face Helmet with new visor.<br />
Riding jacket and pants (if doesn’t have one). Waterproof riding gear or suitable clothing to ride in cold conditions. <br />
Riding boots (if doesn’t have one)any shoes up to ankle length<br />
<br />
<b.>ACCLIMATISATION DETAILS</b.> <br />
The tour is for 7 days, hope you gone through the itinerary in which there is one day for acclimatisation but if you needs more number of days for acclimatisation you have to come to Leh 2 to 3 days before departure date, which cost you extra charges as tour cost structure doesn’t include that one and you have to intimate us in advance.<br />
<br />
<b.>TOUR SUMMARY </b.><br />
Area Ladakh, Nubra and Changthang. <br />
Kilometres Coverd 800 approximately <br />
Duration : 07 Days <br />
Max Altitude : 18380 ft. khardong la pass <br />
Minimum Altitude : 10600 ft Hunder Nubra valley <br />
Riding Grade : Moderate <br />
Number of Passes : 05 (including world 1st,2nd 3rd highest passes) <br />
Lakes : All three high altitude lakes ( Pangong - Tsomori - ri - Tsokar)<br />
Support vehicle and mechanic for whole tour.<br />
Hotel/guest house in Leh and Best quality tents during tours on MAP plan (Breakfast & Dinner)<br />
Camping, wildlife & monument fees.<br />
Airport & station transfer while arrival and departure.<br />
Royal Enfield 500 CC /350 cc<br />
Bike fuel for whole tourAirfare, Travel insurance, personal expenses like staff/Crew Tips, laundry, beverages,lunch,Bike Damage cost in case any , security deposit of Rs.5000/-or phone call etc.<br />
Note: Company shall not be responsible for any kind of accident and problem due to natural hazards like bad weather and road blockage.								</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>  Arrive-Leh
										</p>
										<p class="aj">LADAK<br />
After boarding the early morning flight to Leh (11500 ft)  And by crossing the Great Himalayan mountains  Range you can see the snow covered picks and also can see the stretch of the high altitude dessert below, you are welcomed and received by a  representative of Snow lion Himalaya travel at the Kushok Bakula  airport  terminal and transfer to hotel or guest house. Spent The rest of the day for Acclimatisation to the high altitude of (11500ft) & in the evening a Short walk towards Market, overnight stay at the hotel /guest hose</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 - Nubra (5/6 hrs) via (khardong la)
										</p>
										<p class="aj">NUBRA VALLEY<br />
After Breakfast Lets ride to the north of Ladakh  that is Nubra valley, through the world’s highest motor able road Khardong la pass(18380ft) which is a dream come true to many of the bikers and adventure enthusiast, one can catch a chance of taking a selfies and group photos, on the way down to Nubra valley can see some beautiful landscape and reach Nubra</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> NUBRA - PANGONG via (Shayok)
										</p>
										<p class="aj">CHANGTHANG<br />
Today after the breakfast  we retrace the same route back till Khalsar and turn left towards the worlds famous the Pangong Lake on the way one can take full adventage of the adventures road as you can go up and down and crossing some stream along the Shayok river also on the way to the lake we come across two beautiful village Durbuk and Tangtse and soon we w’ll have the first view of Pangong lake on the way  we can spot some Himalayas Marmots but one is advice not to feed this animals what we eat is not their natural food, but you can take pictures they don’t  mind.</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> PANGONG - SAKTI via (Chang-la)
										</p>
										<p class="aj">CHANGTHANG<br />
<br />
Today we wake up early morning to see the sun rise at the lake,  and to catch the beautiful view of the lake in your camera,  later after a sumptuous breakfast we drive back to Leh through Chang la Pass (17688ft) the third highest  motor able road, we can stop here to have a hot cup of black tea and roll down the off road towards sakti villave  and reached 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> SAKTI - TSOMORIRI via (Chumathang)
										</p>
										<p class="aj">NUBRA VALLEY<br />
After breakfast it’s time to kick start yours bikes . Today our ride goes through the Indus River till up to Mahe Bridge on the way enjoy the appealing villages along the river side, famous hot springs at Chumathang, and beautiful monasteries. By turning to the right we leave the valley to enter the heart of Rupshu, the most isolated part of Ladakh. By taking sandy and rough track with our off riding skill we reach the second most important lake in Ladakh that is Tsomoriri lake (15075 ft). Explore lake, visit Korzok monastery and look out for high altitude wildlife. Overnight camp along lake side.</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> Tsomoriri – Tsokar via (Polokongka La)
										</p>
										<p class="aj">CHANGTHANG<br />
Today after breakfast, our journey starts from Tsomoriri towards Tsokar. Riding back from the same route upto Sumdo village and turning left we’ll reach to a high pass called (Polokongka La, 16207 ft ) after crossing the pass we’ll arrive at a beautiful  lake called TsoKar (14842 ft), one really feel. An awesome blend of stark mountain, gorgeous landscape, occasional sightings of the nomadic people and their herds of yaks & goats are common throughout the route</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> TSOKAR - LEH via (Taklang-la )
										</p>
										<p class="aj">LADAKH<br />
After the breakfast we ride  half an hour  from Tsokar on sand road  soon we found ourselves riding on Manali Leh high way and by griping the same Leh route we’ll reach to the Tanglangla pass, the second highest motorable pass and by taking not much time with photography we’ll roll down towards Leh crossing through many beautiful small villages with awesome scenery and by arriving leh ride ends at  hotel /guest house and celebrate the  last  night 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> Departure
										</p>
										<p class="aj">LADAKH Hope you all had a adventurous  bike trip to the Himalayas and capture some beautiful memories in your mind hope to see you again with some other adventure in the great Himalayas .JULLAY</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>Airfare, Travel insurance, personal expenses like staff/Crew Tips, laundry, beverages,lunch,Bike Damage cost in case any , security deposit of Rs.5000/-or phone call etc.</li><li>
Note: Company shall not be responsible for any kind of accident and problem due to natural hazards like bad weather and road blockage.</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">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. 
* 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.snowlionhimalayatravel.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Ladakh  8 Days & 7 NightsCamps And Rides 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="125774"/>
						</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.snowlionhimalayatravel.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/packages-in-kargil.htm" title="Packages in Kargil">Kargil</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/packages-in-baramulla.htm" title="Packages in Baramulla">Baramulla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/packages-in-ganderbal.htm" title="Packages in Ganderbal">Ganderbal</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.snowlionhimalayatravel.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/road-trip-holidays-catid.htm" title="Road Trip Packages">Road Trip</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.snowlionhimalayatravel.in/adventure-sports-holidays-catid.htm" title="Adventure Sports Packages">Adventure Sports</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.snowlionhimalayatravel.in/tour-packages/explore-zanskar12-days11-nights.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/516946/202347.jpg"  alt="Explore Zanskar 12 Days 11 Nights" title="Explore Zanskar 12 Days 11 Nights"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.snowlionhimalayatravel.in/tour-packages/explore-zanskar12-days11-nights.htm" title="Explore Zanskar 12 Days 11 Nights"><h3>Explore Zanskar 12 Days 11 Nights</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> : 
								11 Nights / 12 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_125771" id="pkg_125771" method="post" action="http://www.snowlionhimalayatravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.snowlionhimalayatravel.in/tour-packages/explore-zanskar12-days11-nights.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Explore Zanskar 12 Days 11 Nights - 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="125771"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.snowlionhimalayatravel.in/tour-packages/4-day-leh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/516946/202338.jpg"  alt="4 Day Leh Tour" title="4 Day Leh Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.snowlionhimalayatravel.in/tour-packages/4-day-leh-tour.htm" title="4 Day Leh Tour"><h3>4 Day Leh 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> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_125768" id="pkg_125768" method="post" action="http://www.snowlionhimalayatravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.snowlionhimalayatravel.in/tour-packages/4-day-leh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="4 Day Leh 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="125768"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.snowlionhimalayatravel.in/tour-packages/leh-manali-bike-tour9-days8-nights.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/516946/202350.jpg"  alt="Leh - Manali Bike Tour 9 Days & 8 Nights" title="Leh - Manali Bike Tour 9 Days & 8 Nights"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.snowlionhimalayatravel.in/tour-packages/leh-manali-bike-tour9-days8-nights.htm" title="Leh - Manali Bike Tour 9 Days & 8 Nights"><h3>Leh - Manali Bike Tour 9 Days & 8 Nights</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> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_125775" id="pkg_125775" method="post" action="http://www.snowlionhimalayatravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.snowlionhimalayatravel.in/tour-packages/leh-manali-bike-tour9-days8-nights.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Leh - Manali Bike Tour 9 Days & 8 Nights - 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="125775"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.snowlionhimalayatravel.in/tour-packages/9-day-ladakh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/516946/202340.jpg"  alt="9 Day Ladakh Tour" title="9 Day Ladakh Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.snowlionhimalayatravel.in/tour-packages/9-day-ladakh-tour.htm" title="9 Day Ladakh Tour"><h3>9 Day 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> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Leh Ladakh</p>
															<div class="mt10px small">
							<form name="pkg_125770" id="pkg_125770" method="post" action="http://www.snowlionhimalayatravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.snowlionhimalayatravel.in/tour-packages/9-day-ladakh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="9 Day 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="125770"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.snowlionhimalayatravel.in/tour-packages/ladakh-tour4n5d.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/516946/201375.jpg"  alt="Ladakh Tour 4N/5D" title="Ladakh Tour 4N/5D"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.snowlionhimalayatravel.in/tour-packages/ladakh-tour4n5d.htm" title="Ladakh Tour 4N/5D"><h3>Ladakh 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_125139" id="pkg_125139" method="post" action="http://www.snowlionhimalayatravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.snowlionhimalayatravel.in/tour-packages/ladakh-tour4n5d.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Ladakh 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="125139"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.snowlionhimalayatravel.in/tour-packages/ladakh-tour7n8d.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/516946/201374.jpg"  alt="Ladakh Tour 7N/8D" title="Ladakh Tour 7N/8D"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.snowlionhimalayatravel.in/tour-packages/ladakh-tour7n8d.htm" title="Ladakh Tour 7N/8D"><h3>Ladakh Tour 7n/8d</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_125138" id="pkg_125138" method="post" action="http://www.snowlionhimalayatravel.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.snowlionhimalayatravel.in/tour-packages/ladakh-tour7n8d.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Ladakh Tour 7N/8D - 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="125138"/>
							</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:85:"Book Ladakh  8 Days & 7 NightsCamps And Rides Tour - 7 Nights / 8 Days Tour Packages";i:2;s:134:"book ladakh  8 days & 7 nightscamps and rides tour - 7 nights / 8 days tour packages, camping tour packages, leh ladakh tour packages";i:3;s:176:"Snow Lion Himalaya Travel offers Ladakh  8 Days & 7 NightsCamps And Rides Tour - 7 Nights / 8 Days tour package, budget Camping tour packages for Leh Ladakh at exciting price.";i:4;s:3573:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Leh Ladakh"        
		                 },
		      "description": "Rider: Rs.34900 - Max 15 rider
Pillion: Rs.19900 - Min 10 rider

<b.>Overview</b.>
The tour includes organised camping in some of the isolated and beautiful valleys. (except Leh where its Hotel/guest house 
The camping includes 2 men tents for clients , Kitchen tent , Dinning tent and toilet tents.
The tour is very much flexible and you can choose the camping site according to your will and you can even cook your own favourite meal and the evening is spent with music and bonfire.
Since as Leh based company no one knows Ladakh better than us and thereby our tour includes all the major attractions and the virgin track also which we explore every year.
The tour is really meant for adventure travel enthusiast’s .So do enjoy the adrenalin rush, in the hidden kingdom of Ladakh. You will remember the rush for your entire lifetime. Such is the magic of Ladakh along with ladakh bike rental.
 
<b.>LIST OF THINGS TO BRING </b.>
Here's a list of things to carry for your motorcycle tours in Ladakh. This is designed for a period of 07 days or more. 
Pen and a small diary 
Torch light(LED flash light/head lamp - with two spare batteries) 
Sunglass recommended one 
Small water bottle 
Chocolates ,mouth freshener, dry fruit etc 
Toiletries ,shaving kit 
Clothing kit 
Hats and caps 
Hand gloves waterproof with grip suitable for biking 
Rain coat if riding gear is not waterproof 
Personal Sleeping bags
Sunscreen lotion UV protection (SPF > 50) and Lip guard 
Sleepers 
Pain relief spray 
Your on - going regular medicines if any 
Full face Helmet with new visor.
Riding jacket and pants (if doesn’t have one). Waterproof riding gear or suitable clothing to ride in cold conditions. 
Riding boots (if doesn’t have one)any shoes up to ankle length

<b.>ACCLIMATISATION DETAILS</b.> 
The tour is for 7 days, hope you gone through the itinerary in which there is one day for acclimatisation but if you needs more number of days for acclimatisation you have to come to Leh 2 to 3 days before departure date, which cost you extra charges as tour cost structure doesn’t include that one and you have to intimate us in advance.

<b.>TOUR SUMMARY </b.>
Area Ladakh, Nubra and Changthang. 
Kilometres Coverd 800 approximately 
Duration : 07 Days 
Max Altitude : 18380 ft. khardong la pass 
Minimum Altitude : 10600 ft Hunder Nubra valley 
Riding Grade : Moderate 
Number of Passes : 05 (including world 1st,2nd 3rd highest passes) 
Lakes : All three high altitude lakes ( Pangong - Tsomori - ri - Tsokar)
Support vehicle and mechanic for whole tour.
Hotel/guest house in Leh and Best quality tents during tours on MAP plan (Breakfast & Dinner)
Camping, wildlife & monument fees.
Airport & station transfer while arrival and departure.
Royal Enfield 500 CC /350 cc
Bike fuel for whole tourAirfare, Travel insurance, personal expenses like staff/Crew Tips, laundry, beverages,lunch,Bike Damage cost in case any , security deposit of Rs.5000/-or phone call etc.
Note: Company shall not be responsible for any kind of accident and problem due to natural hazards like bad weather and road blockage.",
		      "name": "Ladakh  8 Days & 7 NightsCamps And Rides Tour",
		      "telephone": "+91-9906977654"
		    }
		    </script>
			";i:5;N;}