a:6:{i:0;s:21666:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Shimla Manali Package</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.travelrightpackages.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelrightpackages.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Shimla Manali Package</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> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Manali, Shimla</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.travelrightpackages.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Shimla Manali Package - 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="190744"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_21/626469/300347.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_21/626469/300347.jpg"  width="150" height="92"    alt="Shimla Manali Package" title="Shimla Manali Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<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> Chandigarh- Shimla ( 120 Kms/ 4 Hrs )
										</p>
										<p class="aj">On Arrival at Chandigarh Airport . Our driver will pick you. and transfer to Shimla by Personal Car. Situated in the North-west Himalayas, Shimla is the capital of Himachal Pradesh. Simla (now spelled Shimla) was the glorious summer resort of the British Raj, famous for its snowcapped peaks, apples, and pine forest, flowers and gentle smiling people. On arrival check in hotel. Overnight stay at Hotel.. Overnight stay at Hotel.<br />
Meals - Dinner</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> Shimla – Kufri – Shimla
										</p>
										<p class="aj">After a scrumptious breakfast, leave the hotel for an excursion to Kufri. It is a small hill station in Himachal Pradesh, which is widely acknowledged for its undulating mountain terrains and lush greenery.<br />
One of the most prominent attractions of this place includes the Himalayan Wildlife Zoo, which is home to a variety of rare species of wild animals and birds. Also, this destination has an amusement park, which is an ideal place to spend quality time with family and friends.<br />
After enjoying a sightseeing tour of Kufri, return proceed for a leisure walk in the beautiful Mall Road of Shimla. This road, constructed during British colonial rule, has numerous showrooms, shops, eateries and cafés.Evening Back to Hotel Overnight stay.<br />
<br />
Shimla Sightseeing Places <br />
Kufri<br />
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 name Kufri is derived from the word kufr meaning "lake" in the local language.<br />
Adventure Resort,<br />
Adventure Resorts New Kufri HIMACHAL’S FIRST ADVANCED AMUSEMENT PARK surrounded with great Hiking, skiing, beautiful scenes and loads of adventure that’s all about Kufri Fun campus. which is famous for Zip Line 200M,Swing it, Mini Skater, Kangaroo Jump, Wave Train, Smash Car etc..<br />
Jakhoo Temple<br />
Jakhoo Temple is an ancient temple in Shimla, dedicated to Hindu deity, Hanuman. It is situated on Jakhoo Hill, 2.5 km /1.3 miles east from the Ridge, Shimla at a height of 2,455 m above sea level<br />
The Ridge<br />
The Ridge road is a large open space, located in the heart of Shimla, the capital city of Himachal Pradesh, India. The Ridge is the hub of all cultural activities of Shimla.<br />
Christ Church<br />
Christ Church, Shimla, is the second oldest church in North India, after St John's Church in Meerut. It is a parish in the Diocese of Amritsar in the Church of North India <br />
The Mall<br />
Mall Road is the main street in Shimla, the capital city of Himachal Pradesh, India. Constructed during British colonial rule, the Mall road is located a level below the ridge.<br />
Green Valley View<br />
Green Valley is a picnic spot in Shimla, the summer capital of India during the British regime. It lies on National Highway 22, 7 km away from Shimla on the way to Kufri Hill station. This site is easily noticeable for those who are travelling from Shimla to Kufri. As the name suggests this valley surrounded by small mountains with pine forests is as green as one can imagine.<br />
Meals - Bed Tea, Breakfast, Dinner<br />
​</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> Shimla – Manali ( 280 Kms / 8 Hrs)
										</p>
										<p class="aj">After Breakfast, check out hotel and depart for Manali. Drive past Beas-Sutlej Link project, Pandoh Dam and Kullu Valley. Lunch shall be en-route on direct payment basis.<br />
At the northern end of the Kullu valley sits the ancient site, but modern town, of Manali. It is a pleasant, if overdeveloped, town with lovely forests and orchards nearby for hiking, and good facilities for visitors. In the 1970s and 1980s, Manali was very much a 'scene'. In summer, the town would attract numerous western hippies and travelers drawn by the high quality marijuana that grows in the area<br />
Evening on arrival check in the hotel overnight stay</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> Manali – Rohtang Pass / Snow Point - Manali - (Direct Payment Basis) ​
										</p>
										<p class="aj">After Breakfast, proceed for a full day trip to Rohtang Pass reroute visit Rahala Water Falls and Rani Nullah falls Solang Valley. Over Night Stay at Hotel.<br />
Rohtang Pass (3979 m): Rohtang pass is 51kms. From Manali on highway to Leh. It offers a panorama and spectacular view of Mountains. The pass is open from May to October each year although trekkers can cross it earlier. It is a gateway to Lahaul Spiti, Pangi and Leh valley. There are beautiful sights of glaciers, peaks and Chandra river flows down in the Lahaul valley. ( If Rohtang Will be Closed We will show you Solang Valley where you can enjoy skiing, zorbing, paragliding and many more adventures sports )<br />
​<br />
<br />
Rahala Water Falls: 16kms. On the way to Rohtang pass. If one goes to Marhi on foot from Kothi from the old road, the sight of the falls is fascinating. It is a good picnic spot as well.<br />
Meals - Bed Tea, Breakfast, Dinner</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> Manali Sightseeing
										</p>
										<p class="aj">After Breakfast leave for Half day Local sightseeing covering Hadimba Devi temple, Vashish Kund, Club House, Buddhist monastery. Over Night Stay at the Hotel<br />
Places to Visit in Manali<br />
Hadimba Temple is dedicated to the wife of Bhim, one of the five Pandava brothers in the Indian epic Mahabharata. As the legend goes, Bhim married Hadimba and they had a son. Later on, Hadimba left the place and became a spiritual. <br />
Manu Temple which is believed to be the only temple of Manu in India, who is considered as the creator of the human race on earth. Located at a distance of 3 km from the main bazaar in Old Manali, the temple is believed to be the abode of Manu, the ancient law-giver of India, <br />
Vashist springs and temple in a tiny hamlet situated on the bank of Beas River that turns towards Rohtang. It is well known for its hot sulphur springs and temples. Taking a dip in this water is considered sacred by many. Nearby is the pyramidal stone temple devoted to Vashist Muni, a revered sage, Nehru Kund is a natural spring in the region. Located at a distance of around 6 km from Manali, it has been named after the late Prime Minister Jawahar Lal Nehru. The Kund has derived its name from Nehru, as he used to drink water from it, on his journey to Manali, <br />
The Manali Gompa which serves as an important gathering place for Buddhists from Lahaul, Spiti, Kinnaur, Ladakh, Nepal and Tibet. Built in the 1960s, the new monastery is famous for its wall paintings, Chortens and a large statue of Lord Buddha, <br />
Van Vihar which is a municipal garden is situated in front of the Tibetan market on Mall Road. In the lake located within the park, tourists can opt for boating. The park is adorned with big deodar trees. Evening free for strolling on Mall Road and Shopping in local Market. Late evening drive back to hotel. Dinner and night stay in hotel at Manali. Dinner at hotel. Night Hotel in Manali.<br />
Meals - Bed Tea, Breakfast, Dinner</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> Manali – Chandigarh ( 310 Kms / 8 Hrs)
										</p>
										<p class="aj">After Breakfast, Check out hotel Drive to Chandigarh Enroot visit Vaishno devi Temple in Kullu. On arrival Chandigarh, Drop at Chandigarh Airport<br />
<br />
Meals - Bed Tea, Breakfast, Dinner</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>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</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></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelrightpackages.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Shimla Manali Package - 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="190744"/>
						</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.travelrightpackages.com/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/guwahati-tour-packages.htm" title="Guwahati Tour Packages">Guwahati</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/coonoor-tour-packages.htm" title="Coonoor Tour Packages">Coonoor</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">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.travelrightpackages.com/havelock-tour-packages.htm" title="Havelock Tour Packages">Havelock</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/port-blair-tour-packages.htm" title="Port Blair Tour Packages">Port Blair</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/udaipur-tour-packages.htm" title="Udaipur Tour Packages">Udaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/shillong-tour-packages.htm" title="Shillong Tour Packages">Shillong</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.travelrightpackages.com/ooty-tour-packages.htm" title="Ooty Tour Packages">Ooty</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.travelrightpackages.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</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.travelrightpackages.com/mysore-tour-packages.htm" title="Mysore Tour Packages">Mysore</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.travelrightpackages.com/singapore-city-tour-packages.htm" title="Singapore Tour Packages">Singapore</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.travelrightpackages.com/agra-tour-packages.htm" title="Agra Tour Packages">Agra</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.travelrightpackages.com/cherrapunji-tour-packages.htm" title="Cherrapunji Tour Packages">Cherrapunji</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.travelrightpackages.com/jodhpur-tour-packages.htm" title="Jodhpur Tour Packages">Jodhpur</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.travelrightpackages.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.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 "><a class="dif" href="http://www.travelrightpackages.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 "><a class="dif" href="http://www.travelrightpackages.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.travelrightpackages.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.travelrightpackages.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></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:60:"Book Shimla Manali Package - 5 Nights / 6 Days Tour Packages";i:2;s:118:"book shimla manali package - 5 nights / 6 days tour packages, hill station tour packages, manali, shimla tour packages";i:3;s:147:"Travel Right offers Shimla Manali Package - 5 Nights / 6 Days tour package, budget Hill Station tour packages for Manali, Shimla at exciting price.";i:4;s:407:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Manali, Shimla"        
		                 },
		      "description": "",
		      "name": "Shimla Manali Package",
		      "telephone": "+91-9620563189"
		    }
		    </script>
			";i:5;N;}