a:6:{i:0;s:21848:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Beas Kund Trek, Manali Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.travelwayindia.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelwayindia.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Beas Kund Trek, Manali 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-->				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					
											<p class="mb5px"><b>Duration :</b> 
						2 Nights / 3 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Manali</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelwayindia.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Beas Kund Trek, Manali Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="200865"/>
						</form>
						
												</p>
											</td>
										</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								One of the most beautiful short trek trail starting a little ahead from Solang Valley in Himachal Pradesh. The magic of Beas Kund Trek begins right at the Solang Valley 15 km away from Manali. This trip is full of gigantic trees with massive trunks as sentries protecting the visitor as they go deeper into the trail like a fairy tale turning into reality with the lovely Beas River tumbling in tiny streams throughout the trek. Solang valley is famous for its ski slopes & Paragliding. Our trek in Beas Kund is full of amazing views of lush green meadows, glaciers and snow-capped mountain peaks. The trail reaches the birthplace of the River Beas via Dhundi – Bakarthach to enter the Beas Kund Glacier. This trekking trail is recommended for both beginners and experienced trekkers as it is an enjoyable and moderate level trek.  <br />
<br />
Highlights about Beas Kund Trek:<br />
Witness some of the most beautiful scenery of the majestic mountains and the beckoning valleys.<br />
<br />
Quality time spent on the white mighty mountain peaks.<br />
<br />
The trail on small streams throughout the journey.<br />
<br />
Hot spring bath with the beautiful serene surrounding.<br />
<br />
Visiting the famous Vashisht Temple.<br />
<br />
Time spent on clicking pictures of the enchanting views of the meadows.<br />
<br />
Learn about the local culture and their day to day life.<br />
<br />
Basic Details about Beas Kund Trek:<br />
The height of Trek: 12,140 feet<br />
<br />
Difficulty level: Easy<br />
<br />
Age group: 12-45 years<br />
<br />
Duration: 3 days/2 nights<br />
<br />
How to Reach Beas Kund Trek in Manali:<br />
Manali is connected to all the states across India. One can travel by road or by Air. Delhi is taken as a reference to Guide our trekkers. So plan accordingly.<br />
<br />
Reach Manali by Road:<br />
<br />
Manali is connected to Delhi by bus routes. Take an overnight bus from Delhi, and you will reach Manali in 12 - 14 hours. Tickets can be booked online at www.redbus.in or www.hrtc.gov.in<br />
is the nearest airport. Taxi services are available from Airport to Manali, which costs about Rs. 700- Rs1000.<br />
<br />
Tip: Since Delhi to Manali is a long journey, most Volvo private buses leave Delhi between 5 pm and 6 pm. The last HRTC bus leaves at 8.30 pm from ISBT Kashmere Gate. Plan your onward journeys only post noon is giving enough buffer for bus delays.<br />
Reach Manali by Air:<br />
<br />
Kullu–Manali Airport in Bhuntar, which is 52 km away from Manali,								</div>
								<br />
																<div class="headHr">
					            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
					            </div>
					            
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 1:</b> Manali-Solang Valley – Dhundi
										</p>
										<p class="aj">Arrive in Solang Valley and meet the guide then start trekking to Dhundi to on the first day itself. You will first pass the enchanting valley of Solang, which is a popular holiday destination in India. From here, you will walk to the campsite. Dhundi is a scenic spot with the Beas River filled with boulders flowing through here, and forested hills lining its banks. In the distance, you will be able to see the peak of Hanuman Tibba. You now begin your Beas Kund trek, and in its first leg, trek to Dhundi. It is a gradual and long climb through the mountains to this picturesque camping site. You will absolutely love camping by the river, and listening to the sound of the water splashing on the rocks.<br />
<br />
Overnight stay in camps.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 2:</b> Dhundi – Beas Kund – Dhundi
										</p>
										<p class="aj">This is the longest, toughest and the most important section of the Beas Kund trekking as it will take you near the origin of the river and then back to Dhundi. Just as you reach a little higher from the starting point, amazing views start appearing. The place has a heap of boulders, and makes an excellent photography spot. Velvety slopes will be seen from here, and below them, fir and spruce trees will be easily distinguishable. From here, you will also be able to see where the tree line ends, and grasslands take over.<br />
<br />
After admiring the views, resume your hike, and after a while, you will reach another viewpoint. From here, you will be able to see grassy mountain slopes with sparse shrubs. In the distance, you will see the glacier along with the river emerging from it. Beyond the glaciers, barren mountains will be visible. Continue your Beas Kund trekking tour and arrive at yet another bewitching spot. By now, you would have reached way beyond the point where trees stop growing. Here you will notice that even shrubs are getting smaller and scantier. The mountains surrounding this spot have certain landslide marks, which are full of rocks. If you look carefully at the slopes, then you will realise that beyond a certain height, the grass has also disappeared altogether, and only barren and sharp cliffs remain. At the highest reaches of the slopes, some amount of snow will be visible as well.<br />
                                                                                                              <br />
                                                                                                     After walking for about four hours today on your Beas Kund trek package, you will finally reach your destination. Beas Kund is a small alpine lake, where the waters seem bright blue. The numerous small streams together making up the main river will be clearly distinguishable to you. Some arise from the nearby glaciers while others have their origin in the pond itself. You may also find vibrant purple wildflowers growing on the grasslands around the pond. Take pictures, relax by the lake and explore the area more. Post this picturesque extravaganza, hike down and return to Bakartach.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 3:</b> Dhundi to Solang Valley and Depart
										</p>
										<p class="aj">After early morning breakfast, start the trek back to the Solang Valley to bring the trip to an end.<br />
Once at Solang Valley, you can choose to take a bus or a shared taxi back to Manali.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Meals</li>
																						<li>Sightseeing</li>
																						<li>Private Guides</li>
																						<li>Stay Included</li>
																				<li>Stay: Dome tents on sharing basis</li><li>
Meals: Breakfast, Lunch and Dinner</li><li>
Highly experienced guide</li><li>
Activities: Trekking & Camping</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Transfer from Manali to solang valley and vice versa is not included.</li><li>
And which are not mentioned in inclusion</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* 20% Advance Percentage of total booking amount</li><li>
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount.</li><li>
* Retention Amount varies as per the number of days left before your package start date.</li><li>
* Refund will be made within 15 working days from the date of receipt of the cancellation.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelwayindia.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Beas Kund Trek, Manali 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="200865"/>
						</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.travelwayindia.com/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/agra-tour-packages.htm" title="Agra Tour Packages">Agra</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/dharamshala-tour-packages.htm" title="Dharamshala Tour Packages">Dharamshala</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/kangra-tour-packages.htm" title="Kangra Tour Packages">Kangra</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/prayagraj-tour-packages.htm" title="Prayagraj Tour Packages">Prayagraj</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/pushkar-tour-packages.htm" title="Pushkar Tour Packages">Pushkar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/corbett-tour-packages.htm" title="Corbett Tour Packages">Corbett</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelwayindia.com/bareilly-tour-packages.htm" title="Bareilly Tour Packages">Bareilly</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelwayindia.com/mcleodganj-tour-packages.htm" title="Mcleodganj Tour Packages">Mcleodganj</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.travelwayindia.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/jeep-safari-holidays-catid.htm" title="Jeep Safari Packages">Jeep Safari</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/wildlife-safari-holidays-catid.htm" title="Wildlife Safari Packages">Wildlife Safari</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.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.travelwayindia.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelwayindia.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelwayindia.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelwayindia.com/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 spanlist dn"><a class="dif" href="http://www.travelwayindia.com/biking-holidays-catid.htm" title="Biking Packages">Biking</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</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.travelwayindia.com/holiday-packages/manali-bhrigu-lake-trek-manali.htm'">
															<div class="picBg ac vam lh0"><img src="https://static.tourtravelworld.com/images/tour-package-no-image.gif"  height="100"  width="100"    alt="Manali Bhrigu Lake Trek, Manali" title="Manali Bhrigu Lake Trek, Manali"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.travelwayindia.com/holiday-packages/manali-bhrigu-lake-trek-manali.htm" title="Manali Bhrigu Lake Trek, Manali"><h3>Manali Bhrigu Lake Trek, Manali</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</p>
															<div class="mt10px small">
							<form name="pkg_200867" id="pkg_200867" method="post" action="http://www.travelwayindia.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.travelwayindia.com/holiday-packages/manali-bhrigu-lake-trek-manali.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Manali Bhrigu Lake Trek, Manali - 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="200867"/>
							</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 Beas Kund Trek, Manali Tour - 2 Nights / 3 Days Tour Packages";i:2;s:112:"book beas kund trek, manali tour - 2 nights / 3 days tour packages, trekking tour packages, manali tour packages";i:3;s:145:"Travel Way India offers Beas Kund Trek, Manali Tour - 2 Nights / 3 Days tour package, budget Trekking tour packages for Manali at exciting price.";i:4;s:2744:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Manali"        
		                 },
		      "description": "One of the most beautiful short trek trail starting a little ahead from Solang Valley in Himachal Pradesh. The magic of Beas Kund Trek begins right at the Solang Valley 15 km away from Manali. This trip is full of gigantic trees with massive trunks as sentries protecting the visitor as they go deeper into the trail like a fairy tale turning into reality with the lovely Beas River tumbling in tiny streams throughout the trek. Solang valley is famous for its ski slopes & Paragliding. Our trek in Beas Kund is full of amazing views of lush green meadows, glaciers and snow-capped mountain peaks. The trail reaches the birthplace of the River Beas via Dhundi – Bakarthach to enter the Beas Kund Glacier. This trekking trail is recommended for both beginners and experienced trekkers as it is an enjoyable and moderate level trek.  

