a:6:{i:0;s:34366:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Trekking In Kuari Pass Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.himalayancove.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.himalayancove.com/tour-packages.htm" title="Packages">Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Trekking In Kuari Pass Tour</p>
						</div>
						</div>
						</section>
										<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="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/533222/242784.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242784.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242784.jpg"  alt="Trekking in Kuari Pass Tour" title="Trekking in Kuari Pass Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</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">Trekking in Kuari Pass Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Joshimath, Rishikesh, Auli</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="http://www.himalayancove.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Trekking in Kuari Pass 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="158502"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Region<br />
<br />
: Chamoli district - Uttarakhand<br />
<br />
Duration<br />
<br />
: 6 Days<br />
<br />
Level<br />
<br />
: Moderate<br />
<br />
Trekking distance<br />
<br />
: 33 Kms<br />
<br />
Max Altitude<br />
<br />
: 3890 Meters<br />
<br />
Pickup Point<br />
<br />
: Rishikesh<br />
<br />
Drop Point<br />
<br />
: Rishikesh<br />
<br />
Best Season<br />
<br />
: all weather expect monsoon<br />
<br />
Kuari pass is situated in Chamoli district of Uttarakhand at an altitude of 3890 meters above sea level in the Nanda Devi Sanctuary. Kuari pass connect two valleys of Uttarakhand, Joshimath & Ghat. In 1905 Lord Kurzon made the trek to Kuari pass from Ghat via Ramni since then it has come to be known as Lord Curzon’s trail. Kauri Pass takes you through lush green fields, remote villages, virgin forests and snow-clad mountains of the Himalayan range. The virgin forest of oak and conifer, bamboo and birch, teeming with a variety of animals and birds make this trek more memorable.<br />
<br />
The main attraction of Curzon's trails is the majestic view of the peaks Nanda Devi (7817 M), Kamet (7756 M), Mana (7272m) Trishul (7120m), Chaukhamba (7128m),  Dronagiri (7066 M), Hathi Parvat (6727 M) and Ghori Pravat (6709 M).<br />
<br />
<br />
Kuwari pass is situated in Chamoli district of Uttarakhand at an altitude of 3890 meters above sea level in the Nanda Devi Sanctuary . Kuwari pass connect two valley of Uttarakhand Joshimath & Ghat, Winter Kuari pass trek is famous for offering view of some majestic peaks of Himalayas Nanda Devi (7817 M), Kamet (7756 M), Dronagiri (7066 M), Hathi Parvat (6727 M) & Ghori Pravat (6709 M).This trek is also known as Lord Curzon Trail, because Lord Curzon discovered this trail in 1905, after that trekkers continuously visit this trek every year.</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> Starting Point to Joshimath /auli ( 274kms, 9 Hrs )										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Morning reach to Haridwar or Rishikesh, our representative will be waiting for you. Head towards Joshimath, breakfast & lunch on the way. we enjoy motor able way passes through many well know places which are famous for its beautiful view as well as religious places like Rishikesh, Devprayag. Srinagar, Dhari Devi, Rudraprayag, Karnaprayag, Chamoli, Joshimath, & Vishnuprayag, Confluences of rivers, Alaknanda & Bhagirathi in Devprayag, Alaknanda & Mandakini in Rudraprayag, Pinder and Alaknanda in Karanaprayag, so it’s a long journey today but full of scenic beauty, Cultural Villages, Hills & Mountains view. We will reach Joshimath in evening, Night stay in Hotel or guest house.															
														   
											</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> Auli to Garson Bugyal (4.5 kms trek)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Morning tea & breakfast in beautiful litigants of Auli & start trek to Garson Bugyal, short trek today because we need environment adaptation, it will take around 4-5 hours to reach. Surrounding view of Garson Bugyal is amazing, overnight stay in camp in Garson Bugyal.			
														   
											</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> Garson Bugyal to Tali Top (8 Kms Trek)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast start our trek to Tali Top, takes 6 hours to reach, on the way view of Joshimath valley & snow capped mountain range which will encourage us to go forward. Evening tea & snacks on beautiful Tali Top. Overnight stay in Camp.			
														   
											</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> Tali Top to Kauri Pass and Back to Khulara (16 Kms Trek)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Early tea & breakfast depart to last point of our trek Kuwari pass. Sunrise view in the morning on snow covered peaks which lying golden color of peaks, adding beauty of this trek. We will have packed lunch in Kuwari Pass, click some memorable picture of snow covered Mountains- Nanda Devi , Kamet, Dronagiri, Hathi Parvat & Ghori Pravat & valley, this trek offers best view of Nanda Devi. After exploring Kuwari Pass we will back to Khulara. Dinner & overnight stay in Khulara.			
														   
											</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> Khulara to Tapovan ( 12 Kms Trek ) – Joshimath (15 Km Drive)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today last day of trekking passes through dense forest of various trees, water streams, remote villages & shepherd huts, takes around 5 hours to reach Tapovan, near Tapovan we will see source hot water which is quite amazing. Joshimath is 15 km drive from here. Overnight stay in Joshimath.			
														   
											</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> Joshimath to Rishikesh (250 Kms, 10 Hrs)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Drive to Rishikesh via many beautiful places & rivers of Uttarakhand, road will pass side by side of the Alaknanda river up to Devprayag, see Confluence of Alaknanda & Bhagirathi which formed the holy river Ganga, reach Rishikesh by evening.			
														   
											</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>Hotel</li>
																			</ul>
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<ul>
	<li>Trekking, Tour and adventure actives in Himalayan region carry an inherent risk to life and goods. The natural calamities may cause injury and loss of life, which is beyond any control. Himalayas Adventure does its best to minimize all types of risks, discomfort and hazard to the best of their ability, yet there are chances of accidents, mishaps and deficiency in service.</li>
</ul>

<p><strong>Advisory:</strong>

<ul>
	<li>Any delay from the customer&rsquo;s side will lead to cancellation of trek/ tour/ adventure activities.</li>
	<li>Trekking maybe cancelled due to some unavoidable circumstances i.e- weather condition, govt. notification, land sliding or any other natural calamity.</li>
	<li>Himalayas Adventure reserves the right to discontinue, modify any trek, tour &amp; adventure activities without assigning any reasons or without any prior intimation whatsoever.</li>
	<li>Anybody found to be under the influence of alcohol or drugs medically or physically unfit (any serious ailment, weak heart conditions, epilepsy, asthma, expecting mothers etc.) unfit for any reasons in the wisdom of the trek leader/guide/instructor will not be allowed for trekking /tour/ adventure activities. Request for a refund or a discount in such situation will not be entertained. Decision of the trek lead/guide/management in this regard would be final.</li>
	<li>Total decided package cost will not be affected if there is any reduction in the number of persons</li>
	<li>Minimum required 50% of amount to get confirmed the trek/tour/adventure activities.</li>
</ul>

<p><strong>Cancellation Policy</strong>

<ul>
	<li>If cancellations are made 30 days before the start date of the trip, 25% of total tour cost will be charged as cancellation fees.</li>
	<li>If cancellations are made 10-30 days before the start date of the trip, 50% of total tour cost will be charged as cancellation fees.</li>
	<li>If cancellations are made within 0-10 days before the start date of the trip, 75% of total tour cost will be charged as cancellation fees.</li>
	<li>In case of unforeseen weather conditions or government restrictions, certain activities may be cancelled and in such cases, we will try our best to provide an alternate feasible activity. However no refund will be provided for the same.</li>
</ul>

<p><strong>Refund Policy</strong>

<ul>
	<li>The applicable refund amount will be processed within 10 business days or can be adjusted in other trek or adventure activities.</li>
</ul>								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.himalayancove.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Trekking in Kuari Pass 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="158502"/>
						</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.himalayancove.com/packages-in-rishikesh.htm" title="Packages in Rishikesh">Rishikesh</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-joshimath.htm" title="Packages in Joshimath">Joshimath</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-auli.htm" title="Packages in Auli">Auli</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-haridwar.htm" title="Packages in Haridwar">Haridwar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-corbett.htm" title="Packages in Corbett">Corbett</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-hemkunt-sahib.htm" title="Packages in Hemkund Sahib">Hemkund Sahib</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-nainital.htm" title="Packages in Nainital">Nainital</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-ghangaria.htm" title="Packages in Ghangaria">Ghangaria</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/packages-in-dehradun.htm" title="Packages in Dehradun">Dehradun</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.himalayancove.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/family-holidays-catid.htm" title="Family Packages">Family</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.himalayancove.com/romantic-holidays-catid.htm" title="Romantic Packages">Romantic</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.himalayancove.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</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 Joshimath, Rishikesh, Auli</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.himalayancove.com/tour-packages/swiss-camping-rishikesh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/298809.JPG"  alt="Swiss Camping Rishikesh Tour" title="Swiss Camping Rishikesh Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.himalayancove.com/tour-packages/swiss-camping-rishikesh-tour.htm" title="Swiss Camping Rishikesh Tour"><h3>Swiss Camping Rishikesh 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> : 
								1 Day 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_190194" id="pkg_190194" method="post" action="http://www.himalayancove.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.himalayancove.com/tour-packages/swiss-camping-rishikesh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Swiss Camping Rishikesh 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="190194"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.himalayancove.com/tour-packages/windsor-cottages-lansdowne-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/298804.jpg"  alt="Windsor Cottages Lansdowne Tour" title="Windsor Cottages Lansdowne Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.himalayancove.com/tour-packages/windsor-cottages-lansdowne-tour.htm" title="Windsor Cottages Lansdowne Tour"><h3>Windsor Cottages Lansdowne 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> : 
								1 Day 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_190193" id="pkg_190193" method="post" action="http://www.himalayancove.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.himalayancove.com/tour-packages/windsor-cottages-lansdowne-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Windsor Cottages Lansdowne 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="190193"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.himalayancove.com/tour-packages/haridwar-rishikesh-with-auli-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242747.jpg"  alt="Haridwar Rishikesh with Auli Tour" title="Haridwar Rishikesh with Auli Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.himalayancove.com/tour-packages/haridwar-rishikesh-with-auli-tour.htm" title="Haridwar Rishikesh with Auli Tour"><h3>Haridwar Rishikesh With Auli Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Joshimath, Rishikesh, Auli</p>
															<div class="mt10px small">
							<form name="pkg_158465" id="pkg_158465" method="post" action="http://www.himalayancove.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.himalayancove.com/tour-packages/haridwar-rishikesh-with-auli-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Haridwar Rishikesh with Auli 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="158465"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.himalayancove.com/tour-packages/chopta-chandrashila-deoria-tal-trek-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242772.jpg"  alt="Chopta - Chandrashila - Deoria Tal Trek Tour" title="Chopta - Chandrashila - Deoria Tal Trek Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.himalayancove.com/tour-packages/chopta-chandrashila-deoria-tal-trek-tour.htm" title="Chopta - Chandrashila - Deoria Tal Trek Tour"><h3>Chopta - Chandrashila - Deoria Tal Trek To..</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> :  Haridwar, Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_158490" id="pkg_158490" method="post" action="http://www.himalayancove.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.himalayancove.com/tour-packages/chopta-chandrashila-deoria-tal-trek-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Chopta - Chandrashila - Deoria Tal 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="158490"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.himalayancove.com/tour-packages/trekkingin-valleyof-flowers-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242806.jpg"  alt="Trekking in Valley of Flowers Tour" title="Trekking in Valley of Flowers Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.himalayancove.com/tour-packages/trekkingin-valleyof-flowers-tour.htm" title="Trekking in Valley of Flowers Tour"><h3>Trekking In Valley Of Flowers 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> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Haridwar, Joshimath, Rishikesh, Hemkund ..</p>
															<div class="mt10px small">
							<form name="pkg_158522" id="pkg_158522" method="post" action="http://www.himalayancove.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.himalayancove.com/tour-packages/trekkingin-valleyof-flowers-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Trekking in Valley of Flowers 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="158522"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.himalayancove.com/tour-packages/trekkingin-rishikesh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242769.jpg"  alt="Trekking in Rishikesh Tour" title="Trekking in Rishikesh Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.himalayancove.com/tour-packages/trekkingin-rishikesh-tour.htm" title="Trekking in Rishikesh Tour"><h3>Trekking In Rishikesh 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> : 
								2 Nights / 3 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_158487" id="pkg_158487" method="post" action="http://www.himalayancove.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.himalayancove.com/tour-packages/trekkingin-rishikesh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Trekking in Rishikesh 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="158487"/>
							</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:66:"Book Trekking in Kuari Pass Tour - 5 Nights / 6 Days Tour Packages";i:2;s:136:"book trekking in kuari pass tour - 5 nights / 6 days tour packages, hill station tour packages, joshimath, rishikesh, auli tour packages";i:3;s:167:"Himalayan Cove offers Trekking in Kuari Pass Tour - 5 Nights / 6 Days tour package, budget Hill Station tour packages for Joshimath, Rishikesh, Auli at exciting price.";i:4;s:2061:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Joshimath, Rishikesh, Auli"        
		                 },
		      "description": "Region

