a:6:{i:0;s:35679:"				<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">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-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 "><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 "><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 "><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 "><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-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-manali.htm" title="Packages in Manali">Manali</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-alleppey.htm" title="Packages in Alleppey">Alleppey</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-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 spanlist dn"><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 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-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-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-pushkar.htm" title="Packages in Pushkar">Pushkar</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-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-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-pelling.htm" title="Packages in Pelling">Pelling</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;}