a:6:{i:0;s:46565:"				<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>Manali-leh Cycling Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.kshatraadventure.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.kshatraadventure.co.in/travel-packages.htm" title="Travel Packages">Travel Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Manali-leh Cycling Tour</p> 
										<div class="fo dt w100"> 
					<div class="dtc vat ttw-detail pr20px pr">					
												<ul class="lsn gallery-slide" id="bxlider_ins">
																	<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274906.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274906.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274906.jpg"  alt="Manali-leh Cycling Tour" title="Manali-leh Cycling Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/267698.jpeg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/267698.jpeg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/267698.jpeg"  alt="Manali-leh Cycling Tour" title="Manali-leh Cycling Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274907.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274907.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274907.jpg"  alt="Manali-leh Cycling Tour" title="Manali-leh Cycling Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																	</ul>
							
							<ul class="lsn" id="bxslider-pager"><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274906.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/267698.jpeg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274907.jpg"></a></li></ul>					
					<script>
					var $j = jQuery.noConflict();
					var realSlider= $j("ul#bxlider_ins").bxSlider({
					      speed:500,
					      pager:false,
					      auto: true,
					      slideWidth: 450,
					      slideMargin: 0,
					      nextText:'',
					      prevText:'',
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					        changeRealThumb(realThumbSlider,newIndex);
					        
					      }
					      
					    });
					    
					    var realThumbSlider=$j("ul#bxslider-pager").bxSlider({
					      minSlides: 4,
					      maxSlides: 4,
					      slideWidth: 200,
					      slideMargin: 5,
					      moveSlides: 1,
					      pager:false,
					      speed:1000,
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      nextText:'<span></span>',
					      prevText:'<span></span>',
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					
					      }
					    });
					    
					    linkRealSliders(realSlider,realThumbSlider);
					    
					    if($j("#bxslider-pager li").length<5){
					      $j("#bxslider-pager .bx-next").hide();
					    }
					
					// sincronizza sliders realizzazioni
					function linkRealSliders(bigS,thumbS){
					  
					  $j("ul#bxslider-pager").on("click","a",function(event){
					    event.preventDefault();
					    var newIndex=$j(this).parent().attr("data-slideIndex");
					        bigS.goToSlide(newIndex);
					  });
					}
					
					//slider!=$thumbSlider. slider is the realslider
					function changeRealThumb(slider,newIndex){
					  
					  var $thumbS=$j("#bxslider-pager");
					  $thumbS.find('.active').removeClass("active");
					  $thumbS.find('li[data-slideIndex="'+newIndex+'"]').addClass("active");
					  
					  if(slider.getSlideCount()-newIndex>=4)slider.goToSlide(newIndex);
					  else slider.goToSlide(slider.getSlideCount()-4);
					
					}
					
					</script>
					</div>
			        <div class="dtc">
			        <p class="b xlarge mb10px">Manali-leh Cycling Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						11 Nights / 12 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Manali, Pachmarhi, Leh Ladakh, Jispa</p>
												<p class="mb5px"><b>Attractions :</b> Pachmarhi Hills</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px">Price</p>
						<p class="xxsmall">On Request</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Manali-leh Cycling Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px ts0 xxlarge dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="178453"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Our Manali – Leh cycling tour is one of our most difficult mountain bike tours in the world. This extreme cycling tour takes you to the very heart of the Himalayas where you will discover some of the finest cycling the world has to offer. The Manali-Leh cycling tour is one of the most scenic, challenging and popular mountain biking routes. You cover 550 km over 12 days going past many high passes – Rohtang (3900 m), Baralacha La (4800 m), NakeeLa (4900 m), Lachung La (5050 m), Tanglang La (5260 m and the world’s second highest motorable road). The road is a mix of tarmac and unmetalled roads. Once you cross into Lahaul valley from Manali, you go past picturesque villages. Hoever, after Darcha, it’s all wild country with no permanent villages till you cross Tanglang La closer to Leh. On the Manali-Leh cycling route the only settlements you will come across are doksas or make-shift bed-and-breakfasts that have come up for the season. From alpine forests and meadows in Manali through deep valleys in Lahaul, and vast plains at Sarchu, you enter Ladakh, a land that offers every hue of orange, red, brown and ochre. Along the way your challenges include searing hot days, freezing nights and most importantly, high altitude. <br />
