a:6:{i:0;s:26375:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Trekking In Har Ki Doon 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 Har Ki Doon 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/242781.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242781.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/533222/242781.jpg"  alt="Trekking in Har Ki Doon Tour" title="Trekking in Har Ki Doon 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 Har Ki Doon Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Dehradun</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 Har Ki Doon 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="158498"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Region<br />
<br />
: Uttarkashi District, Uttarakhand<br />
<br />
Duration<br />
<br />
: 7 Days<br />
<br />
Level<br />
<br />
: Moderate<br />
<br />
Trekking distance<br />
<br />
: 48 Kms<br />
<br />
Max Altitude<br />
<br />
: 3558 Meters<br />
<br />
Pickup Point<br />
<br />
: Rishikesh/Dehradun<br />
<br />
Drop Point<br />
<br />
: Rishikesh/ Dehradun<br />
<br />
Best Season<br />
<br />
: Round of the Year except monsoon.<br />
<br />
Har-Ki-Doon is one of the most gorgeous and sought after treks among Uttarakhand’s trekking destinations. Also known as the hanging valley, this beautiful valley is located at the base of Fateh Parvat, at an altitude of 3556 mts. The enchanting cradle shaped valley is rich in flora and fauna, surrounded by dense Pine forests. The trails are passes through some of the remotest villages of Uttarakhand where the civilization hasn’t been affected much by the outside world. This region is isolated and habitat for rare species of bird and wild animals. Har-Ki–Doon offers views of glittering mountain peaks such as Swargarohini and Jaundar Glacier in south-east while Banderpoonch in its west. This valley is at an altitude of approx 3500m and is a transition between Baspa Valley and Borasu Pass. The valley is covered with snow during October to March during monsoon season the vegetation of this valley is turned green and the trails are mesmerized by the Rhododendron flowers.<br />
<br />
This place also has an importance in the Mythology. Legends say, Pandavas took this route on their ascent to heaven during Mahabharata. Swargarohini—the glittering snow-clad peak, dominant other peaks in this region bears a legacy of the mythical stairway to heaven.</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> Dehradun to Sankri (187 Kms, 9Hrs)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Arrive Dehradun in the morning and start to Sankri (our base camp for the trek). The drive is a long one and takes about 9-10 hours to reach Sankri.															
														   
											</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> Sankri to Pauni Garaat Via Taluka (12 Km Drive+ 13 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 we start our 12 km drive to Taluka then we start our trek to Puani Garaat the trail descends to the river valley of Supin and continues through a series of forests, while the river remains on your right and reach camp site by evening.			
														   
											</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> Pauni Garaat to Kalkattiyadhaar ( 7 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, we move to Kalkattiyadhaar. This trail might offer you wildlife sightings as well. Reach camp site by evening.			
														   
											</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> Kalkattiyadhar to Har Ki Doon (5 Kms Trek)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today we'll reach our beautiful valley of Har Ki Dun through the trail crosses multiple streams, meadows, pine, rhododendron trees with a variety of Himalayan alpine flowers along its sides, especially blue poppy. Camping in Har ki Dun offer memorizing view of the Swargarohini peak.			
														   
											</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> Har Ki Doon to Pauni Garaat Via Osla ( 11 Kms Trek)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today start trekking early head back towards Kalkatiyadhaar and then to Osla. Rest at Osla for some time and move on to Puani Garaat. Overnight camp at Puani Garaat.			
														   
											</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> Pauni Garaat to Sankri Via Taluka (13 Kms Trek+12 Km Drive)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												We trek back to Taluka and then drive to Sankrii. Overnight stay.			
														   
											</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> Sankri to Dehradun										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												We drive back from Sankri to Dehradun. Reach Dehradun by evening at around 7-8 pm.			
														   
											</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>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																			</ul>
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p -webkit-text-stroke-width:="" background-color:="" font-size:="" font-style:="" font-variant-caps:="" font-variant-ligatures:="" font-weight:="" letter-spacing:="" open="" orphans:="" style="box-sizing: border-box; margin: 0px 0px 10px; line-height: 1.6; color: rgb(75, 75, 75); font-family: " text-align:="" text-decoration-color:="" text-decoration-style:="" text-indent:="" text-transform:="" white-space:="" widows:="" word-spacing:=""><span id="cke_bm_88S" style="display: none;"> </span>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.

<p><span id="cke_bm_88E" style="display: none;"> </span> 

<h3 style="box-sizing: border-box; font-family: Raleway, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(75, 75, 75); margin-top: 20px; margin-bottom: 10px; font-size: 1.999em; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">Advisory:</h3>

<ul -webkit-text-stroke-width:="" background-color:="" font-size:="" font-style:="" font-variant-caps:="" font-variant-ligatures:="" font-weight:="" letter-spacing:="" open="" orphans:="" style="box-sizing: border-box; margin-top: 0px; margin-bottom: 10px; color: rgb(75, 75, 75); font-family: " text-align:="" text-decoration-color:="" text-decoration-style:="" text-indent:="" text-transform:="" white-space:="" widows:="" word-spacing:="">
	<li style="box-sizing: border-box;">Any delay from the customer&rsquo;s side will lead to cancellation of trek/ tour/ adventure activities.</li>
	<li style="box-sizing: border-box;">Trekking maybe cancelled due to some unavoidable circumstances i.e- weather condition, govt. notification, land sliding or any other natural calamity.</li>
	<li style="box-sizing: border-box;">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 style="box-sizing: border-box;">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 style="box-sizing: border-box;">Total decided package cost will not be affected if there is any reduction in the number of persons</li>
	<li style="box-sizing: border-box;">Minimum required 50% of amount to get confirmed the trek/tour/adventure activities.</li>
</ul>

<p> 

<h3 style="box-sizing: border-box; font-family: Raleway, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(75, 75, 75); margin-top: 20px; margin-bottom: 10px; font-size: 1.999em; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">Cancellation Policy</h3>

<ul -webkit-text-stroke-width:="" background-color:="" font-size:="" font-style:="" font-variant-caps:="" font-variant-ligatures:="" font-weight:="" letter-spacing:="" open="" orphans:="" style="box-sizing: border-box; margin-top: 0px; margin-bottom: 10px; color: rgb(75, 75, 75); font-family: " text-align:="" text-decoration-color:="" text-decoration-style:="" text-indent:="" text-transform:="" white-space:="" widows:="" word-spacing:="">
	<li style="box-sizing: border-box;">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 style="box-sizing: border-box;">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 style="box-sizing: border-box;">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 style="box-sizing: border-box;">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> 

<h3 style="box-sizing: border-box; font-family: Raleway, sans-serif; font-weight: 500; line-height: 1.1; color: rgb(75, 75, 75); margin-top: 20px; margin-bottom: 10px; font-size: 1.999em; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">Refund Policy</h3>

<p -webkit-text-stroke-width:="" background-color:="" font-size:="" font-style:="" font-variant-caps:="" font-variant-ligatures:="" font-weight:="" letter-spacing:="" open="" orphans:="" style="box-sizing: border-box; margin: 0px 0px 10px; line-height: 1.6; color: rgb(75, 75, 75); font-family: " text-align:="" text-decoration-color:="" text-decoration-style:="" text-indent:="" text-transform:="" white-space:="" widows:="" word-spacing:="">The applicable refund amount will be processed within 10 business days or can be adjusted in other trek or adventure activities.								</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 Har Ki Doon 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="158498"/>
						</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-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-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-dehradun.htm" title="Packages in Dehradun">Dehradun</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-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="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>
				
								
				</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:67:"Book Trekking in Har Ki Doon Tour - 6 Nights / 7 Days Tour Packages";i:2;s:119:"book trekking in har ki doon tour - 6 nights / 7 days tour packages, hill station tour packages, dehradun tour packages";i:3;s:150:"Himalayan Cove offers Trekking in Har Ki Doon Tour - 6 Nights / 7 Days tour package, budget Hill Station tour packages for Dehradun at exciting price.";i:4;s:1960:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Dehradun"        
		                 },
		      "description": "Region

: Uttarkashi District, Uttarakhand

Duration

: 7 Days

Level

: Moderate

Trekking distance

: 48 Kms

Max Altitude

: 3558 Meters

Pickup Point

: Rishikesh/Dehradun

Drop Point

: Rishikesh/ Dehradun

Best Season

: Round of the Year except monsoon.

Har-Ki-Doon is one of the most gorgeous and sought after treks among Uttarakhand’s trekking destinations. Also known as the hanging valley, this beautiful valley is located at the base of Fateh Parvat, at an altitude of 3556 mts. The enchanting cradle shaped valley is rich in flora and fauna, surrounded by dense Pine forests. The trails are passes through some of the remotest villages of Uttarakhand where the civilization hasn’t been affected much by the outside world. This region is isolated and habitat for rare species of bird and wild animals. Har-Ki–Doon offers views of glittering mountain peaks such as Swargarohini and Jaundar Glacier in south-east while Banderpoonch in its west. This valley is at an altitude of approx 3500m and is a transition between Baspa Valley and Borasu Pass. The valley is covered with snow during October to March during monsoon season the vegetation of this valley is turned green and the trails are mesmerized by the Rhododendron flowers.

This place also has an importance in the Mythology. Legends say, Pandavas took this route on their ascent to heaven during Mahabharata. Swargarohini—the glittering snow-clad peak, dominant other peaks in this region bears a legacy of the mythical stairway to heaven.",
		      "name": "Trekking in Har Ki Doon Tour",
		      "telephone": "+91-9871364441"
		    }
		    </script>
			";i:5;N;}