a:6:{i:0;s:6979:"				<div class="h1"><h1>Exotic Gateway Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.geetcompany.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.geetcompany.com/holiday-tour-packages.htm" title="Holiday Tour Packages">Holiday Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Exotic Gateway 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_1/22362/55086.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/22362/55086.jpg"  width="150" height="150"    alt="Exotic Gateway Tour" title="Exotic Gateway Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Tour Code :</b> 109</p>
												<p class="mb5px"><b>Duration :</b> 
						3 Nights / 4 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Mysore, Coonoor</p>
												<p><b>Price (Starting From) :</b>						
						INR 11600 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.geetcompany.com/travel-inquiry.htm">
						<input type="hidden" name="subject" value="Exotic Gateway 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="28077"/>
						</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="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: Coimbatore - Mysore
									</p>
									<div class="data p10px">Arrive at Coimbatore airport proceed for Mysore and check-in to the hotel. visit Chamundi Hills and Bull Temple followed by a visit to the Mysore Palace .Overnight stay at hotel in Ooty.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Mysore - Coonoor
									</p>
									<div class="data p10px">After breakfast proceed to Coonoor. Check in in resort. Coonoor, a captivating hill station in the Nilgiri Hills, is situated at an average altitude of 1839 m above sea level. It is surrounded by expansive tea plantations and can be best explored by taking a toy train ride. This train connects Coonoor with other nearby hill stations. Later, visit the Sim's Park, which is home to some rare species of shrubs and trees. This beautiful park was constructed in 1874 by Mr. JD Sim and Major Murray. For some fascinating viewpoints, visit Lamb's Rock, Dolphin's Nose and Lady Canning's Seat. You can spend the rest of the evening in wishful activities.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Coonoor
									</p>
									<div class="data p10px">After breakfast enjoy the whole day at leisure . Overnight stay at Coonoor.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Coonoor - Coimbatore
									</p>
									<div class="data p10px">After breakfast drop to Coimbatore Airport.</div>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						Coonoor<br />
<br />
Coonoor, a small hill station of Tamil Nadu, is situated at a distance of 17 kilometers from Ooty. Located in the Nilgiris ranges, the hill station stands at an elevation of 1,800 metres above sea level. Well connected with major cities of southern India, Coonoor provides opportunity for sightseeing, recreation and excursions in plenty.<br />
The ancient home of the Toda Tribe, Coonoor was discovered by the British in the 19th century. The destination is frequented by tourists and travelers travelling to the Nilgiri ranges in search of solitude and adventure.<br />
<br />
Mysore<br />
<br />
Mysore is a major tourist city of Karnataka. The city was the erstwhile capital of the state and hence has played an important role in the history of the state and of South India. Today it has developed into a modern city like many other cities in the country. But this city has not lost touch with its rich historical and cultural legacy. Mysore city is a favorite tourist destination in Karnataka. Tourist from within the country and from outside come see the splendour of the city of Mysore. The city has a number of places a person can visit. There are a number of Royal buildings, gardens, waterfalls, temples, museums and modern amusement parks.3.09% Government Service Tax.<br />
Anything else which is not mentioned in the Package.01-1031-03							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																				<li>Sightseeing</li>
																				<li>Transport</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Exclusions :</p> <ul><li>3.09% Government Service Tax.</li><li>
Anything else which is not mentioned in the Package.</li></ul><br />
													<!--DATA4 EMD--></div>
												<div class="ic bdr" id="data6"><!--DATA6 START-->
						<br />
						* 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. ~^#^~						<!--DATA6 EMD--></div>
											
					<!--MY TABS END--></div>
					";i:1;s:58:"Book Exotic Gateway Tour - 3 Nights / 4 Days Tour Packages";i:2;s:111:"book exotic gateway tour - 3 nights / 4 days tour packages, valley tour packages, mysore, coonoor tour packages";i:3;s:157:"Book Exotic Gateway Tour - 3 Nights / 4 Days tour packages from Geet & Company - Get attractive 3 Nights / 4 Days Valley  tour packages for  Mysore, Coonoor.";i:4;s:1735:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Mysore, Coonoor"        
		                 },
		      "description": "Coonoor

Coonoor, a small hill station of Tamil Nadu, is situated at a distance of 17 kilometers from Ooty. Located in the Nilgiris ranges, the hill station stands at an elevation of 1,800 metres above sea level. Well connected with major cities of southern India, Coonoor provides opportunity for sightseeing, recreation and excursions in plenty.
The ancient home of the Toda Tribe, Coonoor was discovered by the British in the 19th century. The destination is frequented by tourists and travelers travelling to the Nilgiri ranges in search of solitude and adventure.

Mysore

Mysore is a major tourist city of Karnataka. The city was the erstwhile capital of the state and hence has played an important role in the history of the state and of South India. Today it has developed into a modern city like many other cities in the country. But this city has not lost touch with its rich historical and cultural legacy. Mysore city is a favorite tourist destination in Karnataka. Tourist from within the country and from outside come see the splendour of the city of Mysore. The city has a number of places a person can visit. There are a number of Royal buildings, gardens, waterfalls, temples, museums and modern amusement parks.3.09% Government Service Tax.
Anything else which is not mentioned in the Package.01-1031-03",
		      "name": "Exotic Gateway Tour",
		      "telephone": "+91-9896771268"
		    }
		    </script>
			";i:5;N;}