a:6:{i:0;s:47323:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Wildlife Culture Heritage Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.hargobindtravels.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.hargobindtravels.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Wildlife Culture Heritage Tour</p>
						</div>
						</div>
						</section>
										<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
									<div class="fo dt w100"> 
					<div class="dtc vat ttw-detail pr20px pr">					
												<ul class="lsn gallery-slide" id="bxlider_ins">
																	<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94831.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94831.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94831.jpg"  alt="Wildlife Culture Heritage Tour" title="Wildlife Culture Heritage Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																	</ul>
												
					<script>
					var $j = jQuery.noConflict();
					var realSlider= $j("ul#bxlider_ins").bxSlider({
					      speed:500,
					      pager:false,
					      auto: true,
					      slideWidth: 450,
					      slideMargin: 0,
					      nextText:'',
					      prevText:'',
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					        changeRealThumb(realThumbSlider,newIndex);
					        
					      }
					      
					    });
					    
					    var realThumbSlider=$j("ul#bxslider-pager").bxSlider({
					      minSlides: 4,
					      maxSlides: 4,
					      slideWidth: 200,
					      slideMargin: 5,
					      moveSlides: 1,
					      pager:false,
					      speed:1000,
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      nextText:'<span></span>',
					      prevText:'<span></span>',
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					
					      }
					    });
					    
					    linkRealSliders(realSlider,realThumbSlider);
					    
					    if($j("#bxslider-pager li").length<5){
					      $j("#bxslider-pager .bx-next").hide();
					    }
					
					// sincronizza sliders realizzazioni
					function linkRealSliders(bigS,thumbS){
					  
					  $j("ul#bxslider-pager").on("click","a",function(event){
					    event.preventDefault();
					    var newIndex=$j(this).parent().attr("data-slideIndex");
					        bigS.goToSlide(newIndex);
					  });
					}
					
					//slider!=$thumbSlider. slider is the realslider
					function changeRealThumb(slider,newIndex){
					  
					  var $thumbS=$j("#bxslider-pager");
					  $thumbS.find('.active').removeClass("active");
					  $thumbS.find('li[data-slideIndex="'+newIndex+'"]').addClass("active");
					  
					  if(slider.getSlideCount()-newIndex>=4)slider.goToSlide(newIndex);
					  else slider.goToSlide(slider.getSlideCount()-4);
					
					}
					
					</script>
					</div>
			        <div class="dtc">
			        <p class="b xlarge mb10px">Wildlife Culture Heritage Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						16 Nights / 17 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Jaipur, Ranthambore, Agra, Varanasi, Jabalpur, Khajuraho</p>
												<p class="mb5px"><b>Attractions :</b> Agra Fort, Taj Mahal, Humayun Tomb, Ghats, Hawa Mahal, Khajuraho, Ranthambore National Park, Fatehpur Sikri, Amber Fort, City Palace, India Gate, Lotus Temple</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px">Price</p>
						<p class="xxsmall">On Request</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Wildlife Culture Heritage Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px ts0 xxlarge dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="48777"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
													<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Arrival Delhi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Assistance on arrival by our company representative and transfer to hotel check in to Hotel (Check Inn time 1200 Hrs Noon). Delhi, the capital of India, is located in north India, surrounded by Uttar Pradesh and Haryana on Three sides, straddling the river Yamuna. Administratively, it is a Union Territory, called the National Capital Region, but it is also partially a state, having been given its own legislative Assembly in 1991. In addition there are the closely linked satellite towns of Gurgaon and Faridabad In Haryana and NOIDA and Ghaziabad in Uttar Pradesh. Contemporary Delhi includes all the sites That had been the capitals of North Indian empires for a thousand years from the many dynasties Collectively called the Delhi Sultanate (1206-1526), to the Mughal Empire (1526-1857), to the British colonialists who made it their capital in 1912. It was declared independent India's capital in 1947. Several monuments are evidence of this history. Among them: the Qutub Minar (12thbeginning of 13th century) Evening at leisure for your own activities.<br />