Highlights about Beas Kund Trek:
Witness some of the most beautiful scenery of the majestic mountains and the beckoning valleys.

Quality time spent on the white mighty mountain peaks.

The trail on small streams throughout the journey.

Hot spring bath with the beautiful serene surrounding.

Visiting the famous Vashisht Temple.

Time spent on clicking pictures of the enchanting views of the meadows.

Learn about the local culture and their day to day life.

Basic Details about Beas Kund Trek:
The height of Trek: 12,140 feet

Difficulty level: Easy

Age group: 12-45 years

Duration: 3 days/2 nights

How to Reach Beas Kund Trek in Manali:
Manali is connected to all the states across India. One can travel by road or by Air. Delhi is taken as a reference to Guide our trekkers. So plan accordingly.

Reach Manali by Road:

Manali is connected to Delhi by bus routes. Take an overnight bus from Delhi, and you will reach Manali in 12 - 14 hours. Tickets can be booked online at www.redbus.in or www.hrtc.gov.in
is the nearest airport. Taxi services are available from Airport to Manali, which costs about Rs. 700- Rs1000.

Tip: Since Delhi to Manali is a long journey, most Volvo private buses leave Delhi between 5 pm and 6 pm. The last HRTC bus leaves at 8.30 pm from ISBT Kashmere Gate. Plan your onward journeys only post noon is giving enough buffer for bus delays.
Reach Manali by Air:

Kullu–Manali Airport in Bhuntar, which is 52 km away from Manali,",
		      "name": "Beas Kund Trek, Manali Tour",
		      "telephone": "+91-9027368321"
		    }
		    </script>
			";i:5;N;}