a:6:{i:0;s:36140:"				<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="h1"><h1>Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.arihanttravellam.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.arihanttravellam.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]</p> 
									
						<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> 
						8 Nights / 9 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Kullu, Manali, Shimla, Dharamshala</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.arihanttravellam.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] - 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="49747"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<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_13/379830/97224.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97224.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
																		<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_13/379830/97225.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97225.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
																		<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_13/379830/97228.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97228.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
																		<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_13/379830/97229.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97229.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
																		<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_13/379830/97230.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97230.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
																		<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_13/379830/97231.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97231.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
																		<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_13/379830/97232.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97232.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
																		<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_13/379830/97233.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/379830/97233.jpg"  width="150" height="150"    alt="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" title="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								HIMACHAL - INCREDIBLE,<br />
<br />
Is the package in which you will cover all the beauty of Himachal, here you will get so much enough time to create all the memorable moments and also get enough time for relaxation.<br />
<br />
In this package you will be able to cover all the beautiful place of Himachal like, Shimla - Kullu - Manali - Dharamshala - Delhousie, after cover all this place you will definitely find the most memorable days of your life,<br />
<br />
Here we will design & operate your package in such a way that you will complete your journey very comfortably, at the time of your arrival our expert will be there to pick you,<br />
<br />
Here you will get a private vehicle to cover all the things, which is in very good condition and also with well known driver who help you to cover all the things.<br />
<br />
Apart from this you will get accommodation facility at all the place. a very well luxurious hotel will be provided to you as per your budget in which you will find good comfort, also with very good quality food and very well mannered staff.<br />
<br />
Also the one more beauty of this package is that we can customize this package as per your budget, your time and as per your requirement. <br />
<br />
Just contact us once for more details & if any query.								</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> Chandigarh/Delhi To Shimla
										</p>
										<p class="aj">Upon your arrival at Chandigarh/Delhi Airport/Railway Station, board the car and drive to Shimla, a mesmerising destination. Snow-covered peaks, coniferous forests, streams, orchids and well-defined landscape in Shimla will make you admire the pristine beauty of nature. Blessed with natural glory, Shimla is also known for its colonial charm. The architecture, buildings and streets in this hill station remind of the era of British rule in India. During the British regime, Shimla was called as the Summer Capital of India.<br />
<br />
Check-in at the hotel and relax. Spend the evening at leisure and enjoy a comfortable 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 2:</b> Shimla (Kufri Trip)
										</p>
										<p class="aj">In the morning, enjoy your break fast and then go on a trip to Kufri. Famous for adventurous sports like skiing, trekking, hiking and mule-riding, Kufri is a beautiful hill station. You will be delighted to participate in the sports held at Kufri. You can also visit Mahasu Peak, the highest point at Kufri and take a spectacular view of natural surroundings. You can go there by hiking or mule-riding.<br />
<br />
At Kufri, you may also visit The Himalayan National Park where you can see numerous species of endangered birds and animals like musk deer, goral, snow leopards etc.<br />
<br />
After enjoying your time at Kufri, return to the hotel and take a nap. In the evening, go for a walk on the famous Mall Road and enjoy the pleasant weather. Enjoy a cosy overnight stay at the hotel.</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 To Kullu
										</p>
										<p class="aj">After break fast check out from the hotel and drive towards another beauty hill station Kullu,<br />
<br />
chech in to hotel, relax and fresh and then go out to enjoy beauty of  Kullu, you can visit so many tourist place in kullu like Tirthan Valley,<br />
Great Himalayan National Park, Kheer Ganga, Hot Springs at Manikaran, other lots of temple like bijli mahadev, Vaishno Devi etc.. also visit local market and enjoy shopping there. over night stay at hotel.</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> Kullu - Manali
										</p>
										<p class="aj">After break fast check out from the hotel and go ahead towards another beautiful hill station Manali. after reached at manali checked in and just relax and refresh and then go ahed for Sightseeing  of manali, <br />
<br />
Many of the interesting places to visit in this destination include Mall Road, Manali Sanctuary, Hadimba Devi Temple, Tibetan Monastery and Solang Valley. Surrounded by greenery from all sides, Hadimba Temple's three roof structure is widely appreciated.<br />
<br />
Visit famous monasteries in Manali and get an insight into the Buddhist culture. Also, you can buy some handicrafts and goodies for your loved ones from various shops dotted all across the hill station.<br />
<br />
After exploring this hill station, retire to the hotel and stay overnight.</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> Rohtang Pass Trip (On Direct Payment)
										</p>
										<p class="aj">Enjoy a beautiful morning in the lap of the nature and get ready to move towards Rohtang Pass. Owing to its picturesque surroundings, this pass serves as an ideal picnic spot for tourists and people from nearby areas. Surrounded by soaring snow-capped mountains, this pass is about 51 km away from Manali and remains remains open June to October; the rest of the year, it remains closed due to heavy snowfall.<br />