Overnight stay in Hotel (Delhi)															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Delhi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning after breakfast take full day sightseeing tour of New Delhi, Also visit Raj Ghat, the memorial to the father of our nation Mahatma Gandhi & Birla Mandir, the oldest temple in Delhi. Post lunch you will visit “New Delhi” which came into existence much later, and is also known as Lutyens Delhi, taking after the name of a British architect who was largely responsible in designing India Gate, Humayun Tomb, Grand Presidential House, Secretariat, Parliament House and many other buildings in that area. Visit the recent jewel in the crown, Lotus Temple and then drive on to see the tallest tower in Delhi, known as Qutub Minar, which declared the arrival and rise of Islam in India. Old Delhi- the former center of Mughal power which offers ancient monuments, narrow streets and bustling markets. Visit the Red Fort built in 1648 by the great Mughal Emperor Shah Jahan famous for his great edifice of love the Taj Mahal. Also see the biggest mosque in India the Jama Masjid, constructed by Shah Jahan in 1658. Then drive through the narrow lanes of Chandni Chowk to get a feel of the royal life of the Mughal emperors. You will also visit a famous Jain Temple & Gurudwara in the vicinity. Evening visit to local market and shopping. Overnight stay in Hotel (Delhi).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Delhi – Varanasi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast, transfer to airport in time to board flight for Varanasi. Met on your arrival in Varanasi and transferred to the hotel of your choice. Afternoon sightseeing tour of Varanasi visiting bathing ghats, The Kashiviswanath Temple, The Durgakund, The Sankatmochan - Shrine of Monkey God Hanuman.<br />
Overnight stay at the Hotel (Varanasi).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Varanasi - Khajuraho										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Early morning proceed for dawn boat ride on River Ganges. After Breakfast, transfer to airport in time to board flight for Khajuraho. Met on your arrival in Khajuraho and transferred to the hotel of your choice. Afternoon sightseeing tour of Khajuraho visiting Eastern and Western group of temples.<br />
Overnight stay at Hotel (Khajuraho).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Khajuraho – Bahdhavgarh										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast, depart for Bandhavgarh by road (275 kms/06 hrs), the first of the three National Parks you visit on your India Tiger tour. The Bandhavgarh National Park abounds in many of India's rare and endangered animals: Chital, Sambar, Muntjak (Barking Deer), Nilgai, Chinkara, Chowsingha (Four-horned antelope), Gaur (the Largest Oxen), Sloth Bear, Wild Boar, Leopard and Tiger. Bandhavgarh is undoubtedly one of the best reserve for seeing Indian Tigers. Sighting a Royal Bengal Tiger in the wild, is sure to be the highlight of your wildlife safari in India. Bandavgarh also has a vast variety of bird life. On your arrival in Bandhavgarh & Overnight at the (Resort) Bandhavgarh.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 6											
											:</b> Bahdhavgarh										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												his morning and evening jeep safaris into the Bandhavgarh National Park.<br />
Overnight at the (Resort) Bandhavgarh.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 7											
											:</b> Bahdhavgarh – Kanha										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After an early morning game ride, depart for Kanha by road, the second National Park you visit on your wildlife safari in India, and one of India's largest national parks covering 1,945 sq. km. including a core zone of 945 sq. km. It is a beautiful area of forest and lightly wooded grassland with many rivers and streams and it supports an excellent variety of wildlife. The park is very well organized and a popular place to visit. On your arrival in Kanha check into Chitvan Jungle Resort of your choice.<br />
Overnight stay at the (Resort) Kanha.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 8											
											:</b> Kanha										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This after breakfast morning and evening jeep safaris into the Kanha National Park.<br />
Overnight stay at the (Resort) Kanha.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 9											
											:</b> Kanha – Jabalpur (200 kms / 4 hrs By Surface) - Agra (By Overnight Train)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After an early morning game ride, transfer to Jabalpur railway station to board<br />
Overnight train for Agra at 1745 hrs.<br />
Overnight on board train to Agra (1st Class A/C Sleeper Coach Train).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 10											
											:</b> Arrival Agra										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Arrive Agra at 0730 hrs. Met on your arrival in Agra and transferred to the hotel of your choice. Afternoon sightseeing tour of Agra city visiting the Taj Mahal - one of the Seven Wonders of the World Surely the most extravagant expression of love ever created. 20,000 men laboured for over 17 years to build this memorial to Shah Jahan's beloved wife. Agra fort – the rusty and majestic red-sandstone fort of Agra stands on the banks of the river Yamuna and the construction was started by Emperor Akbar in 1566. At the DiwanI-Am (hall of public audience), a colonnaded hall of red-sandstone with a throne alcove of inlaid marble at the back, the Emperor heard public petitions. At the Diwan-I-Khas (hall of private audience) where marble pavilions with floral inlays lend an ethereal ambience, the Emperor sat on his gem-studded Peacock Throne and met foreign ambassadors and rulers of friendly kingdoms.<br />
Evening free to explore the Agra’s rich heritage of handicrafts in its markets.<br />
Overnight stay in the Hotel (Agra).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 11											
											:</b> Agra - Fatehpur Sikri - Ranthambore										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning after breakfast, depart for Ranthambore by road (280 kms /6 hrs) En-route visit Fatehpur Sikri- the deserted, red sandstone city that was built by Emperor Akbar as his capital and palace in the 16th century. Also visit the Bulund Darwaza the largest gateway in the world. Ranthambore, the third National Park that you visit on your North India wildlife tour, is best known for its tiger population, and tiger sightings are common here.<br />
