a:6:{i:0;s:16615:"				<div class="h1"><h1>Indian Cultural Heritage</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.avashshergilltravel.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.avashshergilltravel.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Indian Cultural Heritage</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						13 Nights / 14 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">New Delhi, Jaipur, Mandawa, Agra, Jhansi, Varanasi, Khajuraho, Orchha, Fatehpur Sikri</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.avashshergilltravel.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Indian Cultural Heritage - 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="51224"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/357911/100960.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/357911/100960.jpg"  width="150" height="150"    alt="Indian Cultural Heritage" title="Indian Cultural Heritage" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
											<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> Arrival Delhi
								</p>
								<p class="aj">Arrive Delhi. Meet assist at the airport & transfer to hotel. Overnight stay at the Hotel.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 2:</b> Delhi
								</p>
								<p class="aj">After breakfast proceed for sightseeing tour of Old & New Delhi: OLD DELHI - A sight-seeing tour of Old Delhi would entail visiting the Raj Ghat - the memorial site where Mahatma Gandhi was cremated; Jama Masjid - the largest mosque in India. NEW DELHI - An extensive sight-seeing tour of New Delhi would include a visit to the Humayun's Tomb, the Qutub Minar, a drive along the ceremonial avenue - Rajpath, past the imposing India Gate, Parliament House, the President's Residence and would end with a drive through the Diplomatic Enclave. Overnight stay at the Delhi Hotel.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 3:</b> Delhi - Mandawa (230 Kms / 5 hrs by Surface)
								</p>
								<p class="aj">This morning after breakfast drive to Mandawa, often called the open air art gallery of Rajasthan', the region is famous for the high quality frescoes. Arrive Mandawa & transfer to hotel.<br />
Overnight stay at the hotel.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 4:</b> Mandawa - Jaipur (180 Kms / 4 hrs by Surface)
								</p>
								<p class="aj">This morning after breakfast take a walking tour of the painted 'havelis' of some of the leading business families of the country. Though they no longer live here, the local caretakers are happy to show the visitors around. Chowkhani Haveli, Gulab Rai Ladia Haveli, Lakshminarayan Ladia Haveli, Mohahanlal Saraf Haveli and Bhagchandika Haveli are of special interest. Spend the major part of the day looking into frescoes. Later drive to Jaipur - the fabled “pink city” of the desert named after Jai Singh, the former Maharaja of Jaipur. This is the only city in the world symbolizing the nine divisions of the universe through the nine rectangular sectors subdividing it.The palaces and forts of the yesteryears, which were witnesses to the royal processions and splendours are now living monuments. Arrive Jaipur & transfer to hotel.<br />
Overnight stay at the hotel. </p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 5:</b> Jaipur
								</p>
								<p class="aj">This morning after breakfast proceed for excursion to Amber Fort in the outskirts of Jaipur. Elephant ride ascent to the fort. AMBER FORT PALACE - Amber is the classic romantic Rajasthani fort palace. Its construction was started by Man Singh I in 1592, and completed by his descendent Jai Singh I. It's forbidding exterior belies an inner paradise where a beautiful fusion of Mughal and Hindu styles finds it's ultimate expression. Later city sightseeing tour of Jaipur covering: CITY PALACE - A delightful blend of Mughal and traditional Rajasthani architecture, the City Palace sprawls over one-seventh of the area in the walled city. It houses the Chandra Mahal, Shri Govind Dev Temple and the City Palace Museum. JANTAR MANTAR - This is the largest and the best preserved of the five observatories built by Jai Singh II in different parts of the country. This observatory consisting of outsized astronomical instruments is still in use. HAWA MAHAL - The ornamental facade of this "Palace of Winds" is a prominent landmark in Jaipur. Its five-storey structure of sandstone plastered pink encrusted with fine trelliswork and elaborate balconies. The palace has 953 niches and windows. Built in 1799 by Pratap Singh, the Mahal was a royal grandstand for the palace women. Visit a rug factory and see the ladies at the intricate work or a gem factory and see the gem cutting and polishing process.<br />
Overnight stay at the Hotel. </p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 6:</b> Jaipur - Fatehpur Sikri - Agra (250 Kms / 5 hrs by Surface)
								</p>
								<p class="aj">This morning after breakfast drive to the City of Taj Mahal- Agra enroute visiting Fatehpur Sikri- a perfectly preserved red sandstone "ghost town" which was the estranged capital of Mughal emperor Akbar, built in 1569 and deserted when its water supply failed. Arrive Agra and transfer to hotel.<br />
Overnight stay at the hotel.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 7:</b> Agra
								</p>
								<p class="aj">This morning after breakfast visit the magnificent 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. Also visit the Red 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 Diwan-I-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. Evening free to explore the rich handicrafts of Agra.<br />
Overnight stay at the Hotel. </p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 8:</b> Agra - Jhansi (By train) Jhansi - Orchha (16 Kms / By surface)
								</p>
								<p class="aj">This morning after breakfast transfer to railway station to board the train to Jhansi, Arrive Jhansi & drive to Orchha & transfer to hotel. Later tour of this historical site with magnificent temples and monuments. Some of the palaces were decorated with painted murals which represent the finest flowering of the Bundela school of painting.<br />
Overnight stay at the Hotel.</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 9:</b> Orchha - Khajuraho (170 Kms / 4 hrs by surface)
								</p>
								<p class="aj">This morning after breakfast drive to Khajuraho. Khajuraho- the legendary temples of Khajuraho are an incomparable experience. Acknowledged as one of the world’s artistic wonders, these temples dedicated to the Hindu pantheon of Gods are covered in carvings that are a paean to life and love. Built within a short span of a hundred years by the Chandela Rajputs, the 10th century temples lay forgotten until they were discovered in the present century. Khajuraho has achieved fame for the sensual appeal of its erotic sculptures. Arrive Khajuraho and transfer to hotel.<br />
Overnight stay at the Hotel. </p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 10:</b> Khajuraho
								</p>
								<p class="aj">This morning after breakfast explore the Western and Eastern temples of Khajuraho while your guide explains the intricate meaning and legends behind each describable sculpture. Overnight stay at the Hotel.</p>
								</td>
								</tr>
								</table>					
								</div><div id="show_more_content" style="display:none;">
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 11:</b> Khajuraho - Varanasi (By Flight)
									</p>
									<p class="aj">This morning after breakfast transfer to airport to board the flight for Varanasi-said to be the India’s most sacred city situated on the western bank of the holy river Ganga. It is also the oldest living city in the world. As a place for devotion and worship, with hundreds of temples dotting the city, sunrise on the river front as seen from a boat can be a spiritually uplifting sight. It has a fascination uniquely its own, a quality of sublime beauty, a timeless eternal appeal. Varanasi is the city which cannot be described, only experienced. Arrive Varanasi and transfer to hotel. Evening view "Aarti" ceremony on the Ghats. Overnight stay at the Hotel.</p>
									</td>	
									</tr>
									</table>				
									</div>
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 12:</b> Varanasi
									</p>
									<p class="aj">This morning boat cruise at the river Ganges to observe the way of life of pilgrims by the Ghats. Later excursion to Sarnath, 10kms. East of Varanasi is one of the Buddhism’s major centers of India. After attaining enlightenment, the Buddha came to Sarnath where he gave his first sermon. Visit the deer park and the museum and later back to Varanasi.<br />
Overnight stay at the Hotel.</p>
									</td>	
									</tr>
									</table>				
									</div>
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 13:</b> Varanasi - Delhi (By Flight)
									</p>
									<p class="aj">This morning after breakfast, Afternoon transfer to airport to connect the flight for Delhi, Arrive Delhi & transfer to hotel. Rest of the day at leisure or last minute shopping etc.<br />
Overnight stay at the Hotel.</p>
									</td>	
									</tr>
									</table>				
									</div>
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 14:</b> Delhi & Departure
									</p>
									<p class="aj">Transfer to airport in time to board the onward flight.</p>
									</td>	
									</tr>
									</table>				
									</div>					
							</div>							<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
													<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>Sightseeing</li>
															</ul>
						<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount * Airfare/Transport fare to be paid full at one time in advance.~^#^~* 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. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.avashshergilltravel.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Indian Cultural Heritage - 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="51224"/>
						</form>
						</div>
						
						";i:1;s:65:"Book Indian Cultural Heritage - 13 Nights / 14 Days Tour Packages";i:2;s:190:"book indian cultural heritage - 13 nights / 14 days tour packages, heritage tour packages, new delhi, jaipur, mandawa, agra, jhansi, varanasi, khajuraho, orchha, fatehpur sikri tour packages";i:3;s:228:"Avash Shergill Travel offers Indian Cultural Heritage - 13 Nights / 14 Days tour package, budget Heritage tour packages for New Delhi, Jaipur, Mandawa, Agra, Jhansi, Varanasi, Khajuraho, Orchha, Fatehpur Sikri at exciting price.";i:4;s:480:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Jaipur, Mandawa, Agra, Jhansi, Varanasi, Khajuraho, Orchha, Fatehpur Sikri"        
		                 },
		      "description": "",
		      "name": "Indian Cultural Heritage",
		      "telephone": "91-8699559635"
		    }
		    </script>
			";i:5;N;}