<br />
Situated at a height of 3978 m above sea level, it is considered as one of the highest motorable roads in the world. This glacial paradise is frequented by hordes of travellers from across the globe every year. If you are an adventure seeker, then you can indulge in different snow activities, such as paragliding, skiing and mountain biking over here. Otherwise, you can choose to enjoy the stunning views of the snow-clad peaks, glaciers and scenic vistas of this pass.<br />
<br />
Thereafter, return to the Manali in the evening and visit the Mall Road, which is lined with several shops, offering items like traditional handicrafts, woollen wear and other local items. In this market, you can also shop for souvenirs for your loved ones.<br />
<br />
This pass forms the major connectivity between the Kullu valley and Lahaul and Spiti Valleys of Himachal Pradesh. Sparkling glaciers, snow-capped mountains and pollution free environment makes the entire ambience romantic.<br />
<br />
After admiring the beauty of the nature, return to the hotel and freshen up. Later, go for a walk in the Mall Road, which is the hub of activity. Adore the beauty of the colonial architecture or buy some goodies for your loved ones. You can also savour local delicacies and sip in hot drinks while enjoying a stroll.<br />
<br />
Retire to the hotel for an 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 6:</b> Manali To Dharamshala
										</p>
										<p class="aj">In the morning, check-out from the hotel and proceed towards Dharamshala, an amazing hill station. Situated in the Dhauladhar ranges of Himalayas, Dharamshala is snow-laden all round the year.<br />
<br />
Upon your arrival at Dharamshala, check-in at the hotel and relax. Enjoy your evening at leisure and stay overnight at the hotel.</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> Dharamshala
										</p>
										<p class="aj">Wake up in the morning and check-out from the hotel. Go on a sightseeing tour to explore the important sites in Dharamshala. There are many places of religious and spiritual importance in this beautiful hill station.<br />
<br />
Visit Tibetan Medical Centre where you would find the practising of Sowa Rigpa to make medicinal pills. Sowa Rigpa is a Tibetan system of medicine, astrology and astronomy. You can also visit some local Tibetan monasteries and try out some meditation courses.<br />
<br />
Go to see St. John's Church which is an Anglican church constructed in the neo-Gothic style. This church is dedicated to St. John.<br />
<br />
At Kangra Art Museum, you will witness Dharamshala's past which is displayed through art and craft. You can shop for some colourful items at the Kotwali Bazar in Kangra.<br />
<br />
After a full day sightseeing tour, return back to the hotel and enjoy your evening at leisure. Stay overnight at the hotel.</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> Dharamshala To Delhousie
										</p>
										<p class="aj">In the morning, check-out from the hotel and drive to Dalhousie, another mesmerising destination. This beautiful hill station is named after Lord Dalhousie, the British Viceroy of India during 19th century. Located on five hills (Potreys, Skathlog, Tehra, Balun and Bakrota) in the Dhauladhar range of Himalayas, Dalhousie is blessed with a beautiful scenery of snow-covered peaks all around.<br />