: Chamoli district - Uttarakhand

Duration

: 6 Days

Level

: Moderate

Trekking distance

: 33 Kms

Max Altitude

: 3890 Meters

Pickup Point

: Rishikesh

Drop Point

: Rishikesh

Best Season

: all weather expect monsoon

Kuari pass is situated in Chamoli district of Uttarakhand at an altitude of 3890 meters above sea level in the Nanda Devi Sanctuary. Kuari pass connect two valleys of Uttarakhand, Joshimath & Ghat. In 1905 Lord Kurzon made the trek to Kuari pass from Ghat via Ramni since then it has come to be known as Lord Curzon’s trail. Kauri Pass takes you through lush green fields, remote villages, virgin forests and snow-clad mountains of the Himalayan range. The virgin forest of oak and conifer, bamboo and birch, teeming with a variety of animals and birds make this trek more memorable.

The main attraction of Curzon's trails is the majestic view of the peaks Nanda Devi (7817 M), Kamet (7756 M), Mana (7272m) Trishul (7120m), Chaukhamba (7128m),  Dronagiri (7066 M), Hathi Parvat (6727 M) and Ghori Pravat (6709 M).


Kuwari pass is situated in Chamoli district of Uttarakhand at an altitude of 3890 meters above sea level in the Nanda Devi Sanctuary . Kuwari pass connect two valley of Uttarakhand Joshimath & Ghat, Winter Kuari pass trek is famous for offering view of some majestic peaks of Himalayas Nanda Devi (7817 M), Kamet (7756 M), Dronagiri (7066 M), Hathi Parvat (6727 M) & Ghori Pravat (6709 M).This trek is also known as Lord Curzon Trail, because Lord Curzon discovered this trail in 1905, after that trekkers continuously visit this trek every year.",
		      "name": "Trekking in Kuari Pass Tour",
		      "telephone": "+91-9871364441"
		    }
		    </script>
			";i:5;N;}