On your arrival in Ranthambore check into the Resort.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 12											
											:</b> Ranthambore										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning and evening jeep safaris into the Ranthambore National Park.<br />
Overnight stay at the (Resort) Ranthambore.			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 13											
											:</b> Ranthambore - Jaipur										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning after breakfast than Morning jeep safari at Ranthambore National park. Check out from the hotel and drive to Jaipur. Upon arrival Jaipur and check in to Hotel. Jaipur-The capital city of the state of Rajasthan is popularly known as the Pink City, from the pink Coloured sandstone with which the buildings in its old, walled city are constructed. The town is in a desert-like landscape, surrounded by barren hills. Jaipur owes its name, its foundation and its careful planning to the great warrior-astronomer Maharaja Jai Singh II (1699-1744). His Predecessors had enjoyed good relations with the Mughals but in 1727, with Mughal power on the wane, Jai Singh decided the time was ripe to move down from his hillside fortress at nearby Amber to a new site on the plains. He laid out the city with its surrounding walls and six rectangular blocks after the principles of town planning set forth in the Shilpa Shastra, an ancient Hindu treatise on architecture.<br />
Overnight stay at the Hotel (Jaipur).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 14											
											:</b> Jaipur										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning after breakfast and celebration Holi festival (Colour of festival) in the Hotel Afternoon (12 noon) visit impressive Amber Fort situated on a ridge just outside Jaipur City. At the foot of the hill you will mount your caparisoned elephant for the slow but steady climb Up to the main gate, making your entrance in the time honoured fashion. (Other Option visit to Amber Fort by Car) The Fort, completed in the early 18th century, took over 100 years to build and now, although deserted, offers a fascinating insight into the lifestyle of the Mughal ruling families. Sightseeing tour of Jaipur visiting Hawa Mahal -- The Palace of Winds, The Jantar Mantar and The City Palace. Evening visit to Chokni dhani take the culture dinner with folk dance & music.<br />
Overnight stay at hotel (Jaipur).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 15											
											:</b> Jaipur										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning after breakfast visit to Nahargarh Biological Park (9 am to 12 Afternoon) & Elefantastic (01 pm to 07 pm) (Wash the elephants, feed and water them. Have a painting-class and learn about elephant-decorations. Learn about elephant medicines and treatments. Ride them to the lake for a swim and a scrub. Watch the elephants fall asleep at night and wake up with them in the early morning hours.)<br />
Overnight stay at the hotel (Jaipur).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 16											
											:</b> Jaipur - Delhi										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning after breakfast than check out the hotel. Drive to Delhi and on the arrival Delhi and check - In the hotel. Evening free with your own activity like visit to local market & shopping.<br />