<br />
<br />
Reaching Manali<br />
By Road : There are Lots of Buses that operate between Both Delhi and Manali. You can book private buses on htttp://www.redbus.in or Himachal Pradesh Tourism operates buses that start at 4:30 in the evening from Janpath and reach Manali the next morning you can book HPTDC tickets here http://hptdc.nic.in/bus.htm<br />
By Air : Indian Airlines operates flights everyday between Delhi and Kullu.<br />
<br />
Getting out of Leh:<br />
By Air : Leh is well connected to Delhi and a number of operators fly this sector.<br />
By Road : you can travel to Manali or Srinagar from Leh and then onwards to Delhi. Many buses operate on both the sectors.Any expenses of personal nature, tips, phone etc.<br />
<br />
Any Insurance.<br />
<br />
Stay and food in Manali, and Leh.<br />
<br />
Mountain bike. (You will need to get your own bikes or you can buy a new bike from us and the bike is yours after the trip.)<br />
<br />
Bike repair kit (Participants are expected to carry their own punture kit, spare tubes (2 will be good) and a multi purpose repair tool.</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Arrive in Manali.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Spend the Morning At Your Pace Soaking in the Surroundings in the Afternoon Our Local Guide Will Lead a Walking Tour Around Manali and Surrounding Villages. Manali Nestles At the Head of a Lush Green Valley, On the Banks of the Beas River. Both the Dhauladhar and the Pir Panjal Himalayan Ranges Meet Above Manali. Towering Two Miles Above Us to the North of the Town We Can See Many 6o00 Metre Snowy Peaks Beneath Which We are Going to Be Cycling Soon.															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Manali – Marhi (3312 M) (40 Kms)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today is Our First Climb as We Begin to “warm Up” for the Tough Ride Ahead. Cycling Out of Manali Through An Evergreen Area of Pine and Deodar Trees We Tackle the First Set of Many Hairpin Bends and Switchbacks On the Way to the Rohtang Pass. There are also Many Apple Orchards and Small Hamlets Along the Route. As We Ascend Higher We See Many Waterfalls Tumble Down Surrounding Mountain Sides.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Marhi – Sissu (3120 M) (45 Kms).										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												We Start the Day By Continuing Along the 12km Ascent to Rohtang Pass (3900 M) (the Pass of Souls). In the Old Days of the Silk Route When Caravans Used to Travel; Rohtang Used to Be One of the Most Feared of Pass Because of Its Freak Thunder Storms and High Winds Many People Used to Die Enroute Hence the Nickname Pass of Souls. On a Clear Day, There are Some Lovely Scenic Views On the Horizon of Snow Covered Peaks and Glaciers. As We Cross the Pass, We Leave the Lush Green Scenery Behind and Continue Our Descent to Gramphu. From Here We Will Travel Along Some Unmarked Stretches of Flat Road as We Cross the Raging Torrent of the River Chandra At Khoksar. We Continue with a Short and Easy Ride to Sissu. From Our Campsite After Some Chai and Snacks in the Evening You Can Choose to Walk to the Sissu Falls Which is a Spectacular Place.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Sissu – Jispa (3350 M) (53 Kms).										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												We Set Off with a Short Ride to Gondla and Then Onwards to Keylong Passing Through Mountain Streams that Flow Over the Road. Today is a Relatively Easy Day of Cycling. You Will Notice that the Terrain is Becoming Much More Arid as We Negotiate the Rutty, Dusty and Rocky Road. Our Route Undulates Into the Hamlet of Jispa Where We End the Day On the Bikes.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Jispa – Zing Zing Bar (4020 M) (38 Kms).										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												As We Leave Jispa We Come Out of a Gorge and Ride Downhill. We First Cross the Police Check Post At Darcha a Small Settlement Set At the Intersection of the Barai Nulla and the Bhaga River. From Here Our Ascent to Patseo Begins. As We Cross Patseo We Begin to Get a Sense of the Remoteness of the Area, with Just a Few Sheep Dotted Here and There. The Landscape Becomes More Wind Swept and Arid as We Continue Riding We have Entered the Land of the Lamas. On the Horizon You Can See the Bleak, Awesome Spectacle of the Higher Himalayan Ranges. From Patseo We Continue Our Climb for a Further 10km to Zing Zing Bar Which is also the Base of Baralacha La Pass.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 6											
											:</b> Padseo – Sarchu (4255 m) (54 Kms)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												It is a Long and Hard Climb to the Baralacha La Pass (4810 M) Today. However the Tough Riding is Rich in Its Rewards as We Travel Through Wild Scenic Country with High Mountains On Either Side this is the Barren Trans Himalayan Region Where You Will also Feel the Pressure On Your Lungs as You Pedal On. The Pass Itself is Arid with No Vegetation, the Mountainside Resembles a Quarry, Covered with Slate, Loose Rocks and Gravel. Descending Into the Gorge On the other Side also Known as the Yunan Valley We Reach Bharatpur Where We Get a Tea Break At One of the Many Make Shift Hotels that Come Up in Seasons. Continuing On We Cross Mountain Rivers En Route to Our Destination Sarchu. Tonight You Can Relish the Magnificent Surroundings from Our Campsite. On a Clear Evening the Sunsets At Sarchu are Magnificent.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 7											
											:</b> Sarchu – Wishkey Nulla (4750 M) (54 Kms).										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												The Day Starts with Some Easy Cycling But We Soon Head Into the Twenty-one Zigzag Gata Loops Up the Canyon Wall. This is Only the First Stage Once, the Ghata Loops End We Find Ourself in a Zone Which is Super Arid and Windswept Every Pedal from Here is Is One Hell of An Effort. The Climb to the Pass Nakeela is Super Long But Once We Reach the Summit of the Nakeela Pass (4900 M) Its An Easy Downhill to Whisky Nullah Where Hot Chai and Pakora Await. Today is Probably One of the Hardest Days of the Ride But the Day is also Richly Rewarded with Some Beautiful Trans Himalayan Scenery. Look Out for Bharals (blue Sheep) Lazing Just Before the Nakeela Pass.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 8											
											:</b> Wishkey Nulla – Tso Kar Lake (4550 M) (75 Kms).										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												We Begin Today Ascending the Second Highest Pass On the Manali-leh Highway Up the Lachalang La (5050 M) . The Road Here is Likely to Be the Roughest of the Trip with a Distinct Lack of Tarmac, It’s Very Gravelly and There are Many Loose Stones. We have a Long Descent to Pang Down a Steep Sided Gorge Followed By An 8km Switchback Climb Before Reaching the Flat Top of the Moray Plains Which is also the Entry Into the Chang Thang Reagion. This Barren Area is Known for Its Extreme Temperatures in the Morning and Evening, Fast Winds and Sandstorms. The Only Sign of Life is the Hardy Nomadic Changpas Who Can Be Seen Tending Their Yaks in this Most Desolate of Places. We Continue Across the Plane to Tso Kar Salt Lake. Our Camp is Near the Shores of the Lake.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 9											
											:</b> Tso Kar Lake – Lato (3600 M) (68 Kms).										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today is a Challenge Indeed, as We Head Up the World’s Second Highest Motorable Pass, the Tanglang La At 5,260m. A Tough Day But Truly Satisfying When You Reach the Top. We Set Off Again Down the Exhilarating 1,200m Descent of Switchbacks to the Village of Rumtse. We Beginn to See Tiny Villages as We Start Entering Into More Populated and Fertile Terrain. The Air Feels Warmer as We Cycle On to the Village of Lato.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 10											
											:</b> Lato – Leh ( 3400 m) ( 71 Kms)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today We Continue Downhill and Head to Upshi, the Scenery Changes Dramatically; as We Enter the Fertile Indus Valley the Area is Irrigated By the River and is Dotted with Pretty Villages and Spectacular Stupas. The Awesome Multi-hued Mountains Around Us Add to the Beauty and Richness of Our Environment. Crossing the Indus River the Road Improves as We Head Towards Leh. This is An Easy Stretch, We Pass the Shey Palace, Thiksey Monastery and the Chortens Gardens En Route Leh.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 11											
											:</b> In Leh.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Taking a rest from the bikes today we have the chance to wander around the twisting narrow streets of Leh. A popular tourist destination, there are many cafes and sites of historical interest to explore such as Leh Palace or the Sakar Gompa monastery and the Shanti Stupa. Leh used to be a popular trading site during the early days of the Silk route with caravans coming all the way from as far as Turkey.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 12											
											:</b> Leh – Khardungla (79 Kms) and Return to Leh.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												We Will Set of for the Khardung – La Pass At Daybreak. Cycling Thirty Nine Kilometers and Gaining 2,000m, this is the Ultimate Challenge of the Trip. It is the Highest Motorable Road in the World Taking You to a Dizzy 5,600m! the View from the Top is Spectacular, Stretching from the Indus Valley in the South Over the Endless Peaks and Ridges of the Zanskar Range to the Giants of the Saser Massif in the North. You Can Feel Proud of a True Achievement as You Finish the Trip with Your Final Thrilling Descent.			
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Meals</li>
																						<li>Sightseeing</li>
																						<li>EP (No Meal)</li>
																				<li>Tents, Sleeping bags, Carry mats and Mess Tent.</li><li>
Nutritious, high calorie food will be served.</li><li>
Guide, cook and camp helpers.</li><li>
One Logistics Vehicle (Tempo Traveller) to carry all our equipment.</li><li>
You will only have to carry your personal knapsack containing water bottle, camera and trail layers.</li><li>
Tent on double occupancy.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Any expenses of personal nature, tips, phone etc.</li><li>
Any Insurance.</li><li>
Stay and food in Manali, and Leh.</li><li>
Mountain bike. (You will need to get your own bikes or you can buy a new bike from us and the bike is yours after the trip.)</li><li>
Bike repair kit (Participants are expected to carry their own punture kit, spare tubes (2 will be good) and a multi purpose repair tool.</li></ul>
								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Manali-leh Cycling 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="178453"/>
						</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.kshatraadventure.co.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(18)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-manikaran.htm" title="Packages in Manikaran">Manikaran</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-panchmarhi.htm" title="Packages in Pachmarhi">Pachmarhi</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-nalagarh.htm" title="Packages in Nalagarh">Nalagarh</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-lahaul-spiti.htm" title="Packages in Lahaul & Spiti">Lahaul & Spiti</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-narkanda.htm" title="Packages in Narkanda">Narkanda</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-naggar.htm" title="Packages in Naggar">Naggar</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-kaza.htm" title="Packages in Kaza">Kaza</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-ambala.htm" title="Packages in Ambala">Ambala</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-jammu.htm" title="Packages in Jammu">Jammu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-mandi.htm" title="Packages in Mandi">Mandi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.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="https://www.kshatraadventure.co.in/packages-in-jispa.htm" title="Packages in Jispa">Jispa</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-palampur.htm" title="Packages in Palampur">Palampur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/packages-in-batala.htm" title="Packages in Batala">Batala</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.kshatraadventure.co.in/packages-in-mokokchung.htm" title="Packages in Mokokchung">Mokokchung</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.kshatraadventure.co.in/packages-in-parwanoo.htm" title="Packages in Parwanoo">Parwanoo</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.kshatraadventure.co.in/packages-in-tawang.htm" title="Packages in Tawang">Tawang</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.kshatraadventure.co.in/packages-in-kisumu.htm" title="Packages in Kisumu">Kisumu</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.kshatraadventure.co.in/packages-in-digboi.htm" title="Packages in Digboi">Digboi</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.kshatraadventure.co.in/packages-in-solan.htm" title="Packages in Solan">Solan</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.kshatraadventure.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(19)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(19)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/luxury-holidays-catid.htm" title="Luxury Packages">Luxury</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/bird-watching-holidays-catid.htm" title="Birdwatching Packages">Birdwatching</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/abseiling-holidays-catid.htm" title="Abseiling Packages">Abseiling</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.kshatraadventure.co.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.kshatraadventure.co.in/river-rafting-holidays-catid.htm" title="River Rafting Packages">River Rafting</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>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Manali, Pachmarhi, Leh Ladakh, Jispa</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='https://www.kshatraadventure.co.in/tour-packages/sara-umga-pass-trek-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274876.jpg"  alt="Sara Umga Pass Trek Tour" title="Sara Umga Pass Trek Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.kshatraadventure.co.in/tour-packages/sara-umga-pass-trek-tour.htm" title="Sara Umga Pass Trek Tour"><h3>Sara Umga Pass Trek 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> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Manali, Manikaran, Naggar, Nalagarh, Nar..</p>
															<div class="mt10px small">
							<form name="pkg_181612" id="pkg_181612" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.kshatraadventure.co.in/tour-packages/sara-umga-pass-trek-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Sara Umga Pass Trek 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="181612"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.kshatraadventure.co.in/tour-packages/hampta-pass-trek-tour5-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274887.jpeg"  alt="Hampta Pass Trek Tour 5 Days" title="Hampta Pass Trek Tour 5 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.kshatraadventure.co.in/tour-packages/hampta-pass-trek-tour5-days.htm" title="Hampta Pass Trek Tour 5 Days"><h3>Hampta Pass Trek Tour 5 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> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Manali, Mandi, Manikaran, Naggar, Nalaga..</p>
															<div class="mt10px small">
							<form name="pkg_181618" id="pkg_181618" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.kshatraadventure.co.in/tour-packages/hampta-pass-trek-tour5-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Hampta Pass Trek Tour 5 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="181618"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.kshatraadventure.co.in/tour-packages/parangla-pass-trek-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274885.jpg"  alt="Parangla Pass Trek Tour" title="Parangla Pass Trek Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.kshatraadventure.co.in/tour-packages/parangla-pass-trek-tour.htm" title="Parangla Pass Trek Tour"><h3>Parangla Pass Trek 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> : 
								16 Nights / 17 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Manali, Leh Ladakh, Kaza, Dig..</p>
															<div class="mt10px small">
							<form name="pkg_181616" id="pkg_181616" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.kshatraadventure.co.in/tour-packages/parangla-pass-trek-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Parangla Pass Trek 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="181616"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.kshatraadventure.co.in/tour-packages/upto-the-origenof-river-tirthan-ghnp-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274915.jpg"  alt="Up to the Origen of River Tirthan Ghnp Tour" title="Up to the Origen of River Tirthan Ghnp Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.kshatraadventure.co.in/tour-packages/upto-the-origenof-river-tirthan-ghnp-tour.htm" title="Up to the Origen of River Tirthan Ghnp Tour"><h3>Up To The Origen Of River Tirthan Ghnp Tou..</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> :  Manali</p>
															<div class="mt10px small">
							<form name="pkg_178571" id="pkg_178571" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.kshatraadventure.co.in/tour-packages/upto-the-origenof-river-tirthan-ghnp-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Up to the Origen of River Tirthan Ghnp 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="178571"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.kshatraadventure.co.in/tour-packages/bhrigu-lake-trek-tour4-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274894.jpg"  alt="Bhrigu Lake Trek Tour 4 Days" title="Bhrigu Lake Trek Tour 4 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.kshatraadventure.co.in/tour-packages/bhrigu-lake-trek-tour4-days.htm" title="Bhrigu Lake Trek Tour 4 Days"><h3>Bhrigu Lake Trek 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> :  Manali, Mandi, Manikaran</p>
															<div class="mt10px small">
							<form name="pkg_181620" id="pkg_181620" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.kshatraadventure.co.in/tour-packages/bhrigu-lake-trek-tour4-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Bhrigu Lake Trek 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="181620"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.kshatraadventure.co.in/tour-packages/pin-bhaba-pass-trek-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/535668/274884.jpg"  alt="Pin Bhaba Pass Trek Tour" title="Pin Bhaba Pass Trek Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.kshatraadventure.co.in/tour-packages/pin-bhaba-pass-trek-tour.htm" title="Pin Bhaba Pass Trek Tour"><h3>Pin Bhaba Pass Trek 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> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Manali, Shimla, Solan, Parwanoo</p>
															<div class="mt10px small">
							<form name="pkg_181615" id="pkg_181615" method="post" action="https://www.kshatraadventure.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.kshatraadventure.co.in/tour-packages/pin-bhaba-pass-trek-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Pin Bhaba Pass Trek 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="181615"/>
							</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:64:"Book Manali-leh Cycling Tour - 11 Nights / 12 Days Tour Packages";i:2;s:132:"book manali-leh cycling tour - 11 nights / 12 days tour packages,  tour packages, manali, pachmarhi, leh ladakh, jispa tour packages";i:3;s:166:"Kshatra Adventure offers Manali-leh Cycling Tour - 11 Nights / 12 Days tour package, budget  tour packages for Manali, Pachmarhi, Leh Ladakh, Jispa at exciting price.";i:4;s:2691:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Manali, Pachmarhi, Leh Ladakh, Jispa"        
		                 },
		      "description": "Our Manali – Leh cycling tour is one of our most difficult mountain bike tours in the world. This extreme cycling tour takes you to the very heart of the Himalayas where you will discover some of the finest cycling the world has to offer. The Manali-Leh cycling tour is one of the most scenic, challenging and popular mountain biking routes. You cover 550 km over 12 days going past many high passes – Rohtang (3900 m), Baralacha La (4800 m), NakeeLa (4900 m), Lachung La (5050 m), Tanglang La (5260 m and the world’s second highest motorable road). The road is a mix of tarmac and unmetalled roads. Once you cross into Lahaul valley from Manali, you go past picturesque villages. Hoever, after Darcha, it’s all wild country with no permanent villages till you cross Tanglang La closer to Leh. On the Manali-Leh cycling route the only settlements you will come across are doksas or make-shift bed-and-breakfasts that have come up for the season. From alpine forests and meadows in Manali through deep valleys in Lahaul, and vast plains at Sarchu, you enter Ladakh, a land that offers every hue of orange, red, brown and ochre. Along the way your challenges include searing hot days, freezing nights and most importantly, high altitude. 


Reaching Manali
By Road : There are Lots of Buses that operate between Both Delhi and Manali. You can book private buses on htttp://www.redbus.in or Himachal Pradesh Tourism operates buses that start at 4:30 in the evening from Janpath and reach Manali the next morning you can book HPTDC tickets here http://hptdc.nic.in/bus.htm
By Air : Indian Airlines operates flights everyday between Delhi and Kullu.

Getting out of Leh:
By Air : Leh is well connected to Delhi and a number of operators fly this sector.
By Road : you can travel to Manali or Srinagar from Leh and then onwards to Delhi. Many buses operate on both the sectors.Any expenses of personal nature, tips, phone etc.

Any Insurance.

Stay and food in Manali, and Leh.

Mountain bike. (You will need to get your own bikes or you can buy a new bike from us and the bike is yours after the trip.)

Bike repair kit (Participants are expected to carry their own punture kit, spare tubes (2 will be good) and a multi purpose repair tool.",
		      "name": "Manali-leh Cycling Tour",
		      "telephone": "+91-9816177077"
		    }
		    </script>
			";i:5;N;}