a:7:{i:0;s:83086:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Himachal With Amritsar 10 Days / 09 Nights</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.pramukhtours.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.pramukhtours.com/travel-packages.htm" title="Travel Packages">Travel Packages</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> Himachal With Amritsar 10 Days / 09 Nights</p>
					</div>
					</div>
					</div>
					<script>jQuery('#breadcrumbA').append(jQuery('#append2PageTittle').html());jQuery('#append2PageTittle').remove()</script>
									<section id="middle" class="propDtls ttwBtmFtSpace">
				<div class="wrap thinFormat " id="bodyFormatNT">
								
				<div class="row1 dt columns23"><!--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>
				
					<div class="data mb15px mt15px p10px"> 
	 				<div class="fo dt w100"> 	 				
	 											<div class="dtc vat ttw-detail pr20px pr lh0">
							<div class="headVr bdr0 pr">
							<ul class="lsn carousel_new" id="customize">
																	<li class="ac pr">
										<div class="lh0 pa blur-bg" style="background-image:url(https://ttw.wlimg.com/package-images/photo-big/dir_15/424442/204502.jpg);"></div>
										<div class="imgFrame m0a dib bdr pr"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_15/424442/204502.jpg"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_15/424442/204502.jpg"  height=""  width=""    alt="Himachal with Amritsar 10 Days / 09 Nights" title="Himachal with Amritsar 10 Days / 09 Nights" ></a></div>
										</li>
																	</ul>
							<div class="slContSec"><span class="large data c30px p7px" id="slideCount">1/1</span></div>
							<script>
							$(document).ready(function() {
							var tnsCarousel = $('.carousel_new');
							tnsCarousel.each(function() {
							var tnsSlider = tns({
							// 'container': '.carousel_new',
							  'container': '#customize',
							  'axis': 'horizontal',
							  'speed': 1000,
							  'items': 1,
							  'loop': true,   
							  'autoplayHoverPause': true,
							  'mouseDrag': true,
							  'nav': false,
							  'autoplayButtonOutput': false,     
							  'autoplay': true,
							  'autoplayTimeout': 4000,  
							  'swipeAngle': false,   
							});
							tnsSlider.events.on('transitionStart', function (info, eventName) {
								var info = tnsSlider.getInfo(),
							      indexPrev = info.indexCached,
							      indexCurrent = info.index;
								  if(indexCurrent=='0'){indexCurrent=info.slideCount}else if(indexCurrent>info.slideCount){indexCurrent='1'}
							  $('#slideCount').text(indexCurrent + '/' + info.slideCount);
							});
							
							});
							});
							</script>
							</div>
							</div>
												<div class="dtc pt7px ttwDtlsCont">
					<div class="adrsDtls">
											<div class="xxlarge fw6 mb7px lh13em">Himachal with Amritsar 10 Days / 09 Nights</div>
											<div class="ShareDropdown">		
					<div class="copyLinkPopup">Link Copied</div>	  
					<span class="data"><i class="fa fa-share-alt xxlarge vam"></i></span>
					<ul class="shareList data bdr0">
					<li><a target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https://www.pramukhtours.com/tour-packages/himachal-with-amritsar10-days09-nights.htm" class="facebook" title="Facebook"><i class="fa fa-facebook-official"></i></a></li> 
					<li><a target="_blank" href="https://www.instagram.com/?url=https://www.pramukhtours.com/tour-packages/himachal-with-amritsar10-days09-nights.htm" class="instagram" title="Instagram"><i class="fa fa-instagram"></i></a></li>
					<li><a target="_blank" href="https://wa.me/?text=https://www.pramukhtours.com/tour-packages/himachal-with-amritsar10-days09-nights.htm" class="whatsapp" title="Whatsapp"><i class="fa fa fa-whatsapp"></i></a></li>  
					<li><a target="_blank" href="https://twitter.com/intent/tweet?text=Himachal with Amritsar 10 Days / 09 Nights&url=https://www.pramukhtours.com/tour-packages/himachal-with-amritsar10-days09-nights.htm" class="twitter" title="Twitter"><img src="https://catalog.wlimg.com/mobile/social-networking-img/1002.svg" alt="Twitter" style="width:22px;height:22px;vertical-align:middle;margin-right:6px;"></a></li> 
					<li><a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.pramukhtours.com/tour-packages/himachal-with-amritsar10-days09-nights.htm&title=Himachal with Amritsar 10 Days / 09 Nights" class="linkedin" title="Linkedin"><i class="fa fa-linkedin-square"></i></a></li>
					<li><a target="_blank" href="https://pinterest.com/pin/create/button/?url=https://www.pramukhtours.com/tour-packages/himachal-with-amritsar10-days09-nights.htm&description=Himachal with Amritsar 10 Days / 09 Nights" class="pinterest" title="Pinterest"><i class="fa fa-pinterest-square"></i></a></li>
					<li><a href="javascript:;" title="Copy Link" class="copy" onclick="copyURL()"><i class="fa fa-clone"></i></a></li>
					</ul>
					</div>
					</div>
					<script>
					$(document).ready(function(){
					$('.ShareDropdown span').click(function(){
					 $('.ShareDropdown').toggleClass("active");
					}); 
					});
					</script>
					<script>
					  function copyURL() {
					    const url = window.location.href;
						const textarea = document.createElement("textarea");
						textarea.value = url;
						textarea.style.position = "fixed";
						document.body.appendChild(textarea);
						textarea.focus();
						textarea.select();
				
						try {
						  document.execCommand("copy");
						//  alert("URL copied (fallback)!");
						  $(".copyLinkPopup").show();		 
				          setTimeout(function(){$(".copyLinkPopup").hide();}, 2000);
					      $('.ShareDropdown').removeClass("active");
						  
						} catch (err) {
						  console.error("Fallback copy failed:", err);
						}
				
						document.body.removeChild(textarea);
					  }
					</script>
											<p class="mb5px"><b>Duration :</b> 
						9 Nights / 10 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Shimla, Manali, Dharamshala, Dalhousie, Amritsar, Kufri, Solang Valley</p>
												<p class="mb5px"><b>Tour Activities :</b> Paragliding, Skiing, Sightseeing</p>
												<p class="mb5px"><b>Tour Themes : </b>Religious & Pilgrimage</p>
												<div class="fo mt20px mb20px ac xxlarge">
          				<p class="xxlarge b dif mb2px">
						<i class="fa fa-inr"></i> 23900						</p>
						<p class="xxsmall alpha50">Per Person</p>
          				</div>
											<div class="ac">
					<form class="inquiry-form" name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.pramukhtours.com/enquiry-form-10028.htm">
					<input type="hidden" name="subject" value="Himachal with Amritsar 10 Days / 09 Nights - Tour Package"/>
					<input type="hidden" name="allocate_type" value="tour"/>							
					<input type="hidden" name="pkg_slno" value="127488"/>
					</form>
					<a href="javascript:;" class="submit-inquiry button p10px20px c5px ts0 xlarge dib fw6">Inquire Now for Best Deals</a>
					
										</div>
					<br />
										</div>
	   				</div>
					</div>
											<div class="mt7px dif small mb15px">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
														<section id="s1">
								<div class="data mt20px mb20px m_p25px lh2em">      
								<div class="xxlarge mb10px">
												   					<h2 class="fw7">New Delhi, Shimla and Manali Tour Overview</h2>
				   													</div>
								<p class="large">					
								Airfares Train fare.<br />
Any monastery entrance fees, Any Joy ride or rafting.<br />
Rohtang Pass Not Included.<br />
Medical expenses (apart from first aid) and insurance of any kind.<br />
Tips, laundry, liquors, wines, mineral water, telephone charges, camera fee and items of personal nature.<br />
Transportation is not on disposal basis. It is strictly as per the programme, any extra running will be charges extra.<br />
Any expenses arising out of unforeseen circumstances like flight delay / cancellation / hike in fare, strike, curfew or any other natural calamities (like: road block) or any emergency evacuation expenses. If there is any change in itinerary due to the above circumstance, guest will have to pay directly over there as per uses.<br />
There is no refund if the tour not complete due to reason of any natural calamities.<br />
Any other item not mentioned in the cost includes section,""Table drinks, Rohtang pass, laundry, porter, pony, tips, camera fee, room heater, rope - way charges, entrance charges, travel insurance, personal expenses of the clients or any other expenses incurred due to bad weather, road closure, landslides etc. and anything not specified in cost include. ,Entry Fees,"".<br />
GST 5%"<br />
Note: - Rohtang pass not included.								</p>
								</div>
								</section>
																<section id="s2" class="mt15px">
								<div class="data mb20px m_p25px">
		  						<div class="fw7 xxlarge">
		  										   					<h2 class="fw7">New Delhi, Shimla and Manali Tour Itinerary</h2>
				   							  						</div>
					            <div class="tour-details-view mt22px">
					            
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 1</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px on"><a href="javascript:;" class="clickable db"><h3>Delhi - Shimla</h3>
										<span class="fr pr10px"><i class="fa fa-angle-up"></i></span></a>
										</div>
										<div class="pro-detail mb15px ">After arriving at the Delhi airport/ railway station, our tour representative meets you and helps you with an assisted transfer to Shimla, by road. After reaching Shimla, check-in at the hotel. Evening at leisure. Shimla: Fondly referred to as the “Queen of Hills’ Shimla is the capital city of Himachal Pradesh, which boasts of mesmerizing scenery and a laid-back atmosphere. It is flocked by tourists all-round the year. During your leisure time, explore the nearby places on your own such as visiting the Mall, the Ridge and so on. Stay overnight.					
											<div class="mt10px"><b>Meals : </b> DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 2</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Excursion to Kufri</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">Post breakfast on the 2nd day, get ready for a day’s excursion to Kufri, around 13 km away. The small hill town of Kufri is an ideal holiday retreat where one can enjoy yak and horse riding. Adventure enthusiasts can trek up to Mahasu Peak. During the winter season, the place becomes all the more enchanting and turns into a skiing retreat. Back to Shimla in the afternoon. Have a leisure walk at the Mall Road while enjoying the tourist activities going on. Overnight in Shimla.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 3</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Shimla - Manali</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">After breakfast transfers to Manali. Manali is one of the most popular hill stations of India. Upon arriving, complete the check- in formalities at the hotel. The evening is at leisure. Flocked by honeymooners and family vacationers all around the year, Manali is dotted with a number of attractions. Stay overnight.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 4</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Excursion to Manali</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">After breakfast proceed for a full day excursion to Solang Valley. Solang Valley is well known for adventure activities like – paragliding, zorbing, snow scooter and ATV rides. You can take a cable car ride in Solang Nalah. On the way back to Manali take a hot bath in hot springs in Vashisht. Dinner and night stay at the hotel in Manali					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 5</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Sightseeing in Manali</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">Today, get all set for visiting the prime attractions of Manali. Visit Hadimba Devi Temple- an ancient temple around 450 years old that is dedicated to Hadimba Devi wife of one of the Pandava brothers Bhim. Later in the day explore the Tibetan Monastery and the handicraft centre. Take a walk up to the old Vashisht village. Back to the hotel for dinner and night Stay.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 6</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Manali - Dharamshala</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">After breakfast, hit the road to Dharamshala. On the way, let the cool breeze come while treating your eyes to the scenic, spread all around. After arrival in Dharamshala, check-in the hotel. Spend the evening as per your own. The peaceful hill town of Dharamshala is an ideal holiday destination that boasts of lush greenery, fresh air, thick green forests and a number of attractions. Stay overnight.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 7</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Dharamshala - Dalhousie</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">After breakfast proceed to visit the prime attractions of Dharamshala including the Tibetan Medical Centre for Cancer- various ailments are treated here using rare Buddhist medicines that have herbal ingredients, Church of St. John- an Anglican church-also known as St. John in the Wilderness that was constructed way back in the year 1852, the popular local monasteries where you can try meditation later proceed to Dalhousie, another beautiful hill station. On arriving, check-in at the hotel. The evening is free. Founded by Lord Dalhousie in 1854, Dalhousie boasts of a relaxed feel, cool fresh breeze verdant expanses of green and a pleasant climate. You are free to explore the place on your own. Overnight in Dalhousie.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 8</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Dalhousie</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">After breakfast proceed for full day sightseeing of Dalhousie, including attractions like Panchpula- a nice picnic spot with gushing streams and waterfalls etc, Subash Baoli- flanked by trees this Baoli is named after freedom fighter Subash Chandra Bose who supposedly meditated here, Bara Pathar- a popular temple of the region that is dedicated to Bhulwani temple, St. John’s Church- dedicated to St. John, this church was built in the year 1863 and Bakrota Hills- for enjoying a pleasant weather during a leisure walk and some great views of the surrounding. Overnight stay in Dalhousie.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 9</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Dalhousie to Amritsar</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">After Breakfast we checkout from Dalhousie and proceed to Amritsar by road. On arrival check in at hotel and later visit Indo-Pak Wagah Border to Witness Flag Retreat Ceremony- Wagah, an army outpost on Indo-Pak border 30 Kms from Amritsar where the daily highlight is the evening "Beating the Retreat" ceremony. Soldiers from both countries march in perfect drill, going through the steps of bringing down their respective national flags. As the sun goes down, nationalistic fervor rises and lights are switched on marking the end of the day amidst thunderous applause. Return to hotel. Overnight stay in Amritsar.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST   &   DINNER</div>
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 10</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Amritsar to Delhi</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">Today after breakfast we either take drop to Delhi which takes 10hrs. Or we can take drop at Amritsar also. Drop at Airport / Railway Station. Tour Ends.					
											<div class="mt10px"><b>Meals : </b> BREAK FAST</div>
										</div> 
										</div>  
			 							</div>								</div>
								</div>
								<script>
								jQuery('.fancybox').fancybox();
								  jQuery(document).ready(function() {
								  jQuery('[data-fancybox]').fancybox({
								  thumbs : {
								  autoStart : true,
								  axis      : 'x'
								  }
								  });
								});
								</script>
								<script>
								jQuery(document).ready(function() {
								//jQuery('.pro-detail').css('display','none');
								jQuery(".sub-title").click(function(){
									var $this = jQuery(this);
									  jQuery('.w-title').addClass('h15px',400);
									  $this.find('.w-title').removeClass('h15px',400);
									  if($this.hasClass('on')){
										$this.removeClass('on');
										$this.next().slideUp();          	
									  } else {
										jQuery(".sub-title").removeClass('on');
										jQuery('.pro-detail').slideUp();
										$this.addClass('on');
										$this.next().slideDown(); 
									  }		  
									  if($this.find('i').hasClass('fa-angle-up')){
										$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
									  } else {
										$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
									  }
									});
								});
								</script>
								</section>
															<div class="xxlarge mt10px mb10px dib">
										   					<h2 class="fw7">More Details about New Delhi, Shimla and Manali Tour</h2>
			   												</div>
															<section id="s3">
								<div class="data mb20px m_p25px large">
								<div class="mb7px"> 
								<p class="fw7 xxlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>MAP (Room + Breakfast + Lunch/Dinner)</li>
																						<li>Hotel</li>
																						<li>Sightseeing</li>
																				<li>All transfers and sightseeing by Private AC Vehicle. (AC won’t work on hills)</li><li>
Accommodation on twin sharing.</li><li>
Breakfast & Dinner.</li><li>
All road tax, state tax, Toll, parking, fuel and Driver Bata.</li>
																	</ul>
								</div>
								</section> 
																<section id="s4">
								<div class="data mb20px m_p25px large">
								<div class="mb7px"> 
								<p class="fw7 xxlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Airfares Train fare.</li><li>
Any monastery entrance fees, Any Joy ride or rafting.</li><li>
Rohtang Pass Not Included.</li><li>
Medical expenses (apart from first aid) and insurance of any kind.</li><li>
Tips, laundry, liquors, wines, mineral water, telephone charges, camera fee and items of personal nature.</li><li>
Transportation is not on disposal basis. It is strictly as per the programme, any extra running will be charges extra.</li><li>
Any expenses arising out of unforeseen circumstances like flight delay / cancellation / hike in fare, strike, curfew or any other natural calamities (like: road block) or any emergency evacuation expenses. If there is any change in itinerary due to the above circumstance, guest will have to pay directly over there as per uses.</li><li>
There is no refund if the tour not complete due to reason of any natural calamities.</li><li>
Any other item not mentioned in the cost includes section,""Table drinks, Rohtang pass, laundry, porter, pony, tips, camera fee, room heater, rope - way charges, entrance charges, travel insurance, personal expenses of the clients or any other expenses incurred due to bad weather, road closure, landslides etc. and anything not specified in cost include. ,Entry Fees,"".</li><li>
GST 5%"</li><li>
Note: - Rohtang pass not included.</li></ul>
								</div>
								</section>
																<section id="s5">
								<div class="data mb20px m_p25px large">          
								<div class="mb7px"> 
								<p class="fw7 xxlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* 50% Advance Percentage of total booking amount</li></ul>					
								</div>
								</section>
														<section id="s6">
						<div class="data mb20px m_p25px large res_table">            
						<div class="mb7px"> 
						<p class="fw7 xxlarge mb10px dib">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p10px20px formTable">
				        	<tr class="headVr b">
			                	<th class="p15px al">No of pax</th>
			                    <th class="p15px al">Age Limit</th>
			                    <th class="p15px al">Price per pax (Rs)</th>
			                </tr>

															<tr>
				            	<td class="p15px"><span class="fw6 tblTitle">No of pax </span> Adult</td>
				                <td class="p15px"><span class="fw6 tblTitle">Age Limit </span> Above 12 years</td>
				                <td class="p15px"><span class="fw6 tblTitle">Price per pax (Rs) </span> 
			                				                		<b class="webrupee">INR</b>
			                					                	<b>23900</b> <small>/
			
			                		Adult			
			                	( With Tax )			
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
						</section>
					 								<section id="s7">
							<div class="data mb20px m_p25px large">             
							<div class="mb7px"> 
							<p class="fw7 xxlarge mb10px dib">MINIMUM PAX</p>
							</div>
									
							<ul><li>RATE VALID FOR MINIMUM 6 PERSON TRAVELLING TOGATHER</li></ul>			
							</div>
							</section>
													<section id="s8">
						<div class="data mb20px m_p25px large">             
						<div class="mb7px"> 
						<p class="fw7 xxlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount. </li><li>
* Retention Amount varies as per the number of days left before your package start date.</li></ul>			
						</div>
						</section>
												<section id="s9">
						<div class="data mb20px m_p25px large">            
						<div class="mb7px"> 
						<p class="fw7 xxlarge mb10px dib">Packages by Theme</p>
						</div>
													<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/mountaineering-holidays-catid.htm" title="Mountaineering Tour Packages">Mountaineering Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/sightseeing-holidays-catid.htm" title="Sightseeing Tour Packages">Sightseeing Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/adventure-holidays-catid.htm" title="Adventure Tour Packages">Adventure Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/paragliding-holidays-catid.htm" title="Paragliding Tour Packages">Paragliding Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/rock-climbing-holidays-catid.htm" title="Rock Climbing Tour Packages">Rock Climbing Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/hill-station-holidays-catid.htm" title="Hill Stations & Valleys Tour Packages">Hill Stations & Valleys Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/boating-holidays-catid.htm" title="Boating Tour Packages">Boating Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/river-rafting-holidays-catid.htm" title="River Rafting Tour Packages">River Rafting Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/parasailing-holidays-catid.htm" title="Parasailing Tour Packages">Parasailing Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.pramukhtours.com/monuments-historical-places-holidays-catid.htm" title="Monuments & Historical Places Tour Packages">Monuments & Historical Places Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px spanlist dn"><a  href="https://www.pramukhtours.com/skiing-holidays-catid.htm" title="Skiing Tour Packages">Skiing Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px spanlist dn"><a  href="https://www.pramukhtours.com/beach-islands-holidays-catid.htm" title="Beaches and Islands Tour Packages">Beaches and Islands Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px spanlist dn"><a  href="https://www.pramukhtours.com/water-sports-activity-holidays-catid.htm" title="Water Sports Tour Packages">Water Sports Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px spanlist dn"><a  href="https://www.pramukhtours.com/trekking-holidays-catid.htm" title="Trekking Tour Packages">Trekking Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px spanlist dn"><a  href="https://www.pramukhtours.com/horse-riding-holidays-catid.htm" title="Horse Riding Tour Packages">Horse Riding Tours</a></span>
														<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:;" >View More</a></span>
													</div>
						</section>
												
						<div class="ac mb10px">
						<form class="inquiry-form" name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.pramukhtours.com/enquiry-form-10028.htm">
						<input type="hidden" name="subject" value="Himachal with Amritsar 10 Days / 09 Nights - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>							
						<input type="hidden" name="pkg_slno" value="127488"/>
						</form>
						<a href="javascript:;" class="submit-inquiry button p10px20px w150px fw6 large dib ttu ts0">Book Your Tour</a>
						</div>
											<div id="myModal" class="modal fade dn pf" role="dialog" style="z-index:9999;left:0;top:0%;width:100%;height:100%;background-color:rgba(0,0,0,0.6);overflow-x: hidden; overflow-y: auto;">
					    <!-- Modal content-->
					    <div style="max-width:380px;margin-top: 50px;min-height:400px;" class="modal-content data m0a p10px pr">
					      <div class="modal-header">
					        <a style="right:25px;top:25px;" class="pa b xxxlarge" data-dismiss="modal"><span class="xlarge">&times;</span></a>	        
					      </div>
					      <div class="modal-body">
					        <p>Loading...</p>
					      </div>
					      <div class="modal-footer">
					        
					      </div>
					    </div>
					</div>
					<script type="text/javascript">
						jQuery(document).ready(function(){
							jQuery(document).on("click", ".submit-inquiry" , function(e){e.stopPropagation()
								var form = jQuery(this).parent().find(".inquiry-form");
								if(form.length){
									jQuery.ajax({
										url: form.attr("action"),
										type: form.attr("method"),
										data:form.serialize(),
										crossDomain:true,
										success:function(res){
											jQuery("#myModal .modal-body").html(res);
										}
									});
								}
							});
							jQuery(document).on("click", "[data-dismiss=modal]", function(){
								jQuery("#myModal .modal-body").html("<p>Loading...</p>");
								jQuery("#myModal").hide();
							});
							jQuery(document).on("submit", "form[name=static_form]", function(e){				
								e.preventDefault();
								var isValidForm =static_inq_form_validate(jQuery(this).attr("form-id"));
								if(isValidForm == undefined){
									var form = jQuery(this);
									if(form.length){
										jQuery.ajax({
											url: form.attr("action"),
											type: form.attr("method"),
											data:form.serialize(),
											crossDomain:true,
											beforeSend:function(){
												jQuery("#myModal .modal-footer").html("");
											},
											success:function(res){
												jQuery("#myModal .modal-body").html(res);
												setTimeout(function(){
													jQuery("#myModal", document).hide();
													jQuery("#myModal .modal-body").html("<p>Loading...</p>");
													},2000)
											}
										});
									}
								}
							});
							var modal = jQuery("#myModal", document);
				
							jQuery(document).on("click", ".submit-inquiry" , function(){
							    modal.show();
							});
				
							window.onclick = function(event) {
							    if (jQuery(event.target) == modal) {
							        modal.css("display","none");
							    }
							}
						});
					</script>
									</div>
									<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
					<div class="column_Box mc rghtFix">
					<div class="tcl bullet data divider enqForm stickyForm">
					<div class="h h2 ac xxlarge theme2 p10px" style="color:#fff;"><b class="plusMinus"></b>
					Fill Enquiry Form Below
					</div>
					<div class="showHide_rp mt7px p10px">
					<form name="package_form" method="post" action="//catalog.tourtravelworld.com/catalog-enquiry.php" onsubmit="return static_inq_form_validate(10029);">
					<div class="fo">
					<div class="mb15px">
					<input type="text" name="dynFrm_contact_person" id="dynFrm_contact_person_10029" placeholder="Your Full Name" />
					<span class="red small"></span>
					</div>
					<div class="fl w100 mb15px">
					<textarea name="dynFrm_details_2" id="dynFrm_details_2_10029">I am interested in Himachal with Amritsar 10 Days / 09 Nights. Please get in contact with me.</textarea>
					<span class="fl red small"></span>
					</div>
					<div class="fl w100 mb15px df-dt">
					<div class="df-dtc w50 pr5px dateOpt pr"><input type="text" name="dynFrm_arrival_date" id="dynFrm_arrival_date_10029" class="dynFrm_arrival_date" style="padding-left:30px;" placeholder=" Departure Date" /><span class="fl red small"></span></div>
					<div class="df-dtc pl5px"><input type="text" name="dynFrm_duration" id="dynFrm_duration_10029" placeholder="Number of Days" /><span class="fl red small"></span></div>
					</div>  
					<div class="mb15px">
					<input type="text" name="dynFrm_email_id" id="dynFrm_email_id_10029" placeholder="Email" />
					<span class="red small"></span>
					</div> 
					<div class="mb20px fl w100">
					<div class="w60px pr fl ofh">
					<div id="isdpackCode" class="isdCode pr0px">+91</div>
					<select class="contSelect" name="dynFrm_country" id="dynFrm_country" onChange="document.getElementById('phone_package_isd').value=this.value.substr(3, 4); document.getElementById('isdpackCode').innerHTML=this.value.substr(3, 4);">
					
											
						<option value="AF^+93" >Afghanistan +93</option>
					
												
						<option value="CF^+236" >African Republic +236</option>
					
												
						<option value="AL^+355" >Albania +355</option>
					
												
						<option value="DZ^+213" >Algeria +213</option>
					
												
						<option value="AS^+0" >American Samoa +0</option>
					
												
						<option value="AD^+376" >Andorra +376</option>
					
												
						<option value="AO^+244" >Angola +244</option>
					
												
						<option value="AI^+264" >Anguilla +264</option>
					
												
						<option value="AG^+268" >Antigua and Barbuda +268</option>
					
												
						<option value="AR^+54" >Argentina +54</option>
					
												
						<option value="AM^+374" >Armenia +374</option>
					
												
						<option value="AW^+297" >Aruba +297</option>
					
												
						<option value="AU^+61" >Australia +61</option>
					
												
						<option value="AT^+43" >Austria +43</option>
					
												
						<option value="AZ^+994" >Azerbaijan +994</option>
					
												
						<option value="BS^+242" >Bahamas +242</option>
					
												
						<option value="BH^+973" >Bahrain +973</option>
					
												
						<option value="BD^+880" >Bangladesh +880</option>
					
												
						<option value="BB^+246" >Barbados +246</option>
					
												
						<option value="BY^+375" >Belarus +375</option>
					
												
						<option value="BE^+32" >Belgium +32</option>
					
												
						<option value="BZ^+501" >Belize +501</option>
					
												
						<option value="BJ^+229" >Benin +229</option>
					
												
						<option value="BM^+441" >Bermuda +441</option>
					
												
						<option value="BT^+975" >Bhutan +975</option>
					
												
						<option value="BO^+591" >Bolivia +591</option>
					
												
						<option value="BA^+387" >Bosnia and Herzegovina +387</option>
					
												
						<option value="BW^+267" >Botswana +267</option>
					
												
						<option value="BV^+47" >Bouvet +47</option>
					
												
						<option value="BR^+55" >Brazil +55</option>
					
												
						<option value="BN^+673" >Brunei +673</option>
					
												
						<option value="BG^+359" >Bulgaria +359</option>
					
												
						<option value="BF^+226" >Burkina +226</option>
					
												
						<option value="BF^+0" >Burkina Faso +0</option>
					
												
						<option value="BI^+257" >Burundi +257</option>
					
												
						<option value="KH^+855" >Cambodia +855</option>
					
												
						<option value="CM^+237" >Cameroon +237</option>
					
												
						<option value="CA^+1" >Canada +1</option>
					
												
						<option value="CV^+238" >Cape Verde +238</option>
					
												
						<option value="KY^+345" >Cayman Islands +345</option>
					
												
						<option value="236^+236" >Central African Republic +236</option>
					
												
						<option value="TD^+235" >Chad +235</option>
					
												
						<option value="IO^+246" >Chagos +246</option>
					
												
						<option value="CL^+56" >Chile +56</option>
					
												
						<option value="CN^+86" >China +86</option>
					
												
						<option value="CX^+61" >Christmas Island +61</option>
					
												
						<option value="CC^+61" >Cocos +61</option>
					
												
						<option value="CO^+57" >Colombia +57</option>
					
												
						<option value="KM^+269" >Comoros +269</option>
					
												
						<option value="CG^+242" >Congo +242</option>
					
												
						<option value="CK^+682" >Cook Islands +682</option>
					
												
						<option value="RCI^+506" >Costa Rica +506</option>
					
												
						<option value="HR^+385" >Croatia +385</option>
					
												
						<option value="CY^+357" >Cyprus +357</option>
					
												
						<option value="CZ^+420" >Czech Republic +420</option>
					
												
						<option value="DK^+45" >Denmark +45</option>
					
												
						<option value="DJ^+253" >Djibouti +253</option>
					
												
						<option value="DM^+767" >Dominica +767</option>
					
												
						<option value="DO^+809" >Dominican Republic +809</option>
					
												
						<option value="EOA^+257" >East Africa +257</option>
					
												
						<option value="TP^+670" >East Timor +670</option>
					
												
						<option value="EC^+593" >Ecuador +593</option>
					
												
						<option value="EG^+20" >Egypt +20</option>
					
												
						<option value="SV^+503" >El Salvador +503</option>
					
												
						<option value="GQ^+0" >Equatorial Guinea +0</option>
					
												
						<option value="ER^+291" >Eritrea +291</option>
					
												
						<option value="EE^+372" >Estonia +372</option>
					
												
						<option value="ET^+251" >Ethiopia +251</option>
					
												
						<option value="FO^+298" >Faroe +298</option>
					
												
						<option value="FM^+691" >Federated States of Micronesia +691</option>
					
												
						<option value="FJ^+679" >Fiji +679</option>
					
												
						<option value="FI^+358" >Finland +358</option>
					
												
						<option value="FR^+33" >France +33</option>
					
												
						<option value="FX^+590" >France, Metropolitan +590</option>
					
												
						<option value="GF^+594" >French Guiana +594</option>
					
												
						<option value="FP^+689" >French Polynesia +689</option>
					
												
						<option value="TF^+590" >French Southern Territories +590</option>
					
												
						<option value="GA^+241" >Gabon +241</option>
					
												
						<option value="GM^+220" >Gambia +220</option>
					
												
						<option value="GE^+995" >Georgia +995</option>
					
												
						<option value="DE^+49" >Germany +49</option>
					
												
						<option value="GH^+233" >Ghana +233</option>
					
												
						<option value="GI^+350" >Gibraltar +350</option>
					
												
						<option value="GR^+30" >Greece +30</option>
					
												
						<option value="GL^+299" >Greenland +299</option>
					
												
						<option value="GD^+809" >Grenada +809</option>
					
												
						<option value="Gre^+473" >Grenada +473</option>
					
												
						<option value="GP^+590" >Guadeloupe +590</option>
					
												
						<option value="GU^+1" >Guam +1</option>
					
												
						<option value="GT^+502" >Guatemala +502</option>
					
												
						<option value="GN^+224" >Guinea +224</option>
					
												
						<option value="GW^+245" >Guinea-bissau +245</option>
					
												
						<option value="GY^+592" >Guyana +592</option>
					
												
						<option value="HT^+509" >Haiti +509</option>
					
												
						<option value="HM^+61" >Heard and Mc Donald Islands +61</option>
					
												
						<option value="HN^+504" >Honduras +504</option>
					
												
						<option value="HU^+36" >Hungary +36</option>
					
												
						<option value="IS^+354" >Iceland +354</option>
					
												
						<option value="IN^+91"  selected="selected" >India +91</option>
					
												
						<option value="ID^+62" >Indonesia +62</option>
					
												
						<option value="IQ^+964" >Iraq +964</option>
					
												
						<option value="IE^+353" >Ireland +353</option>
					
												
						<option value="Isi^Isiolo" >Isiolo Isiolo</option>
					
												
						<option value="IL^+972" >Israel +972</option>
					
												
						<option value="IT^+39" >Italy +39</option>
					
												
						<option value="CI^+225" >Ivory Coast +225</option>
					
												
						<option value="JM^+876" >Jamaica +876</option>
					
												
						<option value="JP^+81" >Japan +81</option>
					
												
						<option value="JO^+962" >Jordan +962</option>
					
												
						<option value="KZ^+7" >Kazakhstan +7</option>
					
												
						<option value="KE^+254" >Kenya +254</option>
					
												
						<option value="KI^+686" >Kiribati +686</option>
					
												
						<option value="KW^+965" >Kuwait +965</option>
					
												
						<option value="KG^+996" >Kyrgyzstan +996</option>
					
												
						<option value="LA^+856" >Lao People's Democratic Republic +856</option>
					
												
						<option value="LA^+856" >Laos +856</option>
					
												
						<option value="LV^+371" >Latvia +371</option>
					
												
						<option value="LB^+961" >Lebanon +961</option>
					
												
						<option value="LS^+266" >Lesotho +266</option>
					
												
						<option value="LR^+231" >Liberia +231</option>
					
												
						<option value="LY^+218" >Libya +218</option>
					
												
						<option value="LI^+423" >Liechtenstein +423</option>
					
												
						<option value="LT^+370" >Lithuania +370</option>
					
												
						<option value="LU^+352" >Luxembourg +352</option>
					
												
						<option value="MO^+853" >Macau +853</option>
					
												
						<option value="MK^+389" >Macedonia +389</option>
					
												
						<option value="MG^+261" >Madagascar +261</option>
					
												
						<option value="MW^+265" >Malawi +265</option>
					
												
						<option value="MY^+60" >Malaysia +60</option>
					
												
						<option value="MV^+960" >Maldives +960</option>
					
												
						<option value="ML^+223" >Mali +223</option>
					
												
						<option value="MT^+356" >Malta +356</option>
					
												
						<option value="FK^+500" >Malvinas +500</option>
					
												
						<option value="MH^+692" >Marshall Islands +692</option>
					
												
						<option value="MQ^+596" >Martinique +596</option>
					
												
						<option value="MR^+222" >Mauritania +222</option>
					
												
						<option value="MU^+230" >Mauritius +230</option>
					
												
						<option value="YT^+269" >Mayotte +269</option>
					
												
						<option value="MX^+52" >Mexico +52</option>
					
												
						<option value="MD^+0" >Moldova +0</option>
					
												
						<option value="MD^+373" >Moldova (Republic of Moldova) +373</option>
					
												
						<option value="MC^+377" >Monaco +377</option>
					
												
						<option value="MN^+976" >Mongolia +976</option>
					
												
						<option value="ME^+381" >Montenegro +381</option>
					
												
						<option value="MS^+664" >Montserrat +664</option>
					
												
						<option value="MA^+212" >Morocco +212</option>
					
												
						<option value="MZ^+258" >Mozambique +258</option>
					
												
						<option value="MM^+95" >Myanmar +95</option>
					
												
						<option value="NA^+264" >Namibia +264</option>
					
												
						<option value="NR^+674" >Nauru +674</option>
					
												
						<option value="NP^+977" >Nepal +977</option>
					
												
						<option value="NL^+31" >Netherlands +31</option>
					
												
						<option value="AN^+599" >Netherlands Antilles +599</option>
					
												
						<option value="NC^+687" >New Caledonia +687</option>
					
												
						<option value="PG^+675" >New Guinea +675</option>
					
												
						<option value="NZ^+64" >New Zealand +64</option>
					
												
						<option value="NI^+505" >Nicaragua +505</option>
					
												
						<option value="NE^+227" >Niger +227</option>
					
												
						<option value="NG^+234" >Nigeria +234</option>
					
												
						<option value="NU^+683" >Niue +683</option>
					
												
						<option value="NF^+672" >Norfolk Island +672</option>
					
												
						<option value="MP^+670" >Northern Mariana Islands +670</option>
					
												
						<option value="NO^+47" >Norway +47</option>
					
												
						<option value="OM^+968" >Oman +968</option>
					
												
						<option value="PK^+92" >Pakistan +92</option>
					
												
						<option value="PW^+680" >Palau +680</option>
					
												
						<option value="PA^+507" >Panama +507</option>
					
												
						<option value="PG^+0" >Papua New Guinea +0</option>
					
												
						<option value="PY^+595" >Paraguay +595</option>
					
												
						<option value="PE^+51" >Peru +51</option>
					
												
						<option value="PH^+63" >Philippines +63</option>
					
												
						<option value="PN^+872" >Pitcairn +872</option>
					
												
						<option value="PL^+48" >Poland +48</option>
					
												
						<option value="PF^+689" >Polynesia +689</option>
					
												
						<option value="PT^+351" >Portugal +351</option>
					
												
						<option value="PR^+1-787" >Puerto Rico +1-787</option>
					
												
						<option value="QA^+974" >Qatar +974</option>
					
												
						<option value="RE^+262" >Reunion +262</option>
					
												
						<option value="RO^+40" >Romania +40</option>
					
												
						<option value="RU^+7" >Russia +7</option>
					
												
						<option value="RW^+250" >Rwanda +250</option>
					
												
						<option value="KN^+869" >Saint Kitts and Nevis +869</option>
					
												
						<option value="LC^+758" >Saint Lucia +758</option>
					
												
						<option value="VC^+784" >Saint Vincent and the Grenadines +784</option>
					
												
						<option value="WS^+685" >Samoa +685</option>
					
												
						<option value="SM^+378" >San Marino +378</option>
					
												
						<option value="ST^+239" >Sao Tome And Principe +239</option>
					
												
						<option value="SA^+966" >Saudi Arabia +966</option>
					
												
						<option value="SN^+221" >Senegal +221</option>
					
												
						<option value="RS^+381" >Serbia +381</option>
					
												
						<option value="SC^+248" >Seychelles +248</option>
					
												
						<option value="SL^+232" >Sierra Leone +232</option>
					
												
						<option value="SG^+65" >Singapore +65</option>
					
												
						<option value="SK^+421" >Slovakia +421</option>
					
												
						<option value="SI^+386" >Slovenia +386</option>
					
												
						<option value="SB^+677" >Solomon Islands +677</option>
					
												
						<option value="SO^+252" >Somalia +252</option>
					
												
						<option value="ZA^+27" >South Africa +27</option>
					
												
						<option value="GS^+44" >South Georgia and the South Sandwich Islands +44</option>
					
												
						<option value="KR^+82" >South Korea +82</option>
					
												
						<option value="ES^+34" >Spain +34</option>
					
												
						<option value="LK^+94" >Sri Lanka +94</option>
					
												
						<option value="SH^+290" >St. Helena +290</option>
					
												
						<option value="PM^+508" >St. Pierre and Miquelon +508</option>
					
												
						<option value="SD^+249" >Sudan +249</option>
					
												
						<option value="SR^+597" >Suriname +597</option>
					
												
						<option value="SJ^+47" >Svalbard and Jan Mayen Islands +47</option>
					
												
						<option value="SZ^+268" >Swaziland +268</option>
					
												
						<option value="SE^+46" >Sweden +46</option>
					
												
						<option value="CH^+41" >Switzerland +41</option>
					
												
						<option value="TW^+886" >Taiwan +886</option>
					
												
						<option value="TJ^+7" >Tajikistan +7</option>
					
												
						<option value="TZ^+255" >Tanzania +255</option>
					
												
						<option value="TH^+66" >Thailand +66</option>
					
												
						<option value="TG^+228" >Togo +228</option>
					
												
						<option value="TK^+64" >Tokelau +64</option>
					
												
						<option value="TO^+676" >Tonga +676</option>
					
												
						<option value="TT^+868" >Trinidad and Tobago +868</option>
					
												
						<option value="TN^+216" >Tunisia +216</option>
					
												
						<option value="TR^+90" >Turkey +90</option>
					
												
						<option value="TM^+993" >Turkmenistan +993</option>
					
												
						<option value="TC^+649" >Turks and Caicos Islands +649</option>
					
												
						<option value="TV^+688" >Tuvalu +688</option>
					
												
						<option value="AE^+971" >UAE +971</option>
					
												
						<option value="UG^+256" >Uganda +256</option>
					
												
						<option value="UA^+380" >Ukraine +380</option>
					
												
						<option value="UK^+44" >United Kingdom +44</option>
					
												
						<option value="UM^+1" >United States Minor Outlying Islands +1</option>
					
												
						<option value="UY^+598" >Uruguay +598</option>
					
												
						<option value="US^+1" >USA +1</option>
					
												
						<option value="UZ^+998" >Uzbekistan +998</option>
					
												
						<option value="VU^+678" >Vanuatu +678</option>
					
												
						<option value="VA^+0" >Vatican City +0</option>
					
												
						<option value="VA^+39" >Vatican City State (Holy See) +39</option>
					
												
						<option value="VE^+58" >Venezuela +58</option>
					
												
						<option value="VN^+84" >Vietnam +84</option>
					
												
						<option value="VG^+1" >Virgin Islands (British) +1</option>
					
												
						<option value="VI^+1" >Virgin Islands (U.S.) +1</option>
					
												
						<option value="WF^+681" >Wallis and Futuna Islands +681</option>
					
												
						<option value="EH^+212" >Western Sahara +212</option>
					
												
						<option value="YE^+967" >Yemen +967</option>
					
												
						<option value="YU^+381" >Yugoslavia +381</option>
					
												
						<option value="ZR^+243" >Zaire +243</option>
					
												
						<option value="ZM^+260" >Zambia +260</option>
					
												
						<option value="ZW^+263" >Zimbabwe +263</option>
					
											</select>
					</div>									
					<input type="text" name="dynFrm_phone" id="dynFrm_phone_10029" class="fl" style="width:calc(100% - 62px);" placeholder="Mobile No" />
					<span class="fl red small"></span>
					</div>					
										
					<div class="mb5px ac">
					<input type="submit" name="submit" value="Send Enquiry" class="dib theme1 p12px bdr fw6">
					<input type="hidden" name="phone_isd" id="phone_package_isd" value="+91">
					<input type="hidden" name="subject" value="Himachal with Amritsar 10 Days / 09 Nights - Tour Package"/>
					<input type="hidden" name="allocate_type" value="tour"/>
					<input type="hidden" name="pkg_slno" value="127488"/>
					<input type="hidden" name="current_url" value="https://www.pramukhtours.com/tour-packages/himachal-with-amritsar10-days09-nights.htm">
				  	<input type="hidden" name="web_address" value="https://www.pramukhtours.com">
				  	<input type="hidden" name="inq_thanks_msg" value="Thank you for inquiry.<br /><br />We have received your request. Our Sales Team will soon get in touch with you.<br /><br /><br />">
					<input type="hidden" name="inq_thanks_title" value="Enquiry">
				  	<input type="hidden" name="redirected_url" value="https://www.pramukhtours.com/thanks.htm">
					<input type="hidden" name="catalog_mi" value="424442">
				  	<input type="hidden" name="id" value="static_form">
				  	<input type="hidden" name="form_id" value="10029">
					</form>
					</div>
					</div>					
					</div>
					</div>
					<style>
					.ui-datepicker-trigger {
						vertical-align : middle;
					}
					</style>
					<script>
					jQuery('.dynFrm_arrival_date').datepicker({minDate: 0,
					buttonImage: '//catalog.wlimg.com/jquery-date-picker/calbtn.gif',
					buttonText: 'Click to view calendar',
				    buttonImageOnly: true,
				    showOn: 'button',
				    changeMonth: true,
				    changeYear: true,
				    onClose: function(dateText, inst) {
				        var endDateTextBox = jQuery('.dynFrm_departure_date');
				        if (endDateTextBox.val() != '') {
				            var testStartDate = new Date(dateText);
				            var testEndDate = new Date(endDateTextBox.val());
				            if (testStartDate > testEndDate)
				                endDateTextBox.val(dateText);
				        }
				    }, 
					    onSelect: function (selectedDateTime){
					        var start = jQuery(this).datepicker('getDate');
					        jQuery('.dynFrm_departure_date').datepicker('option', 'minDate', new Date(start.getTime()));
					        jQuery('#dynFrm_departure_date').datepicker('option', 'minDate', new Date(start.getTime()));
					    }    
					});
					jQuery('.dynFrm_departure_date').datepicker({
					minDate: 0,
					buttonImage: '//catalog.wlimg.com/jquery-date-picker/calbtn.gif',
					buttonText: 'Click to view calendar',
				    buttonImageOnly: true,
				    showOn: 'button',
				    changeMonth: true,
				    changeYear: true,
				    onClose: function(dateText, inst) {
				        var startDateTextBox = jQuery('.dynFrm_arrival_date');
				        if (startDateTextBox.val() != '') {
				            var testStartDate = new Date(startDateTextBox.val());
				            var testEndDate = new Date(dateText);
				            if (testStartDate > testEndDate)
				                startDateTextBox.val(dateText);
				        }
				    },
				    onSelect: function (selectedDateTime){
				        var end = jQuery(this).datepicker('getDate');
				        jQuery('.dynFrm_arrival_date').datepicker('option', 'maxDate', new Date(end.getTime()) );
				        jQuery('#dynFrm_arrival_date').datepicker('option', 'maxDate', new Date(end.getTime()) );
				    }
					});
					</script>
					<script>
					jQuery(document).ready(function(){
					var sticky = jQuery('.stickyForm').offset().top;
					jQuery(window).scroll(function(){      
					 if(jQuery(window).scrollTop() > sticky){
					  jQuery('.stickyForm').css('position','fixed');
					  jQuery('.stickyForm').css('top','75px'); 
					 }
					 else if (jQuery(window).scrollTop() <= sticky) {
					  jQuery('.stickyForm').css('position','');
					  jQuery('.stickyForm').css('top','');
					 }  
					if (jQuery('.stickyForm').offset().top + jQuery(".stickyForm").height() > jQuery(".rel-prop").offset().top) {
					  jQuery('.stickyForm').css('top',-(jQuery(".stickyForm").offset().top + jQuery(".stickyForm").height() - jQuery(".rel-prop").offset().top));
					}
					});
					});
					</script>
					<script>
					jQuery(document).ready(function(e){
					if (jQuery(window).width() < 992) {
					jQuery(".rghtFix .enqForm .h").on("click", function(){
					  jQuery(this).find('.plusMinus').toggleClass('act').parent().next('.showHide_rp').slideToggle('slow');
					});  
					jQuery(".rghtFix .enqForm .plusMinus").on("click", function(e){
					e.stopPropagation(); 
					});
					}
					});  
					</script>
					</div>
					</div>
									
				
				</div>
				
										<section class="pt30px pb10px relTour-pkg rel-prop">
						<div class="wrap">      
						<div class="fo">
						<div class="ac mb7px"><div><h2 class="hd_NT">Similar Tour Packages for New Delhi, Dalhousie, Manali, Shimla, Dharamshala, Amritsar</h2></div></div>
						<div class="ic" id="1102_3-1">
						<div class="slider">
						<ul class="expl-carousel1">
											
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/manalito-ladakh-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/209327.jpg"  height=""  width=""    alt="Manali To Ladakh Package" title="Manali To Ladakh Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/manalito-ladakh-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								6 Nights / 7 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/manalito-ladakh-package.htm" title="Manali To Ladakh Package"><h3>Manali To Ladakh Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/himachal-with-shimla-manali-dalhausie8-days07-nights-tour.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/204503.jpg"  height=""  width=""    alt="Himachal with Shimla Manali Dalhausie  8 Days / 07 Nights Tour" title="Himachal with Shimla Manali Dalhausie  8 Days / 07 Nights Tour"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/himachal-with-shimla-manali-dalhausie8-days07-nights-tour.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								7 Nights / 8 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/himachal-with-shimla-manali-dalhausie8-days07-nights-tour.htm" title="Himachal with Shimla Manali Dalhausie  8 Days / 07 Nights Tour"><h3>Himachal With Shimla Manali Dalhausie  8 Days / 07 Nights Tour</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/super-saver-uttarakhand-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/209368.jpg"  height=""  width=""    alt="Super Saver Uttarakhand Package" title="Super Saver Uttarakhand Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/super-saver-uttarakhand-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								7 Nights / 8 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/super-saver-uttarakhand-package.htm" title="Super Saver Uttarakhand Package"><h3>Super Saver Uttarakhand Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/super-saver-ladakh9-days-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/209369.jpg"  height=""  width=""    alt="Super Saver Ladakh 9 Days Package" title="Super Saver Ladakh 9 Days Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/super-saver-ladakh9-days-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								8 Nights / 9 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/super-saver-ladakh9-days-package.htm" title="Super Saver Ladakh 9 Days Package"><h3>Super Saver Ladakh 9 Days Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/delhi-manali-tourby-volvo6-days5-nights.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/204504.jpg"  height=""  width=""    alt="Delhi Manali Tour by Volvo" title="Delhi Manali Tour by Volvo"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/delhi-manali-tourby-volvo6-days5-nights.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								5 Nights / 6 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/delhi-manali-tourby-volvo6-days5-nights.htm" title="Delhi Manali Tour by Volvo"><h3>Delhi Manali Tour By Volvo</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/himachal-with-shimla-manali-chandigarh7-days06-nights-tour.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/204505.jpg"  height=""  width=""    alt="Himachal with Shimla Manali Chandigarh 7 Days / 06 Nights Tour" title="Himachal with Shimla Manali Chandigarh 7 Days / 06 Nights Tour"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/himachal-with-shimla-manali-chandigarh7-days06-nights-tour.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								6 Nights / 7 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/himachal-with-shimla-manali-chandigarh7-days06-nights-tour.htm" title="Himachal with Shimla Manali Chandigarh 7 Days / 06 Nights Tour"><h3>Himachal With Shimla Manali Chandigarh 7 Days / 06 Nights Tour</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/shimla-manali06-days05-nights-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/204501.jpg"  height=""  width=""    alt="Shimla - Manali 06 Days/05 Nights Package" title="Shimla - Manali 06 Days/05 Nights Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/shimla-manali06-days05-nights-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								5 Nights / 6 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/shimla-manali06-days05-nights-package.htm" title="Shimla - Manali 06 Days/05 Nights Package"><h3>Shimla - Manali 06 Days/05 Nights Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/mountain-escapades-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/208889.jpg"  height=""  width=""    alt="Mountain Escapades Package" title="Mountain Escapades Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/mountain-escapades-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								3 Nights / 4 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/mountain-escapades-package.htm" title="Mountain Escapades Package"><h3>Mountain Escapades Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/experience-uttarakhand-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/208868.jpg"  height=""  width=""    alt="Experience Uttarakhand Package" title="Experience Uttarakhand Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/experience-uttarakhand-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								9 Nights / 10 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/experience-uttarakhand-package.htm" title="Experience Uttarakhand Package"><h3>Experience Uttarakhand Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/mountain-trails-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/208893.jpg"  height=""  width=""    alt="Mountain Trails Package" title="Mountain Trails Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/mountain-trails-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								7 Nights / 8 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/mountain-trails-package.htm" title="Mountain Trails Package"><h3>Mountain Trails Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/glimpsesof-kumaon-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/208890.jpg"  height=""  width=""    alt="Glimpses Of Kumaon Package" title="Glimpses Of Kumaon Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/glimpsesof-kumaon-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								3 Nights / 4 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/glimpsesof-kumaon-package.htm" title="Glimpses Of Kumaon Package"><h3>Glimpses Of Kumaon Package</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.pramukhtours.com/tour-packages/spritual-journey-package.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/208882.jpg"  height=""  width=""    alt="Spritual Journey Package" title="Spritual Journey Package"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.pramukhtours.com/tour-packages/spritual-journey-package.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								3 Nights / 4 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.pramukhtours.com/tour-packages/spritual-journey-package.htm" title="Spritual Journey Package"><h3>Spritual Journey Package</h3></a></div>
							</div>
							</div>						
							</li>
															
						</ul>
						</div>
						</div> 
						 
								<script>
								$(document).ready(function() {
								var tnsCarousel = $('.expl-carousel1');
								tnsCarousel.each(function() {
								var tnsSlider = tns({
								 'container': '.expl-carousel1',
								 'axis': 'horizontal',
								  'speed': '2000',						  
								  'autoplay': true,
								  'slideBy': '1',
								  'autoplayDirection':'forward', 
								  'nav': false,	
								  'autoplayHoverPause': true,
								  'autoplayTimeout': 3000,
								  'autoplayButtonOutput': false,
								  'autoplayResetOnVisibility': false,
								  'gutter': 10,
								  'controls' : true,
								  'mouseDrag': true,
								  responsive: {
									0: {
										items: 1
									  },
									  480: {
										items: 2
									  },
									  640: {
										items: 2
									  },
									  768: {
										items: 3
									  },
									  992: {
										items: 4
									  },
									  1024: {
										items: 4
									  },
									  1200: {
										items: 5
									  }
								  },
								  'swipeAngle': false
								});
								});
								});
								</script>
															  
						 </div>
					     </div>
					    </section>
										<section class="pt20px pb20px absTour-Title rel-prop">
				<div class="wrap">
				<div class="fo">     	
				<div class="ac mb7px"><div><h2 class="hd_NT">Explore Tour Packages by Destination</h2></div></div>     	
				<div class="ic" id="1102_3-1">
				<div class="slider">
				<ul class="expl-carousel">								
				
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-darjeeling.htm" title="Packages in Darjeeling" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10405-classified.jpg"  height=""  width=""    alt="Darjeeling" title="Darjeeling" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-gangtok.htm" title="Packages in Gangtok" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10401-classified.jpg"  height=""  width=""    alt="Gangtok" title="Gangtok" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/11219-classified.jpg"  height=""  width=""    alt="Leh Ladakh" title="Leh Ladakh" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-srinagar.htm" title="Packages in Srinagar" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10078-classified.jpg"  height=""  width=""    alt="Srinagar" title="Srinagar" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-havelock.htm" title="Packages in Havelock" >
					<img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/204834.jpg"  height=""  width=""    alt="Packages in Havelock" title="Packages in Havelock" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-havelock.htm" title="Packages in Havelock">Havelock Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-new-delhi.htm" title="Packages in New Delhi" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10009-classified.jpg"  height=""  width=""    alt="New Delhi" title="New Delhi" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-port-blair.htm" title="Packages in Port Blair" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10155-classified.jpg"  height=""  width=""    alt="Port Blair" title="Port Blair" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-manali.htm" title="Packages in Manali" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10061-classified.jpg"  height=""  width=""    alt="Manali" title="Manali" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-manali.htm" title="Packages in Manali">Manali Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-pelling.htm" title="Packages in Pelling" >
					<img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/424442/204488.jpg"  height=""  width=""    alt="Packages in Pelling" title="Packages in Pelling" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-pelling.htm" title="Packages in Pelling">Pelling Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-pahalgam.htm" title="Packages in Pahalgam" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10631-classified.jpg"  height=""  width=""    alt="Pahalgam" title="Pahalgam" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-mysore.htm" title="Packages in Mysore" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10195-classified.jpg"  height=""  width=""    alt="Mysore" title="Mysore" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-mysore.htm" title="Packages in Mysore">Mysore Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.pramukhtours.com/packages-in-gulmarg.htm" title="Packages in Gulmarg" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/11225-classified.jpg"  height=""  width=""    alt="Gulmarg" title="Gulmarg" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.pramukhtours.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg Tours</a></div>
					</div> 
					</li>
									</ul>
				</div>
				</div>
				 
						<script>
						$(document).ready(function() {
						var tnsCarousel = $('.expl-carousel');
						tnsCarousel.each(function() {
						var tnsSlider = tns({
						 'container': '.expl-carousel',
						 'axis': 'horizontal',
						  'speed': '2000',						  
						  'autoplay': true,
						  'slideBy': '1',
						  'autoplayDirection':'forward', 
						  'nav': false,	
						  'autoplayHoverPause': true,
						  'autoplayTimeout': 3000,
						  'autoplayButtonOutput': false,
						  'autoplayResetOnVisibility': false,
						  'gutter': 10,
						  'controls' : true,
						  'mouseDrag': true,
						  responsive: {
							0: {
								items: 1
							  },
							  480: {
								items: 2
							  },
							  640: {
								items: 2
							  },
							  768: {
								items: 3
							  },
							  992: {
								items: 4
							  },
							  1024: {
								items: 4
							  },
							  1200: {
								items: 5
							  }
						  },
						  'swipeAngle': false
						});
						});
						});
						</script>
										
				</div>
				</div>
				</section>
				
				</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:82:"Book Himachal with Amritsar 10 Days / 09 Nights - 9 Nights / 10 Days Tour Packages";i:2;s:206:"book himachal with amritsar 10 days / 09 nights - 9 nights / 10 days tour packages, paragliding tour packages, new delhi, shimla, manali, dharamshala, dalhousie, amritsar, kufri, solang valley tour packages";i:3;s:236:"Pramukh Tours offers Himachal with Amritsar 10 Days / 09 Nights - 9 Nights / 10 Days tour package, budget Paragliding tour packages for New Delhi, Shimla, Manali, Dharamshala, Dalhousie, Amritsar, Kufri, Solang Valley at exciting price.";i:4;s:1713:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Shimla, Manali, Dharamshala, Dalhousie, Amritsar, Kufri, Solang Valley"        
		                 },
		      "description": "Airfares Train fare.