Overnight stay at Hotel (Delhi).			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 17											
											:</b> Delhi & Departure										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning after breakfast than check out the hotel and take internal airport transfer to Delhi International airport to board the flight for your onward destinations.			
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-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);
										  jQuery('.product-detail').slideUp();
								          $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>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Sightseeing</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount * Airfare/Transport fare to be paid full at one time in advance.</li></ul>						
								</div>
												
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</div>
												<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
						
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount. * Retention Amount varies as per the number of days left before your package start date.</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Wildlife Culture Heritage Tour - 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="48777"/>
						</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.hargobindtravels.in/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(17)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-kumarakom.htm" title="Packages in Kumarakom">Kumarakom</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-kuala-lumpur.htm" title="Packages in Kuala Lumpur">Kuala Lumpur</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-dharamshala.htm" title="Packages in Dharamshala">Dharamshala</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-ranthambore.htm" title="Packages in Ranthambore">Ranthambore</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-kanyakumari.htm" title="Packages in Kanyakumari">Kanyakumari</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-jaisalmer.htm" title="Packages in Jaisalmer">Jaisalmer</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-trivandrum.htm" title="Packages in Trivandrum">Trivandrum</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-los-angeles.htm" title="Packages in Los Angeles">Los Angeles</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-new-york.htm" title="Packages in New York">New York</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-las-vegas.htm" title="Packages in Las Vegas">Las Vegas</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-bikaner.htm" title="Packages in Bikaner">Bikaner</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-putrajaya.htm" title="Packages in Putrajaya">Putrajaya</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-san-francisco.htm" title="Packages in San Francisco">San Francisco</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.hargobindtravels.in/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</a> <b class="alpha50 bn small">(3)</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.hargobindtravels.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(35)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.hargobindtravels.in/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(1)</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 New Delhi, Jaipur, Ranthambore, Agra, Varanasi, Jabalpur, Khajuraho</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.hargobindtravels.in/tour-packages/magnificent-shimla-manali-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/151294.jpg"  alt="Magnificent Shimla Manali Tour" title="Magnificent Shimla Manali Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.hargobindtravels.in/tour-packages/magnificent-shimla-manali-tour.htm" title="Magnificent Shimla Manali Tour"><h3>Magnificent Shimla Manali Tour</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> :  New Delhi, Kufri, Manali, Shimla, Rohtan..</p>
															<div class="mt10px small">
							<form name="pkg_86401" id="pkg_86401" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.hargobindtravels.in/tour-packages/magnificent-shimla-manali-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Magnificent Shimla Manali 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="86401"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.hargobindtravels.in/tour-packages/delhi-jaipur-agra-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94841.jpg"  alt="Delhi - Jaipur - Agra Tour" title="Delhi - Jaipur - Agra Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.hargobindtravels.in/tour-packages/delhi-jaipur-agra-tour.htm" title="Delhi - Jaipur - Agra Tour"><h3>Delhi - Jaipur - Agra Tour</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> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Jaipur, Agra</p>
															<div class="mt10px small">
							<form name="pkg_48788" id="pkg_48788" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.hargobindtravels.in/tour-packages/delhi-jaipur-agra-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Delhi - Jaipur - Agra 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="48788"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.hargobindtravels.in/tour-packages/golden-triangle-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94816.jpg"  alt="Golden Triangle Tour" title="Golden Triangle Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.hargobindtravels.in/tour-packages/golden-triangle-tour.htm" title="Golden Triangle Tour"><h3>Golden Triangle Tour</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> :  New Delhi, Jaipur, Agra</p>
															<div class="mt10px small">
							<form name="pkg_48762" id="pkg_48762" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.hargobindtravels.in/tour-packages/golden-triangle-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Golden Triangle 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="48762"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.hargobindtravels.in/tour-packages/taj-mahal-tour-with-kashmir.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94842.jpg"  alt="Taj Mahal Tour with Kashmir" title="Taj Mahal Tour with Kashmir"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.hargobindtravels.in/tour-packages/taj-mahal-tour-with-kashmir.htm" title="Taj Mahal Tour with Kashmir"><h3>Taj Mahal Tour With Kashmir</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> :  New Delhi, Srinagar, Agra, Gulmarg</p>
															<div class="mt10px small">
							<form name="pkg_48789" id="pkg_48789" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.hargobindtravels.in/tour-packages/taj-mahal-tour-with-kashmir.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Taj Mahal Tour with Kashmir - 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="48789"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.hargobindtravels.in/tour-packages/wondersof-rajasthan-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94926.jpg"  alt="Wonders Of Rajasthan Tour..." title="Wonders Of Rajasthan Tour..."  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.hargobindtravels.in/tour-packages/wondersof-rajasthan-tour.htm" title="Wonders Of Rajasthan Tour..."><h3>Wonders Of Rajasthan Tour...</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> :  Jaipur, Jaisalmer, Jodhpur</p>
															<div class="mt10px small">
							<form name="pkg_48844" id="pkg_48844" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.hargobindtravels.in/tour-packages/wondersof-rajasthan-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Wonders Of Rajasthan 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="48844"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.hargobindtravels.in/tour-packages/blissful-himalayas-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_1/26977/94909.jpg"  alt="Blissful Himalayas Tour" title="Blissful Himalayas Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.hargobindtravels.in/tour-packages/blissful-himalayas-tour.htm" title="Blissful Himalayas Tour"><h3>Blissful Himalayas Tour</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> :  New Delhi, Manali, Shimla</p>
															<div class="mt10px small">
							<form name="pkg_48830" id="pkg_48830" method="post" action="http://www.hargobindtravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.hargobindtravels.in/tour-packages/blissful-himalayas-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Blissful Himalayas 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="48830"/>
							</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:71:"Book Wildlife Culture Heritage Tour - 16 Nights / 17 Days Tour Packages";i:2;s:189:"book wildlife culture heritage tour - 16 nights / 17 days tour packages, wildlife and nature tour packages, new delhi, jaipur, ranthambore, agra, varanasi, jabalpur, khajuraho tour packages";i:3;s:240:"Book Wildlife Culture Heritage Tour - 16 Nights / 17 Days tour packages from Hargobind Travels - Get attractive 16 Nights / 17 Days Wildlife and Nature  tour packages for  New Delhi, Jaipur, Ranthambore, Agra, Varanasi, Jabalpur, Khajuraho.";i:4;s:469:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Jaipur, Ranthambore, Agra, Varanasi, Jabalpur, Khajuraho"        
		                 },
		      "description": "",
		      "name": "Wildlife Culture Heritage Tour",
		      "telephone": "+91-9815468000"
		    }
		    </script>
			";i:5;N;}