a:6:{i:0;s:16845:"				<div class="h1"><h1>Romantic Himachal With Taj Tour Package</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>Romantic Himachal With Taj Tour Package</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/171812.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/407812/171812.jpg"  width="150" height="150"    alt="Romantic Himachal With Taj Tour Package" title="Romantic Himachal With Taj Tour Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Duration :</b> 
						8 Nights / 9 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Manali, Shimla, Agra</p>
												<p><b>Price (Starting From) :</b>						
						INR 62910 Per Person						</p>
												<p><b>Special Offer :</b> 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 />
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 />
<br />
Sightseeing as per the itinerary<br />
08 Breakfast, 08 Lunch or 08 Dinner at the hotels mentioned<br />
Accommodation for 8 nights 9 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 Cost</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="Romantic Himachal With Taj Tour Package - 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="102647"/>
						</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: New Delhi - Agra
									</p>
									<div class="data p10px">Arrive Delhi airport / railway station & drive to another historical and romantic city - Agra. Afternoon<br />
visit Akbarabad, as Agra was known during the Mughal era, is home to some of the most magnificent<br />
Mughal architectures. Situated on the banks of river Yamuna, the monumental beauty of Agra has<br />
inspired countless people around the world. This third largest city of the state of Uttar Pradesh is home to<br />
three UNESCO world heritage sites. Later Proceed to Visit to the world - famous Taj Mahal - or literally<br />
"Crown of Palaces" was built by Shah Jehan to immortalize the memory of his beloved wife Mumtaz Mahal<br />
who died tragically in 1631. After that visit, the Red Fort built by three generations of Mughal Emperors<br />
between 1565 and 1573. It housed both the presidential Palaces of the Royal family, and the military<br />
quarters. Overnight in the hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Agra - Delhi (200 Kms / 04 hrs)
									</p>
									<div class="data p10px">After breakfast drive to Agra en-route visit Sikandra. drive to Delhi arrive and check in at hotel. Later visit-<br />
Akshardham Temple- Akshardham' means the divine abode of God. After that back to hotel rest of the day<br />
free at leisure. Overnight at Hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Delhi - Shimla (343 kms/8 hrs)
									</p>
									<div class="data p10px">Morning check out from the Hotel & drive to Shimla (343 kms/8 hrs) , perched at 7000 feet above sea<br />
level, The heady combinations of Chill mountain air, orchards and colonial charms still make Shimla a<br />
dream get away.Arrive & transfer to hotel. Rest of the day is free to explore various scenic sights or visit<br />
mall road and shopping. Night stay in Shimla</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Shimla-Kufri-Shimla
									</p>
									<div class="data p10px">Morning proceed for the sightseeing of Kalbadevi Temple, Jakhu Temple, Hanuman Temple or stop for a<br />
while at the beautiful stained – glass - windows of Christ Church, which was built in the 1850 ‘s. Afternoon<br />
visit Kufri a 30 Minutes drive from Shimla, an exotica of nature as a place surrounded by dense forest and<br />
snow caped mountains amidst virgin peaks and natures flora and fauna where one can completely relax<br />
and tune oneself for natural beauty, .Evening free to enjoy the scenic beauty of Kufri. Fagu, Indira Gandhi<br />
Holiday Home ,horse riding (optional) in the apple orchids. Rest of the day is free to explore various scenic<br />
sights or visit mall road and shopping. Night stay in Shimla.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 5: Shimla-Kullu - Manali (285 kms / 7 hrs
									</p>
									<div class="data p10px">Morning check out from the Hotel & drive to Manali (7-8 Hours), valley of Gods, is a combination of natural<br />
splendor and rich cultural heritage. Arrive & transfer to hotel. Rest of the day at leisure. Night stay in<br />
Manali</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 6: Manali
									</p>
									<div class="data p10px">Morning proceed to Visit the 450 years old Hidimbadevi Temple built in the tranquil and serene woods,<br />
the oldest temple in Manali, Tibetean center & monastery, Vasisth village, known for its hot Sulpher<br />
springs Roerich art Gallery.Later visit Naggar Castle and local Bazar.Over Night stay in Manali.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 7: Manali (Up to Snow line )
									</p>
									<div class="data p10px">After Breakfast at hotel proceed for full day excursion visiting, Morning proceed to visit the Solang Valley,<br />
which offers fine views of glaciers and snow, capped peaks , Rohtang Pass (Upto Snow Line in case<br />
Rohtang is closed due to snow fall and govt rules regulation ) enjoy Skiing full day around Rohtang in the<br />
mountain side snow fields. Dinner & Overnight at hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 8: Manali - Delhi ( 570 Kms. / 12 Hrs.).
									</p>
									<div class="data p10px">Morning after breakfast check out hotel and proceeds drive to Delhi ( 570 Kms. / 12 Hrs.) or rest in hotel.<br />
Overnight stay at Hotel only.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 9: Delhi Departure
									</p>
									<div class="data p10px">After breakfast check out from the Hotel proceed to cover the rest of the City Attractions of New Delhi i.e.<br />
Parliamant House, Lotus Temple, Humayun’s Tomb, Quotab Minar and India Gate. visit shopping areas in<br />
Delhi. On time and proceed towards airport/ railway station to board Flight/ Train back to home</div>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						Per adult Price - INR 31455 X 2 pax = INR 62910<br />
Validity : Jul to SepHOTEL 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 />
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 />
<br />
Sightseeing as per the itinerary<br />
08 Breakfast, 08 Lunch or 08 Dinner at the hotels mentioned<br />
Accommodation for 8 nights 9 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 Cost							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																				<li>Sightseeing</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Specific Departure Dates :</p>Personal 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<br />
come into effect prior to departure<br />
Still camera/ video camera charger<br />
													<!--DATA4 EMD--></div>
							
						<div class="ic bdr" id="data5"><!--DATA5 START-->
						<br />
						
    	<p class="h dif xlarge b mb5px">The Retreat - AGRA</p>
    	<div class="otherDetails aj">The Retreat is a 4 star property situtated near Prateek Enclave in Agra and is 10km from Kheria Airport. It<br>
features a large outdoor pool.<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">Agra Fort Railway Station</td>
				<td class="headHr p5px b">Cantontment Railway Station</td>
				<td class="headHr p5px b">Fatehpur Sikri</td>
				<td class="headHr p5px b">Idgah Bus Terminal</td>
			</tr>
			<tr>
				<td class="data p5px">3</td>
				<td class="data p5px">4</td>
				<td class="data p5px">5</td>
				<td class="data p5px">35</td>
				<td class="data p5px">6</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Hotel O'Delhi - NEW DELHI</p>
    	<div class="otherDetails aj">Strategically located close to the Karol Bagh Metro Station, this four storey hotel is an inexpensive yet<br>
comfortable lodging option. There are 22 fully furnished air-conditioned guestrooms to select from.<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">Gurudwara Sis Ganj Sahib</td>
				<td class="headHr p5px b">India Gate</td>
				<td class="headHr p5px b">Qutub Minar</td>
				<td class="headHr p5px b">Rashtrapati Bhavan</td>
			</tr>
			<tr>
				<td class="data p5px">4</td>
				<td class="data p5px">6</td>
				<td class="data p5px">7</td>
				<td class="data p5px">19</td>
				<td class="data p5px">5</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">The Grand Welcome - SHIMLA</p>
    	<div class="otherDetails aj">Offering free internet facility for its guests, The Grand Welcome is situated at a distance of 9 km from the<br>
Ridge. This hotel in Shimla accommodates 35 spacious rooms spread across 4 floors.<br>
Distance from Hotel</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Ridge</td>
				<td class="headHr p5px b">Jakhu Temple</td>
				<td class="headHr p5px b">Kalka Shimla Railway</td>
				<td class="headHr p5px b">Kufari Church</td>
				<td class="headHr p5px b">Shimla Airport</td>
			</tr>
			<tr>
				<td class="data p5px">9</td>
				<td class="data p5px">6</td>
				<td class="data p5px">28</td>
				<td class="data p5px">17</td>
				<td class="data p5px">27</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</li>
	<li>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:78:"Book Romantic Himachal With Taj Tour Package - 8 Nights / 9 Days Tour Packages";i:2;s:149:"book romantic himachal with taj tour package - 8 nights / 9 days tour packages, heritage tour packages, new delhi, manali, shimla, agra tour packages";i:3;s:199:"Book Romantic Himachal With Taj Tour Package - 8 Nights / 9 Days tour packages from Elegant Enterprise - Get attractive 8 Nights / 9 Days Heritage  tour packages for  New Delhi, Manali, Shimla, Agra.";i:4;s:1594:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Manali, Shimla, Agra"        
		                 },
		      "description": "Per adult Price - INR 31455 X 2 pax = INR 62910
Validity : Jul to SepHOTEL DETAILS
We select accommodations that reflect the character of the destination. This could mean a handpicked Hotels with Best
of the Wholesale prices

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

Sightseeing as per the itinerary
08 Breakfast, 08 Lunch or 08 Dinner at the hotels mentioned
Accommodation for 8 nights 9 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 Cost",
		      "name": "Romantic Himachal With Taj Tour Package",
		      "telephone": "+91-9400401155"
		    }
		    </script>
			";i:5;N;}