<br />
After reached at hotel just relax and refresh and then proceed towards a sightseeing tour of Dalhousie, the land of natural beauty and colonial charm. You will get opportunities to explore many unique sites in Dalhousie.<br />
<br />
you can visit lots of places at Delhousie like Go to Ahla Village en route Kalatope and visit Bhulwani Mata Mandir. Afterwards, visit Kalatope which is a wildlife sanctuary and picnic spot.<br />
<br />
Panchpula, a stream formed by mountain springs, is another attraction in Dalhousie. It is known to be the main water supplier to Dalhousie. On the way to Panchpula, you will see Satdhara Springs, the water of whose is known to contain medicinal properties. At Panchpula, a monument in the remembrance of Sardar Ajit Singh is constructed. Sardar Ajit Singh, uncle of famous freedom fighter Shahid Bhagat Singh, was a revolutionary. This monument is the meeting point of several streams.<br />
<br />
You can visit Subhash Baoli, a seasonal spring in Dalhousie. This spring was named after the Subhash Chandra Bose, well known freedom fighter. It is said that he lived here for seven months and regained his health with the medicinal water of the spring.<br />
<br />
Bakrota Hills located in Chamba is a beautiful place which offers a superb view of snow-capped peaks of Himalayas. Here, you can visit the popular Bakrota Mall that offers a 5 km walk around the hill to allow you to take a panoramic view of mountains.<br />
<br />
After exploring the major attractions in Dalhousie, return to your hotel and take rest. Enjoy a comfortable overnight stay at the hotel.</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> Delhousie To Chandigarh/Delhi/Amritsar
										</p>
										<p class="aj">After break fast just check out from the hotel and going towards your return journey and reached at Chandigarh or Delhi or Amritsar as your planning to go back and board a flight or train and go back to safe and happy journey to your sweet home</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>Hotel</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">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</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.arihanttravellam.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] - 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="49747"/>
						</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.arihanttravellam.com/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.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.arihanttravellam.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/packages-in-kullu.htm" title="Packages in Kullu">Kullu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.arihanttravellam.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.arihanttravellam.com/packages-in-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.arihanttravellam.com/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.arihanttravellam.com/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</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.arihanttravellam.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</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.arihanttravellam.com/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</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.arihanttravellam.com/packages-in-pelling.htm" title="Packages in Pelling">Pelling</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.arihanttravellam.com/packages-in-bikaner.htm" title="Packages in Bikaner">Bikaner</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.arihanttravellam.com/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur</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.arihanttravellam.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.arihanttravellam.com/packages-in-mount-abu.htm" title="Packages in Mount Abu">Mount Abu</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.arihanttravellam.com/packages-in-kanyakumari.htm" title="Packages in Kanyakumari">Kanyakumari</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.arihanttravellam.com/packages-in-jaisalmer.htm" title="Packages in Jaisalmer">Jaisalmer</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.arihanttravellam.com/packages-in-chittorgarh.htm" title="Packages in Chittorgarh">Chittorgarh</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.arihanttravellam.com/packages-in-kalimpong.htm" title="Packages in Kalimpong">Kalimpong</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.arihanttravellam.com/packages-in-ajmer.htm" title="Packages in Ajmer">Ajmer</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.arihanttravellam.com/packages-in-pushkar.htm" title="Packages in Pushkar">Pushkar</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.arihanttravellam.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.arihanttravellam.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.arihanttravellam.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.arihanttravellam.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(2)</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 Kullu, Manali, Shimla, Dharamshala</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.arihanttravellam.com/tour-packages/himachal-delight1-shimla-kullu-manali-delhi-chandigarh1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_13/379830/97246.jpg"  alt="Himachal Delight 1 [Shimla-Kullu-Manali-Delhi/Chandigarh]" title="Himachal Delight 1 [Shimla-Kullu-Manali-Delhi/Chandigarh]"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.arihanttravellam.com/tour-packages/himachal-delight1-shimla-kullu-manali-delhi-chandigarh1.htm" title="Himachal Delight 1 [Shimla-Kullu-Manali-Delhi/Chandigarh]"><h3>Himachal Delight 1 [shimla-kullu-manali-de..</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, New Delhi, Kullu, Manal..</p>
															<div class="mt10px small">
							<form name="pkg_49754" id="pkg_49754" method="post" action="http://www.arihanttravellam.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.arihanttravellam.com/tour-packages/himachal-delight1-shimla-kullu-manali-delhi-chandigarh1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Himachal Delight 1 [Shimla-Kullu-Manali-Delhi/Chandigarh] - 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="49754"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.arihanttravellam.com/tour-packages/himachal-delight2-dharamshala-delhousie-delhi-chandigarh-amritsar-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_13/379830/97270.jpg"  alt="Himachal Delight 2 [Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] Tour" title="Himachal Delight 2 [Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.arihanttravellam.com/tour-packages/himachal-delight2-dharamshala-delhousie-delhi-chandigarh-amritsar-tour.htm" title="Himachal Delight 2 [Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] Tour"><h3>Himachal Delight 2 [dharamshala-delhousie-..</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> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Chandigarh City, New Delhi, Dharamshala,..</p>
															<div class="mt10px small">
							<form name="pkg_49757" id="pkg_49757" method="post" action="http://www.arihanttravellam.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.arihanttravellam.com/tour-packages/himachal-delight2-dharamshala-delhousie-delhi-chandigarh-amritsar-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Himachal Delight 2 [Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] 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="49757"/>
							</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:130:"Book Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] - 8 Nights / 9 Days Tour Packages";i:2;s:210:"book himachal - incredible [shimla-kullu-manali-dharamshala-delhousie-delhi/chandigarh/amritsar] - 8 nights / 9 days tour packages, lakes & rivers tour packages, kullu, manali, shimla, dharamshala tour packages";i:3;s:259:"Book Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar] - 8 Nights / 9 Days tour packages from Arihant Travellam - Get attractive 8 Nights / 9 Days Lakes & Rivers  tour packages for  Kullu, Manali, Shimla, Dharamshala.";i:4;s:1721:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kullu, Manali, Shimla, Dharamshala"        
		                 },
		      "description": "HIMACHAL - INCREDIBLE,

Is the package in which you will cover all the beauty of Himachal, here you will get so much enough time to create all the memorable moments and also get enough time for relaxation.

In this package you will be able to cover all the beautiful place of Himachal like, Shimla - Kullu - Manali - Dharamshala - Delhousie, after cover all this place you will definitely find the most memorable days of your life,

Here we will design & operate your package in such a way that you will complete your journey very comfortably, at the time of your arrival our expert will be there to pick you,

Here you will get a private vehicle to cover all the things, which is in very good condition and also with well known driver who help you to cover all the things.

Apart from this you will get accommodation facility at all the place. a very well luxurious hotel will be provided to you as per your budget in which you will find good comfort, also with very good quality food and very well mannered staff.

Also the one more beauty of this package is that we can customize this package as per your budget, your time and as per your requirement. 

Just contact us once for more details & if any query.",
		      "name": "Himachal - Incredible [Shimla-Kullu-Manali-Dharamshala-Delhousie-Delhi/Chandigarh/Amritsar]",
		      "telephone": "+91-9033481665"
		    }
		    </script>
			";i:5;N;}