a:6:{i:0;s:22451:"				<div class="h1"><h1>Beautiful Himachal Tour With 4 Adults</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.tanishhimachaltours.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.tanishhimachaltours.com/travel-packages.htm" title="Travel Packages">Travel Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Beautiful Himachal Tour With 4 Adults</p>
				<br />
				
								
						<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">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						8 Nights / 9 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Shimla, Kinnaur, Lahaul & Spiti</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 20000 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.tanishhimachaltours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Beautiful Himachal Tour With 4 Adults - 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="128038"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/438757/205181.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/438757/205181.jpg"  width="150" height="150"    alt="Beautiful Himachal Tour With 4 Adults" title="Beautiful Himachal Tour With 4 Adults" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Meal plan : Lunch <br />
NON VEG MEAL<br />
Cabs : Non-AC <br />
Airfare <br />
Others : Other Exclusions (Car at disposal <br />
All kind of personal expenses such as tips, laundry, telephone bills and beverages. <br />
It also does not include any meals unless and otherwise specifically mentioned.. <br />
Optional, suggested or unspecified activities. <br />
Camera fee (still or movie)<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> ARRIVAL
								</p>
								<p class="aj">Start your journey from Delhi. Drive your way to Shimla in a private vehicle. Reach Shimla and vist Kalibari temple,Gaity Theatre,lakkar Bazaar famous for wooden items,Famous Ridge Maidan and lots of more historic and famous palces.we move towards beautiful Narkanda . Enroute take ,Kufri is a small hill station in Shimla district of Himachal Pradesh state in India. It is located 13 km from the state capital Shimla on the National Highway No.22. The region around Shimla including Kufri was once a part of the Kingdom of Nepal until the area was ceded to the British Raj as part of the Sugauli Treaty. <br />
This region remained obscure from the rest of the world until the British 'discovered' it in 1819. It is the Kufri bungalow which is very famous for its statues and architecture.Kufri to the Mahasu Peak- the highest peak in Kufri.The Indira Tourist Park is near the Himalayan Nature Park and provides panoramic view of the locations around After kufri continue drive towards Narkanda…overnight stay at Narkanda.</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> NARKANDA SARAHAN SANGLA
								</p>
								<p class="aj">After breakfast, we shall go for a sightseeing excursion to the beautiful Sarahan The chief landmark of this village is the impressive golden-spired Bhimakali temple that rises majestically against a snowy Himalayan backdrop. Perched at 1,920 metres, this Himachali hamlet commands a superb view of the surrounding Alpine countryside -- Rolling Meadows, apple orchards, flower-dotted valleys, silent forests, the swift Sutlej River and the haughty peaks.After local enjoy move our wheels towards Sangla.Overnight stay at sangla.</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> SANGLA CHITKUL RAKCHAM KALPA
								</p>
								<p class="aj">After breakfast, we shall go for a sightseeing excursion to the beautiful village of Chitkul, the last inhabited village near the Indo-Tibet border. The drive to Chitkul is extremely scenic amidst snow -clad mountains, apple orchids and wooden houses. One can witness the unique architecture, local lifestyle and also visit the beautiful 500 years old Goddess Chitkul Mathi temple here.  <br />
In Tibetan, the term Sangala means “pass of light” which refers to the valley receiving sunlight during the day. Later, we shall visit the beautiful Rakcham village While traveling from Sangla to Chitkul you will sure come across this breathtaking valley on the banks of River Baspa comfortably hidden away from the modern world . Nestled between mighty snow covered peaks and a lush green landscape, Rakchamor Rakchham is heaven on earth,we shall drive to the beautiful town of Kalpa via Rekong Peo, (approx. 51 kms/ 3hours’ drive) the district headquarters. One can enjoy spectacular views of the sacred Kinner Kailash Peak, one of the most beautiful peaks in the Himalayas on the way. <br />
Situated at the height of 2758 m above the sea level and 110 km from Sarahan, Kalpa is a beautiful and main village of Kinnaur. Across the river faces the majestic mountains of the Kinner Kailash range. These are spectacular sights early in the morning as the rising sun touches the snowy peaks with crimson and golden light.Continue our journey towards Kalpa.overnight stay at kalpa.</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 4:</b> KALPA NAKO TABO
								</p>
								<p class="aj">After breakfast local visit of Nako. 11000+ ft asl Nako lies in Upper Kinnaur on the edge of remote spiti valley and an important centre of Tibetan Buddhism.Nako has seven temples of different periods distributed all over the village, including a monastic complex on its western edge.Nako is situated right on the Tibetan border over a beautiful lake.Drive to Nako and the evening and morning views of the lake and surrounding snow peaks is simply stunning. <br />
We shall take a detour here to Giu village famous for its naturally preserved mummy that is almost 500 years old. The mummy is said to be of a Tibetan Buddhist Lama and is in a sitting posture. We shall continue our drive and end our journey for the day at Tabo.</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 5:</b> TABO DHANKAR KAZA
								</p>
								<p class="aj">After breakfast, we shall visit Tabo monastery, which houses the priceless collection of thangkas (scroll paintings), manuscripts, well - preserved statues, frescos and extensive murals which cover almost every wall. <br />
We visit the Old monastery followed by the new one. Grander than the old monastery, the place is a picture of calm. From here we proceeded toward the nearby caves (phukpas) for which we have to hike a bit from the main road. These caves are used by monks for meditation and one of them also has an elaborate mural inside. From here one gets a bird’s eye view of Tabo village and the surrounding scenery. <br />
Later, we shall drive towards Pin valley National Park, the greenest part of Spiti that lies below the Kungri glacier. The valley is famous for its Chamurthi Horses, one of four recognized Indian horse breeds that are found only in this part of the Indian Himalayas. <br />
we visit the Kungri monastery, one of the oldest monasteries in Spiti and the picturesque village of Mud. Mud is the last village of Pin Valley. we leave Kungri and drive towards the village of Kaza. Today we visit some extraordinary sites.The Dhankar monastery, a near 1,000 year old symbol of Vajrayana Buddhist architecture, is one of the 100 most endangered monuments in the world (as recognized by the World Monuments Fund)! It is constructed on a 300 metre high ledge in a rocky mountain near the confluence of Pin and Spiti rivers. An architectural marvel of its time, today owing to its age and an earthquake that struck the region in 1975, it is in the imminent danger of collapsing. There is also a dilapidated fort (there are some wonderful murals inside its rooms), that once enveloped the entire complex, the remnants of which can be explored by hiking. As a matter of fact, it is this fort which lends the place its name. Dhankar literally means - fort on a cliff! <br />
This journey, beside the Lingti valley, provides you with sights of some of the finest canyons and rock formations in India (some of which, atop the mountain, appear like the ramparts of a fort!). The Lalung monastery, also about a millennium old, is fondly called the Golden Temple (Serkhang) since it has statues (supposedly 1,200 years old!) which are plated in gold. <br />
Arrive Kaza and relax and go over the memories of the beauty experienced till now.</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 6:</b> KAZA CITY TOUR
								</p>
								<p class="aj">After breakfast, we visit the world famous Ki Monastery. The car will first stop at the base of the monastery hill for the ultimate photo opportunity of this remarkable structure. With over 1000 years’ worth stories to tell, the Ki Monastery situated at a height of 13,668 feet was founded by a disciple of the famous Atisha, in the 11th century .Then we will move farther down the valley to the picturesque village of Kibber. Located at a height of 4205 metres and 18 km from Kaza, this formerly highest permanently inhabited village of this region, is also a popular base camp to embark on adventure and treks to adjoining mountains of high altitude. The expanses of beautiful landscapes and immeasurable beauty of the snow - tipped mountains makes the place a haven for nature - lovers and photographers alike. <br />
Later, we drive to some of the highest inhabited regions of the world. The highest village in Asia, Comik, which literally translates to ‘eye of a snow cock’, is situated at a height of 4513 metres. This farming village has a population of 84 people, living in utter isolation, cut - off from the rest of the world for most parts of the year. This little hamlet ensures to bring you thousands of miles away from your familiar settings to a place of soft brown pastures and snow - white mountain peaks. After Komik, we head to the picturesque village of Langza. Once you are here, you can walk about the village and visit the ancient Lang (Temple) which is estimated to be around 1000 years old. At Langza, trek back to the prehistoric era when Spiti was submerged by the Tethys Sea as you explore a land very rich with fossils of Marine animals and plants which were here millions of years ago.overnight stay at kaza.</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 7:</b> KAZA CHANDERTAL
								</p>
								<p class="aj">After breakfast start early from Kaza, travel to ChanderTal Lake via Kunzum la pass.Today we will trek 18 kms from Batal to reach Chandratal and it will take us about 5 - 6 hrs, while on this trek we will get a nice view of the Lahaul range, peaks like Minar(6172 M), Talagiri(6279 M), Tara Pahar(6227 M) and Mulkila (6517 M). Dinner and overnight stay in tents..Overnight stay at the chandertal 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 8:</b> CHANDERTAL MANALI
								</p>
								<p class="aj">After breakfast Chander Tal - Manali by road and way back via Rohtang Pass ( Rohtang pass situated at the height of 3978 meters on eastern Pir Panjal range of the Himalyas, about 51 km from Manali connects the Kullu valley) , Enjoy the scenic view of snow covered peaks at Rohtang / ,Solang ,Nehru Kund, Rahala Falls ,Gulaba .Leave back to Manali Overnight Stay at Manali.</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 9:</b> MANALI DELHI DROP
								</p>
								<p class="aj">After lots of fun and adventures the trip comes to an end now time to go back to home the Vechile will leave you at Delhi railway station. Tour Ends !!!!!!!! <br />
It’s been a great journey. And it’s not the end. On the contrary, it’s the beginning. It’s the beginning of a promise to return to the fascinating himalyan valleys where you made friends for life with its people, the colours of the landscape, the smell of fresh air, the gaze of the millions of stars and your always - smiling friends.<br />
Tour Ends !!!!!!!!!</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>Meals</li>
																		<li>Sightseeing</li>
																<li>Meal plan : Breakfast and Dinner</li><li>
Cabs : AC ( Note : A/C will won’t be operational in hills )</li><li>
Vehicle : Innova</li>
													</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Meal plan : Lunch </li><li>
NON VEG MEAL</li><li>
Cabs : Non-AC </li><li>
Airfare </li><li>
Others : Other Exclusions (Car at disposal </li><li>
All kind of personal expenses such as tips, laundry, telephone bills and beverages. </li><li>
It also does not include any meals unless and otherwise specifically mentioned.. </li><li>
Optional, suggested or unspecified activities. </li><li>
Camera fee (still or movie)</li></ul><br />
												<p class="large b mb5px dif">Specific Departure Dates :</p>5 MAY - 13 MAY<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<ul>
	<li>The rates are subjects to change without any prior notice. - Accommodation in the itinerary at the mentioned hotels or the similar hotels. 2. The confirmation is subjects to availability. - Cost incidental to any change in the itinerary/ stay on account of flight cancellation due to bad Weather, ill health, strike, roadblocks and/or any factors beyond control. - It is a suggestion for you that please book this offer as soon as possible because we are not holding any booking and it is totally depend on the availability of rooms and flight.</li>
	<li>From the booking date till 30 days prior to the departure date, 30 % of the package cost is chargeable.</li>
	<li>From 30 days to 15 days prior to the departure date, 50 % of the package cost is chargeable.</li>
	<li>From 15 days to 7 days prior to departure date, 75 % of the package cost is chargeable.</li>
	<li>For cancellations made within 5 days prior to the departure date, 100% of the package cost ischargeable.</li>
	<li>No refund will be made for any unused accommodation, missed meals, transportation segments, sightseeing tours or any other service due to Bad weather, ill health, Strike, Road Blocks or any other factor beyond our Control. Such unused items are neither refundable nor exchangeable. - Room allocation is done by the hotel depending upon availability at the time of check - in. the category of room as specified on your confirmation voucher.</li>
	<li>No refund shall be claimed, if the services &amp; amenities of hotel were not up to your expectations, it will be considered on case to case basis.</li>
	<li>Room Heater charges will be extra charged as per hotel rates in every hotel.</li>
	<li>Meal plan will be veg in every hotel.( Non veg will be included on travellers request ).</li>
	<li>Rohtang Pass Permit and sighscene will be provided as per govt. Terms and conditions.</li>
	<li>Below 5 Years child will be complementry.More then 5 yrs Child will be charged as adults cost.</li>
	<li>All payments of package cost should be cleared before Last day check out of the tour.</li>
</ul>						
    	<p class="h dif xlarge b mb5px">Cost</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">CHECK-IN</td>
				<td class="headHr p5px b">CHECK-OUT</td>
				<td class="headHr p5px b">NIGHTS</td>
				<td class="headHr p5px b">LOCATION</td>
				<td class="headHr p5px b">HOTEL NAME</td>
				<td class="headHr p5px b">ROOM TYPE</td>
				<td class="headHr p5px b">MEAL PLAN</td>
			</tr>
			<tr>
				<td class="data p5px">05 May 2018</td>
				<td class="data p5px">06 May 2018</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Narkanda</td>
				<td class="data p5px">Hatu Home Stay</td>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">Mapi</td>
			</tr>
			<tr>
				<td class="data p5px">06 May 2018</td>
				<td class="data p5px">07 May 2018</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Sangla</td>
				<td class="data p5px">Hotel Madhu</td>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">Mapi</td>
			</tr>
			<tr>
				<td class="data p5px">07 May 2018</td>
				<td class="data p5px">08 May 2018</td>
				<td class="data p5px">1</td>
				<td class="data p5px">kalpa</td>
				<td class="data p5px">Apple Pie</td>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">Mapi</td>
			</tr>
			<tr>
				<td class="data p5px">08 May 2018</td>
				<td class="data p5px">09 May 2018</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Tabo</td>
				<td class="data p5px">Tow Dhey  Himalaya</td>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">Mapi</td>
			</tr>
			<tr>
				<td class="data p5px">09 May 2018</td>
				<td class="data p5px">11 May 2018</td>
				<td class="data p5px">2</td>
				<td class="data p5px">Kaza</td>
				<td class="data p5px">Travellers shed</td>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">Mapi</td>
			</tr>
			<tr>
				<td class="data p5px">11 May 2018</td>
				<td class="data p5px">12 May 2018</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Chandertal</td>
				<td class="data p5px">Spiti Expedition</td>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">Mapi</td>
			</tr>
			<tr>
				<td class="data p5px">12 May 2018</td>
				<td class="data p5px">13 May 2018</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Manali</td>
				<td class="data p5px">Spiti Expedition</td>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">Mapi</td>
			</tr>
		</table></div><br>						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.tanishhimachaltours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Beautiful Himachal Tour With 4 Adults - 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="128038"/>
						</form>
						</div>
						
						";i:1;s:76:"Book Beautiful Himachal Tour With 4 Adults - 8 Nights / 9 Days Tour Packages";i:2;s:151:"book beautiful himachal tour with 4 adults - 8 nights / 9 days tour packages, hill station tour packages, shimla, kinnaur, lahaul & spiti tour packages";i:3;s:189:"Tanish Himachal Tours offers Beautiful Himachal Tour With 4 Adults - 8 Nights / 9 Days tour package, budget Hill Station tour packages for Shimla, Kinnaur, Lahaul & Spiti at exciting price.";i:4;s:790:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Shimla, Kinnaur, Lahaul & Spiti"        
		                 },
		      "description": "Meal plan : Lunch 
NON VEG MEAL
Cabs : Non-AC 
Airfare 
Others : Other Exclusions (Car at disposal 
All kind of personal expenses such as tips, laundry, telephone bills and beverages. 
It also does not include any meals unless and otherwise specifically mentioned.. 
Optional, suggested or unspecified activities. 
Camera fee (still or movie)",
		      "name": "Beautiful Himachal Tour With 4 Adults",
		      "telephone": "+91-9736035555"
		    }
		    </script>
			";i:5;N;}