a:6:{i:0;s:13960:"				<div class="h1"><h1>Delhi - Agra Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.southindiantours.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.southindiantours.co.in/travel-packages.htm" title="Travel Packages">Travel Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Delhi - Agra Tour</p>
				<br />
				
									<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>
					
					<table class="w100 formTable imgWidth">
					<tr>
					
											<td class="p10px vat imgWidth150 w150px">
						<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_14/407812/171818.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/407812/171818.jpg"  width="150" height="150"    alt="Delhi - Agra Tour" title="Delhi - Agra Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Agra</p>
												<p><b>Price (Starting From) :</b>						
						INR 26474 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.southindiantours.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Delhi - Agra Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="102653"/>
						</form>
						</p>
											</td>
					</tr>
					</table>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
											<br />
					
					<div class="packageTabs myTabs horizontal mc"><!--MY TABS STARTS-->
					<ul class="fo lsn m0px p0px">
					
											<li id="tab2"><a href="#data2">Itinerary</a></li>
												<li id="tab4"><a href="#data4">Tour Detail</a></li>
												<li id="tab5"><a href="#data5">Rate Card</a></li>
												<li id="tab6"><a href="#data6">Terms &amp; Conditions</a></li>
											</ul>
					
					
											<div class="ic bdr" id="data2"><!--DATA2 START-->
						<br />
						<ul class="lsn m0px p0px">
									<li>
									<p class="b mb5px">Day 1: Delhi Arrival
									</p>
									<div class="data p10px">On arrival at Airport / Railway station, meet our representative and proceed to Hotel for Check in. Delhi is a city built and re-built seven times over several centuries. The capital city today marries the quaint and unique elements of different historical eras with the pace of the bustling, growing economy. At every turn of the road, the past and the present coexist. Later proceed for city Tour of NEW DELHI - drive past the stately government buildings of the British Era designed by Lutyen’s, including the Indian Gate & the Presidential Palace. Continue onto the beautiful Humayun’s tomb of the Mughal era & thereafter visit the towering minaret of Qutab Minar. Overnight at Hotel</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Delhi City Tour
									</p>
									<div class="data p10px">After breakfast visit the Jama Masjid, Red Fort and local Bazaar. After breakfast visit Jama Masjid- Jama Masjid, was commissioned to be constructed by the Mughal Emperor Shah Jahan. It holds the distinction of being one of the biggest and the most well known mosque of Old Delhi. Red Fort- TheRed Fort is popularly known as the Lal Quila and is representative of the true splendor of the Mughal court.<br />
This imposing fort will engulf you with its size and grandeur. Later afternoon visit local market and temples. Overnight at Hotel</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Delhi – Agra
									</p>
									<div class="data p10px">After breakfast drive to Agra En-route Fatehpur Sikri - the extraordinary city built by Akbar the Great, deserted 14 years later, but which, during its brief span, exceeded London in both grandeur and population. After visit continue drive to Agra. Arrive and check in at Hotel. Akbarabad, as Agra was known during the Mughal era, is home to some of the most magnificent Mughal architectures. Situated on the banks of river Yamuna, the monumental beauty of Agra has inspired countless people around the world.<br />
This third largest city of the state of Uttar Pradesh is home to three UNESCO world heritage sites.<br />
Overnight at Hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Agra City Tour
									</p>
									<div class="data p10px">After breakfast Proceed to visit to the world - famous Taj Mahal - or literally "Crown of Palaces" was built by Shah Jehan to immortalize the memory of his beloved wife Mumtaz Mahal who died tragically in 1631. After that visit, the Red Fort built by three generations of Mughal Emperors between 1565 and 1573. It housed both the presidential Palaces of the Royal family, and the military quarters. Itmad-ud-Daulah It is believed that the glorious Taj Mahal was also probably inspired from another monument in Agra called the Itmad-ud-Daulah. And so this Mughal mausoleum is also called the ‘Baby Taj’. This beautiful tomb definitely calls for a visit. The tomb, built between 1622 and 1628 has walls made of white marble from<br />
Rajasthan, encrusted with semi-precious stone decorations. Sikandra The ‘Tomb of Akbar the Great’- Sikandra is unique in its beauty as the monument constructed in deep red stone stands out serenely against the lush green gardens</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 5: Agra - Delhi
									</p>
									<div class="data p10px">After Breakfast at hotel check out and proceed for your onward destination.</div>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						Per adult Price - INR 13237 X 2 pax = INR 26474<br />
Validity : Jul to Sep<br />
HOTEL DETAILS<br />
We select accommodations that reflect the character of the destination. This could mean a handpicked Hotels with Best<br />
of the Wholesale prices<br />
<br />
VEHICLE DETAILS<br />
TATA Indigo<br />
Our cars/buses are commercial registered , GPS enabled & Clean new age Cars.Our Vehicles is checked and<br />
replaced on a regular basis with spot checks by our Operations Manager<br />
No. of Vehicle : 1<br />
No. of Seats :01 PUSHBACK + 02 STRAIGHT BACK<br />
Luggage Space :02 PIECES IN CAR & 02 PIECES ON TOP<br />
Courteous Music System GPS Enabled Multipin Charger Clean Car Soft Tissue Top Carrier<br />
<br />
Sightseeing as per the itinerary<br />
04 Breakfast at the hotels mentioned<br />
Accommodation for 4 nights 5 days on double sharing basis<br />
All Transfers, excursions & sightseeing as per the itinerary by private TATA Indigo in Deluxe Package<br />
Below 5 Yrs Child sharing same bed with parents will be Complimentary.<br />
Parking and all transport related expense including Driver Services<br />
All toll taxes, parking fees, Fuel and driver's allowances<br />
Welcome drink on arrival<br />
All Transport & Hotels Related Taxes<br />
GST & all Government Taxes<br />
A 24 - hour helpline.<br />
Assistance on Arrival.<br />
No Hidden CostPersonal expenses such as laundry, telephone calls, tips & gratuity, mineral water, soft & hard drinks, porterage<br />
Anything not mentioned in the inclusions<br />
Additional sightseeing or extra usage of vehicle, other than mentioned in the itinerary<br />
Entrance Fees & Guide charges<br />
Any cost arising due to natural calamities like, landslides, road blockage, political disturbances (strikes), etc (to be borne by the client, who is directly<br />
payable on the spot)<br />
Any increase in Airlines taxes or fuel price at the time of departure, leading to increase in cost on surface transportation & land arrangements, which may come into effect prior to departure<br />
Still camera/ video camera charger							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																				<li>Meals</li>
																				<li>Sightseeing</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Exclusions :</p> <ul><li>Personal expenses such as laundry, telephone calls, tips & gratuity, mineral water, soft & hard drinks, porterage</li><li>
Anything not mentioned in the inclusions</li><li>
Additional sightseeing or extra usage of vehicle, other than mentioned in the itinerary</li><li>
Entrance Fees & Guide charges</li><li>
Any cost arising due to natural calamities like, landslides, road blockage, political disturbances (strikes), etc (to be borne by the client, who is directly</li><li>
payable on the spot)</li><li>
Any increase in Airlines taxes or fuel price at the time of departure, leading to increase in cost on surface transportation & land arrangements, which may come into effect prior to departure</li><li>
Still camera/ video camera charger</li></ul><br />
													<!--DATA4 EMD--></div>
							
						<div class="ic bdr" id="data5"><!--DATA5 START-->
						<br />
						
    	<p class="h dif xlarge b mb5px">Hotel Intercity - NEW DELHI</p>
    	<div class="otherDetails aj">Redefining luxury in hospitality, Hotel Intercity in Delhi offers a total of 23 well furnished rooms to choose<br>
from. The hotel offers modern comforts to its guests at budgeted costs.<br>
Distance from Hotel</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Chandni Chowk</td>
				<td class="headHr p5px b">Connaught Place</td>
				<td class="headHr p5px b">Feroz Shah Kotla Stadium</td>
				<td class="headHr p5px b">India Gate</td>
				<td class="headHr p5px b">ISBT</td>
			</tr>
			<tr>
				<td class="data p5px">8</td>
				<td class="data p5px">3</td>
				<td class="data p5px">8</td>
				<td class="data p5px">6</td>
				<td class="data p5px">12</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Hotel Crimson Palace - AGRA</p>
    	<div class="otherDetails aj">Located in the heart of Agra and close to Taj Mahal and Agra Fort, Hotel Crimson Palace is a budget<br>
friendly hotel offering modern amenities and best services. The hotel is beautifully designed and offers<br>
excellent hospitality.<br>
Distance from Hotel</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Agra Fort</td>
				<td class="headHr p5px b">Baby Taj</td>
				<td class="headHr p5px b">Bikanerwala</td>
				<td class="headHr p5px b">Cafe Coffee Day</td>
				<td class="headHr p5px b">Domino's</td>
			</tr>
			<tr>
				<td class="data p5px">3</td>
				<td class="data p5px">8</td>
				<td class="data p5px">4</td>
				<td class="data p5px">1</td>
				<td class="data p5px">2</td>
			</tr>
		</table></div><br>						<!--DATA5 EMD--></div>
												<div class="ic bdr" id="data6"><!--DATA6 START-->
						<br />
						~^#^~~^#^~<p><strong>IMPORTANT NOTE</strong>

<ul>
	<li>Rates are not valid for Festive peak season.</li>
	<li>Rates are based on Hotels Subject to Availability at the time of making Reservation. In case of unavailability in mentioned hotels,alternate accommodation will be arranged in a similar category hotel.</li>
	<li>Rates are subject to change if there is any Fair &amp; Festival, Major conference, events in travel destination</li>
	<li>Early check in / late checks out is subject to availability of rooms.</li>
	<li>Cancellation charges would be as per the company policy.</li>
	<li>Vehicle confirmed will be as per Itinerary and not at disposal. AC will work only in the plains and will be switched off during hill drives.</li>
	<li>All sightseeing mentioned are subject to weather conditions, political conditions &amp; traffic conditions in the destination.</li>
	<li>Any sightseeing missed due to natural calamities / weather conditions is non-refundable.</li>
	<li>All entrances fees will be on direct payment basis as per Itinerary</li>
	<li>It is not advisable to travel in night, if necessary supplement charge applicable</li>
</ul>

<p><strong>PAYMENT POLICY</strong>

<ul>
	<li>Deposit of 25% of the package cost at the time of booking.</li>
	<li>Need 50% payment of the package cost, 30 days prior to departure date</li>
	<li>Need 100% payment of the package cost, 15 days prior to departure date</li>
</ul>

<p><strong>CANCELLATION POLICY</strong>

<ul>
	<li>10% of full tour cost - 60 days prior to arrival.</li>
	<li>25% of full tour cost - 30 days prior to arrival.</li>
	<li>50% of full tour cost - between 15 &amp; 29 days prior to tour.</li>
	<li>75% of full tour cost - between 14 &amp; 7 days prior to tour</li>
	<li>100% - within 7 days prior to tour.</li>
</ul>						<!--DATA6 EMD--></div>
											
					<!--MY TABS END--></div>
					";i:1;s:56:"Book Delhi - Agra Tour - 4 Nights / 5 Days Tour Packages";i:2;s:111:"book delhi - agra tour - 4 nights / 5 days tour packages, heritage tour packages, new delhi, agra tour packages";i:3;s:146:"Elegant Enterprise offers Delhi - Agra Tour - 4 Nights / 5 Days tour package, budget Heritage tour packages for New Delhi, Agra at exciting price.";i:4;s:2324:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Agra"        
		                 },
		      "description": "Per adult Price - INR 13237 X 2 pax = INR 26474