Any monastery entrance fees, Any Joy ride or rafting.
Rohtang Pass Not Included.
Medical expenses (apart from first aid) and insurance of any kind.
Tips, laundry, liquors, wines, mineral water, telephone charges, camera fee and items of personal nature.
Transportation is not on disposal basis. It is strictly as per the programme, any extra running will be charges extra.
Any expenses arising out of unforeseen circumstances like flight delay / cancellation / hike in fare, strike, curfew or any other natural calamities (like: road block) or any emergency evacuation expenses. If there is any change in itinerary due to the above circumstance, guest will have to pay directly over there as per uses.
There is no refund if the tour not complete due to reason of any natural calamities.
Any other item not mentioned in the cost includes section,""Table drinks, Rohtang pass, laundry, porter, pony, tips, camera fee, room heater, rope - way charges, entrance charges, travel insurance, personal expenses of the clients or any other expenses incurred due to bad weather, road closure, landslides etc. and anything not specified in cost include. ,Entry Fees,"".
GST 5%"
Note: - Rohtang pass not included.",
		      "name": "Himachal with Amritsar 10 Days / 09 Nights",
		      "telephone": "+91-9898613942"
		    }
		    </script>
			";i:5;N;i:6;s:71:"https://ttw.wlimg.com/package-images/photo-big/dir_15/424442/204502.jpg";}