a:6:{i:0;s:33037:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>The Catchment Sanctuary Walk Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.indiatoursntrails.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.indiatoursntrails.com/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> The Catchment Sanctuary Walk 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_16/450512/271111.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271111.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271111.jpg"  alt="The Catchment Sanctuary Walk Tour" title="The Catchment Sanctuary Walk 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">The Catchment Sanctuary Walk Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						1 Day 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Shimla</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.indiatoursntrails.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="The Catchment Sanctuary Walk 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="179673"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Charabara in Shimla is surrounded on three sides by the magnificent Shimla Water Catchment Sanctuary, a 125 year old sanctuary that was established by the British as a reserved forest. The sanctuary was the initial source of water for Shimla, the water pumped to Shimla town through a series of steam pumps, reputed to be the first of their kind in the country. Today this pristine and undisturbed forest stretches across an area of 12 square kilometres and is considered by many as one of the wealthiest storehouses of Himalayan flora. This extremely dense forest is also the habitat for a vast variety of fauna, the most prominent being the Leopard. Although a sighting of this extremely human-shy and nocturnal animal is very rare, regular reports of droppings prove the existence of a large population within the sanctuary. The Himalayan Black Bear and the Brown Bear, Barking Deer, Goral, Jackal, Indian Red Fox, Striped Hyena and the Yellow-Throated Martin are some of the species of wildlife that thrive in the undisturbed forests of the sanctuary. A wide variety of bird and pheasant species can also be spotted in the lower altitude belts of the sanctuary, some of the more prominent ones being the Cheer, Koklas and Khaleej pheasants, the Himalayan Pied Woodpecker, the Great Himalayan Barbet and some sparklingly colorful minivets. A bifurcation penetrates deep into the sanctuary along a prominent ridgeline. Descend down to the Seyog Forest Rest House, a hundred year old lathe and plaster (Dhajji) structure located in the midst of this silent forest. The narrow trail undulates for an hour or more through one of the best-preserved forests in Asia. Cedars, Firs, Pines and Oaks jostle each other for space and the canopy-density at places prevents even the sunlight from peeping through to the forest floor. Droppings and pugmarks of the fauna are regular sightings along this trail and if ones luck holds out, a perky Barking Deer too might flash past in gay abandon. As one would guess, this is an excellent site for some bird-watching too.<br />
<br />
Our walk starts in the morning at 9:30 when our expert picks you up from your hotel and we drive to Dhalli, and further up to Charabara. A bifurcation penetrates deep into the sanctuary along a prominent ridgeline. Descend down to the Seyog Forest Rest House, a hundred year old lathe and plaster (Dhajji) structure located in the midst of this silent forest. The narrow trail undulates for an hour or more through one of the best-preserved forests in Asia. Cedars, Firs, Pines and Oaks jostle each other for space and the canopy-density at places prevents even the sunlight from peeping through to the forest floor. Droppings and pugmarks of the fauna are regular sightings along this trail and if ones luck holds out, a perky Barking Deer too might flash past in gay abandon. A well-deserved picnic lunch (be sure not to litter) at the ancient rest house can be followed by a stroll down to the man-made reservoir that collects water from across the sanctuary before supplying it to Shimla town. As one would guess, this is an excellent site for some bird-watching too. Our walk continues deeper into the sanctuary through a network of trails and we end it just short of Kufri at around 2:00PM.<br />
<br />
<br />
Drive back to hotel.	<br />
Distance Walking 9kms, Vehicle 30kms</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> Shimla										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Charabara in Shimla is surrounded on three sides by the magnificent Shimla Water Catchment Sanctuary, a 125 year old sanctuary that was established by the British as a reserved forest. The sanctuary was the initial source of water for Shimla, the water pumped to Shimla town through a series of steam pumps, reputed to be the first of their kind in the country. Today this pristine and undisturbed forest stretches across an area of 12 square kilometres and is considered by many as one of the wealthiest storehouses of Himalayan flora. This extremely dense forest is also the habitat for a vast variety of fauna, the most prominent being the Leopard. Although a sighting of this extremely human-shy and nocturnal animal is very rare, regular reports of droppings prove the existence of a large population within the sanctuary. The Himalayan Black Bear and the Brown Bear, Barking Deer, Goral, Jackal, Indian Red Fox, Striped Hyena and the Yellow-Throated Martin are some of the species of wildlife that thrive in the undisturbed forests of the sanctuary. A wide variety of bird and pheasant species can also be spotted in the lower altitude belts of the sanctuary, some of the more prominent ones being the Cheer, Koklas and Khaleej pheasants, the Himalayan Pied Woodpecker, the Great Himalayan Barbet and some sparklingly colorful minivets. A bifurcation penetrates deep into the sanctuary along a prominent ridgeline. Descend down to the Seyog Forest Rest House, a hundred year old lathe and plaster (Dhajji) structure located in the midst of this silent forest. The narrow trail undulates for an hour or more through one of the best-preserved forests in Asia. Cedars, Firs, Pines and Oaks jostle each other for space and the canopy-density at places prevents even the sunlight from peeping through to the forest floor. Droppings and pugmarks of the fauna are regular sightings along this trail and if ones luck holds out, a perky Barking Deer too might flash past in gay abandon. As one would guess, this is an excellent site for some bird-watching too.<br />
<br />
Our walk starts in the morning at 9:30 when our expert picks you up from your hotel and we drive to Dhalli, and further up to Charabara. A bifurcation penetrates deep into the sanctuary along a prominent ridgeline. Descend down to the Seyog Forest Rest House, a hundred year old lathe and plaster (Dhajji) structure located in the midst of this silent forest. The narrow trail undulates for an hour or more through one of the best-preserved forests in Asia. Cedars, Firs, Pines and Oaks jostle each other for space and the canopy-density at places prevents even the sunlight from peeping through to the forest floor. Droppings and pugmarks of the fauna are regular sightings along this trail and if ones luck holds out, a perky Barking Deer too might flash past in gay abandon. A well-deserved picnic lunch (be sure not to litter) at the ancient rest house can be followed by a stroll down to the man-made reservoir that collects water from across the sanctuary before supplying it to Shimla town. As one would guess, this is an excellent site for some bird-watching too. Our walk continues deeper into the sanctuary through a network of trails and we end it just short of Kufri at around 2:00PM.<br />
<br />
<br />
Drive back to hotel.	<br />
Distance Walking 9kms, Vehicle 30kms															
														   
											</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>EP (No Meal)</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>						
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
						
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date.</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.indiatoursntrails.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="The Catchment Sanctuary Walk 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="179673"/>
						</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.indiatoursntrails.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/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 "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-parwanoo.htm" title="Packages in Parwanoo">Parwanoo</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-dharamshala.htm" title="Packages in Dharamshala">Dharamshala</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-solan.htm" title="Packages in Solan">Solan</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-kalka.htm" title="Packages in Kalka">Kalka</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-ambala.htm" title="Packages in Ambala">Ambala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/packages-in-barbil.htm" title="Packages in Barbil">Barbil</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.indiatoursntrails.com/packages-in-manikaran.htm" title="Packages in Manikaran">Manikaran</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.indiatoursntrails.com/packages-in-amritsar.htm" title="Packages in Amritsar">Amritsar</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.indiatoursntrails.com/packages-in-kullu.htm" title="Packages in Kullu">Kullu</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.indiatoursntrails.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 spanlist dn"><a class="dif" href="http://www.indiatoursntrails.com/packages-in-palampur.htm" title="Packages in Palampur">Palampur</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.indiatoursntrails.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/river-rafting-holidays-catid.htm" title="River Rafting Packages">River Rafting</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.com/cycling-holidays-catid.htm" title="Cycling Packages">Cycling</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.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.indiatoursntrails.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.indiatoursntrails.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.indiatoursntrails.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Shimla</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.indiatoursntrails.com/tour-packages/shimla-manali-mandi-dharamshala-dalhausie-pathankot-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271189.jpg"  alt="Shimla, Manali,Mandi,Dharamshala,Dalhausie, Pathankot Package" title="Shimla, Manali,Mandi,Dharamshala,Dalhausie, Pathankot Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.indiatoursntrails.com/tour-packages/shimla-manali-mandi-dharamshala-dalhausie-pathankot-package.htm" title="Shimla, Manali,Mandi,Dharamshala,Dalhausie, Pathankot Package"><h3>Shimla, Manali,mandi,dharamshala,dalhausie..</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> : 
								10 Nights / 11 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Kullu, Manali, Palampur, Shimla, Solan, ..</p>
															<div class="mt10px small">
							<form name="pkg_179687" id="pkg_179687" method="post" action="http://www.indiatoursntrails.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.indiatoursntrails.com/tour-packages/shimla-manali-mandi-dharamshala-dalhausie-pathankot-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Shimla, Manali,Mandi,Dharamshala,Dalhausie, Pathankot Package - 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="179687"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.indiatoursntrails.com/tour-packages/ambala-chandigarh-shimla-rewalsar-manali-manikaran-chandigarh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271170.jpg"  alt="Ambala/Chandigarh - Shimla - Rewalsar - Manali - Manikaran Tour" title="Ambala/Chandigarh - Shimla - Rewalsar - Manali - Manikaran Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.indiatoursntrails.com/tour-packages/ambala-chandigarh-shimla-rewalsar-manali-manikaran-chandigarh-tour.htm" title="Ambala/Chandigarh - Shimla - Rewalsar - Manali - Manikaran Tour"><h3>Ambala/chandigarh - Shimla - Rewalsar - Ma..</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> :  Chandigarh City, Ambala, Manali, Manikar..</p>
															<div class="mt10px small">
							<form name="pkg_179684" id="pkg_179684" method="post" action="http://www.indiatoursntrails.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.indiatoursntrails.com/tour-packages/ambala-chandigarh-shimla-rewalsar-manali-manikaran-chandigarh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Ambala/Chandigarh - Shimla - Rewalsar - Manali - Manikaran 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="179684"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.indiatoursntrails.com/tour-packages/shimla-manali-kalka-chandigarh-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271176.jpg"  alt="Shimla Manali Kalka/chandigarh  Package" title="Shimla Manali Kalka/chandigarh  Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.indiatoursntrails.com/tour-packages/shimla-manali-kalka-chandigarh-package.htm" title="Shimla Manali Kalka/chandigarh  Package"><h3>Shimla Manali Kalka/chandigarh  Package</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, Shimla, Kalka, Barbil</p>
															<div class="mt10px small">
							<form name="pkg_179685" id="pkg_179685" method="post" action="http://www.indiatoursntrails.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.indiatoursntrails.com/tour-packages/shimla-manali-kalka-chandigarh-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Shimla Manali Kalka/chandigarh  Package - 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="179685"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.indiatoursntrails.com/tour-packages/the-shali-tibba-hike-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271116.jpg"  alt="The Shali Tibba Hike Tour" title="The Shali Tibba Hike Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.indiatoursntrails.com/tour-packages/the-shali-tibba-hike-tour.htm" title="The Shali Tibba Hike Tour"><h3>The Shali Tibba Hike 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> :  Shimla, Solan, Parwanoo, Dharamshala, Ja..</p>
															<div class="mt10px small">
							<form name="pkg_179674" id="pkg_179674" method="post" action="http://www.indiatoursntrails.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.indiatoursntrails.com/tour-packages/the-shali-tibba-hike-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="The Shali Tibba Hike 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="179674"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.indiatoursntrails.com/tour-packages/the-retreat-hike-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271124.jpg"  alt="The Retreat Hike Tour" title="The Retreat Hike Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.indiatoursntrails.com/tour-packages/the-retreat-hike-tour.htm" title="The Retreat Hike Tour"><h3>The Retreat Hike 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> :  Shimla</p>
															<div class="mt10px small">
							<form name="pkg_179677" id="pkg_179677" method="post" action="http://www.indiatoursntrails.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.indiatoursntrails.com/tour-packages/the-retreat-hike-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="The Retreat Hike 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="179677"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.indiatoursntrails.com/tour-packages/shimla-heritage-walk1-day-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/450512/271103.jpg"  alt="Shimla Heritage Walk (1 Day) Tour" title="Shimla Heritage Walk (1 Day) Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.indiatoursntrails.com/tour-packages/shimla-heritage-walk1-day-tour.htm" title="Shimla Heritage Walk (1 Day) Tour"><h3>Shimla Heritage Walk (1 Day) 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> :  Shimla</p>
															<div class="mt10px small">
							<form name="pkg_179672" id="pkg_179672" method="post" action="http://www.indiatoursntrails.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.indiatoursntrails.com/tour-packages/shimla-heritage-walk1-day-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Shimla Heritage Walk (1 Day) 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="179672"/>
							</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:61:"Book The Catchment Sanctuary Walk Tour - 1 Days Tour Packages";i:2;s:111:"book the catchment sanctuary walk tour - 1 days tour packages, hill station tour packages, shimla tour packages";i:3;s:148:"India Tours-n-trails offers The Catchment Sanctuary Walk Tour - 1 Days tour package, budget Hill Station tour packages for Shimla at exciting price.";i:4;s:3733:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Shimla"        
		                 },
		      "description": "Charabara in Shimla is surrounded on three sides by the magnificent Shimla Water Catchment Sanctuary, a 125 year old sanctuary that was established by the British as a reserved forest. The sanctuary was the initial source of water for Shimla, the water pumped to Shimla town through a series of steam pumps, reputed to be the first of their kind in the country. Today this pristine and undisturbed forest stretches across an area of 12 square kilometres and is considered by many as one of the wealthiest storehouses of Himalayan flora. This extremely dense forest is also the habitat for a vast variety of fauna, the most prominent being the Leopard. Although a sighting of this extremely human-shy and nocturnal animal is very rare, regular reports of droppings prove the existence of a large population within the sanctuary. The Himalayan Black Bear and the Brown Bear, Barking Deer, Goral, Jackal, Indian Red Fox, Striped Hyena and the Yellow-Throated Martin are some of the species of wildlife that thrive in the undisturbed forests of the sanctuary. A wide variety of bird and pheasant species can also be spotted in the lower altitude belts of the sanctuary, some of the more prominent ones being the Cheer, Koklas and Khaleej pheasants, the Himalayan Pied Woodpecker, the Great Himalayan Barbet and some sparklingly colorful minivets. A bifurcation penetrates deep into the sanctuary along a prominent ridgeline. Descend down to the Seyog Forest Rest House, a hundred year old lathe and plaster (Dhajji) structure located in the midst of this silent forest. The narrow trail undulates for an hour or more through one of the best-preserved forests in Asia. Cedars, Firs, Pines and Oaks jostle each other for space and the canopy-density at places prevents even the sunlight from peeping through to the forest floor. Droppings and pugmarks of the fauna are regular sightings along this trail and if ones luck holds out, a perky Barking Deer too might flash past in gay abandon. As one would guess, this is an excellent site for some bird-watching too.

Our walk starts in the morning at 9:30 when our expert picks you up from your hotel and we drive to Dhalli, and further up to Charabara. A bifurcation penetrates deep into the sanctuary along a prominent ridgeline. Descend down to the Seyog Forest Rest House, a hundred year old lathe and plaster (Dhajji) structure located in the midst of this silent forest. The narrow trail undulates for an hour or more through one of the best-preserved forests in Asia. Cedars, Firs, Pines and Oaks jostle each other for space and the canopy-density at places prevents even the sunlight from peeping through to the forest floor. Droppings and pugmarks of the fauna are regular sightings along this trail and if ones luck holds out, a perky Barking Deer too might flash past in gay abandon. A well-deserved picnic lunch (be sure not to litter) at the ancient rest house can be followed by a stroll down to the man-made reservoir that collects water from across the sanctuary before supplying it to Shimla town. As one would guess, this is an excellent site for some bird-watching too. Our walk continues deeper into the sanctuary through a network of trails and we end it just short of Kufri at around 2:00PM.


Drive back to hotel.	
Distance Walking 9kms, Vehicle 30kms",
		      "name": "The Catchment Sanctuary Walk Tour",
		      "telephone": "+91-9817016580"
		    }
		    </script>
			";i:5;N;}