Validity : Jul to Sep
HOTEL DETAILS
We select accommodations that reflect the character of the destination. This could mean a handpicked Hotels with Best
of the Wholesale prices

VEHICLE DETAILS
TATA Indigo
Our cars/buses are commercial registered , GPS enabled & Clean new age Cars.Our Vehicles is checked and
replaced on a regular basis with spot checks by our Operations Manager
No. of Vehicle : 1
No. of Seats :01 PUSHBACK + 02 STRAIGHT BACK
Luggage Space :02 PIECES IN CAR & 02 PIECES ON TOP
Courteous Music System GPS Enabled Multipin Charger Clean Car Soft Tissue Top Carrier

Sightseeing as per the itinerary
04 Breakfast at the hotels mentioned
Accommodation for 4 nights 5 days on double sharing basis
All Transfers, excursions & sightseeing as per the itinerary by private TATA Indigo in Deluxe Package
Below 5 Yrs Child sharing same bed with parents will be Complimentary.
Parking and all transport related expense including Driver Services
All toll taxes, parking fees, Fuel and driver's allowances
Welcome drink on arrival
All Transport & Hotels Related Taxes
GST & all Government Taxes
A 24 - hour helpline.
Assistance on Arrival.
No Hidden CostPersonal expenses such as laundry, telephone calls, tips & gratuity, mineral water, soft & hard drinks, porterage
Anything not mentioned in the inclusions
Additional sightseeing or extra usage of vehicle, other than mentioned in the itinerary
Entrance Fees & Guide charges
Any cost arising due to natural calamities like, landslides, road blockage, political disturbances (strikes), etc (to be borne by the client, who is directly
payable on the spot)
Any increase in Airlines taxes or fuel price at the time of departure, leading to increase in cost on surface transportation & land arrangements, which may come into effect prior to departure
Still camera/ video camera charger",
		      "name": "Delhi - Agra Tour",
		      "telephone": "+91-9400401155"
		    }
		    </script>
			";i:5;N;}