a:6:{i:0;s:23400:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Magical South India Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.thebluetour.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.thebluetour.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Magical South India 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-->				
								
						<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">
					
											<p class="mb5px"><b>Duration :</b> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Coorg, Mysore, Coimbatore, Ooty</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 22000 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.thebluetour.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Magical South India 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="191033"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_20/579882/300735.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_20/579882/300735.jpg"  width="150" height="87"    alt="Magical South India Tour" title="Magical South India Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</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 in Coimbatore | Coimbatore to Ooty
										</p>
										<p class="aj">Arrival at Coimbatore Airport, our representative greets you at the time of arrival and later drive to the picturesque hill station of Ooty. Upon reaching at Ooty, check into the hotel. Enjoy the remaining day at leisure. Overnight stay at 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> Ooty Sightseeing
										</p>
										<p class="aj">On this day, get set to explore the beautiful town of Ooty proceed for the visit to Doddabetta Peak. Next head to the famous Botanical Gardens of Ooty. After this, enjoy a short drive to the famous Ooty Lake, where you can while away your time boating and enjoying the scenic surroundings. Finally, head to the hotel to spend the night in peace.</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> Ooty - Coorg
										</p>
										<p class="aj">On this day, check out from the hotel and enjoy a scenic drive to the beautiful Coorg. On reaching the hotel in Coorg, check in and spend a relaxed evening as you watch the calm and green surroundings. Enjoy your 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> Coorg Sightseeing
										</p>
										<p class="aj">After breakfast visit Dubbare Elephant camp. The elephant camp boasts of plenty of elephants and offers tourists with an exceptional opportunity to be close to them and spend some memorable moments with them. Then visit Nisargadhama. Kaveri Nisargadhama Forest Park is one such place that can not be missed when on Coorg tour. A forest resort on an island, maintained by the forest department of Karnataka, Kaveri Nisargadhama Forest Park is undeniably one of the most beautiful and enjoyable part of any Coorg tour packages. Overnight at hotel in Coorg.</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> Coorg-Mysore
										</p>
										<p class="aj">Check out from the hotel & proceed to Mysore. Arrive into Mysore and check into your hotel. In the evening visit to Brindavan Gardens. Return to the hotel. Overnight stay at 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> Mysore to Coimbatore | Departure from Coimbatore
										</p>
										<p class="aj">In morning, check-out from the hotel. Thereafter, proceed to Coimbatore Airport for your onward journey. Tour Ends.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>EP (No Meal)</li>
																				<li>Accommodation on twin sharing basis</li><li>
Meals: Breakfast</li><li>
Intercity transfers and sightseeing by an AC vehicle (AC will not work on hills)</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Meals other than those specified above</li><li>
Personal expenses like portages, tips, laundry, mineral water etc.</li><li>
Monument entrances, camera charges, etc.</li><li>
Any activity not mentioned in the inclusions</li><li>
Travel Insurance</li><li>
Additional cost due to flight cancellation/ road blocks, Political unrest etc</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>All given rates are per person on Twin/Double sharing basis, until unless specified specially in Quotation.</li><li>
All given rates at quotation level are based on real time availability. There may be a change in price in between the time interval of Quotation and Confirmation of Package. Any such change will be specified accordingly.</li><li>
Special payment and cancellation policy will be applicable during peak season/Blackout dates. These dates usually – City Events, Regional/National Holidays, Political Conferences, Major Cultural festivals or any other Event which can affect regular tourist movement.</li><li>
In case of unavailability of rooms in given Hotels due to any unexpected scenario, alternate accommodation arrangement will be made in similar standard available Hotel.</li><li>
Room occupancy will strictly be in accordance with the one confirmed at the time of booking.</li><li>
Check-in and Check-out timings of Hotels are different and based on the regulations/Policies of local Hotel unions of concern region/City or general trend of market. These will be specified at the time of quotation/Communication.</li><li>
In case of Triple sharing room, rolling mattress will be provided for third person. Occupancy regulations for Family rooms and other Club rooms will be in accordance with Hotel’s policy.</li><li>
Availability of rooms, given at the time of Quotation, will be on real time basis and final availability will be shared at the time of confirmation of package. OYO will not hold any services on confirmed state, at quotation stage.</li><li>
Any booking related with flight tickets will be booked on real time price basis. OYO will not hold any Air ticket on confirmed basis without final payment of air tickets share. As airfares are extremely dynamic in nature, any difference in cost, arises during acknowledgement and issuance of ticket, will be taken care by Client.</li><li>
Any amendment in issued flight tickets, like – Change in Dates, Names, timing, airline or any other information will attract amendment charges as per Airline’s amendment Policies.</li><li>
Flight ticket cancellation / Refund is strictly in accordance with Airline’s cancellation/Refund policies.</li><li>
OYO Shall not be responsible for any Loss of Baggage / Loss of Belongings / Broken Baggage at Airport or anywhere else.</li><li>
Flight timings are to be kept into consideration while reaching to the airport. OYO shall not be responsible for any incidence where client is not able to reach airport / Board the flight due to any reason of personal nature, Insufficient time duration in connecting flights or any other reason related with airline’s governance like – Delay in Flight, Change in timing / Overbooking by Airline or any other factor.</li><li>
Vehicle provided during tour will follow the tour plan specified in the itinerary. Driver in any way will not be deviated from the specified / common route.</li><li>
Vehicle provided during the tour will not be on disposable basis. Any travel, after the activity decided in tour will not be permitted. Late evening / late night drive apart from designed plan will be prohibited.</li><li>
There are some monuments/areas, restricted for Vehicle entrance by the local authorities. In any such case, Vehicle will drop you till the nearest possible point and further arrangements will have to be managed by Client.</li><li>
Vehicle will not be allocated on the leisure day (day free for relaxation).</li><li>
Air Condition in Vehicles will not be operational on hilly areas (due to mechanical reasons). Driver reserves the rights to switch off /operate AC as per the terrain, climatic and vehicle’s condition.</li><li>
Any entrance fees, monument fees or any other activity charges, including but not limited to charges in relation to parking, transportation, tolls, taxes, camping, admission, meals etc. will not be included in the package until and unless so specified specially in inclusion section.</li><li>
The above mentioned package may not be available with displayed price during Long Week-ends, National Holidays and Regional festivals. There is a probability of difference in cost, which will be specified at the time of communication.</li><li>
In case of amendment in package due to increase in number of Guests. The difference in cost shall be borne by the Client/customer.</li><li>
Any charges related with on-ground modification/addition of service, which is opted by Client by his/her own choice and not affecting rest of the tour itinerary, will have to be paid directly to Driver/Supplier on the behalf of OYO.</li><li>
OYO reserves the right to modify or cancel the tour package, in part or in whole, at any time prior to the commencement of the tour or a particular part of the tour, as the case may be, for any reason including but not limited to the act of god, act of man whether or not unforeseen and / or unexpected etc. In all such cases, refund will be processed according to the Cancellation policy of OYO as applicable at that specific point of time.</li><li>
OYO Shall not be held responsible for any refund/Charges, in case of services booked of non-refundable nature. OYO’s liability in relation to the Package shall at all times be limited to those circumstances where an express liability has been cast on it under these Terms.</li><li>
In case of any on ground issues with any third party, OYO shall try to support in all possible ways but shall not be held liable for the act and hence will not be liable for any sort of compensation.</li><li>
In case of any natural calamity or any other force majeure incident, OYO reserves the rights to modify/change or cancel the partial or complete tour Package. OYO shall not be held responsible for refund/Compensation in any such circumstances.</li><li>
Package price is a consolidation of different components inseparable in nature in terms of costing. Any unused service/services due to any unspecified reason, will not be refunded back.</li><li>
Refund on cancellation (Cancellation in accordance with Cancellation Policies) is strictly dependent on Cancellation policies and the refund process will take minimum 14 working days.</li><li>
Oyo's entire liability to the Client for any claim arising out of this Package / browsing the website/ application, shall be limited to the amount equivalent to the price paid by the Client for the Package giving rise to such claim minus all applicable taxes and third-party charges.</li><li>
OYO shall not be liable to pay for any loss suffered by the Client, if it is found that the Client had been in violation of any express or implied directions given by or on behalf of OYO, applicable law, rule and / or regulations.</li><li>
No offer, promo code or discount shall be applicable to this Package unless so expressly notified by OYO on its website and this Package cannot be clubbed with any scheme, offer, package of OYO or its associates.</li><li>
All grievances shall first be raised with Customer relationship team within 15 days of the occurrence of such event. In case no resolution to such grievance is provided by Customer relationship team within 30 days, the Client shall have the right to escalate the dispute in the accordance with these terms and OYO’s applicable policies.</li><li>
Client shall be liable to reimburse OYO for any and all losses suffered and / or charges incurred as a result of the Client’s actions, direct or indirect, in relation t CLient</li><li>
This Package shall be governed by laws of India, and all disputes in relation to this package shall be resolved via arbitration in Delhi in accordance with the Arbitration and Conciliation Act, 1996. The courts of Delhi shall have the exclusive jurisdiction in relation to any matter arising out of the Package.</li><li>
This Package and all of your rights and obligations in relation to the same are non-transferable and cannot be assigned without the prior permission of OYO.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>Time</li><li>
Cancellation amount</li><li>
15 days or more prior to departure</li><li>
25% of the package OR min prepayment, whichever is higher</li><li>
Within 15 days to departure</li><li>
100% of the package cost</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.thebluetour.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Magical South India 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="191033"/>
						</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.thebluetour.in/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/goa-city-tour-packages.htm" title="Goa City Tour Packages">Goa City</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/kochi-tour-packages.htm" title="Kochi Tour Packages">Kochi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/jispa-tour-packages.htm" title="Jispa Tour Packages">Jispa</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/mysore-tour-packages.htm" title="Mysore Tour Packages">Mysore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/coimbatore-tour-packages.htm" title="Coimbatore Tour Packages">Coimbatore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/thekkady-tour-packages.htm" title="Thekkady Tour Packages">Thekkady</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.thebluetour.in/kumarakom-tour-packages.htm" title="Kumarakom Tour Packages">Kumarakom</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.thebluetour.in/munnar-tour-packages.htm" title="Munnar Tour Packages">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.thebluetour.in/coorg-tour-packages.htm" title="Coorg Tour Packages">Coorg</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.thebluetour.in/ooty-tour-packages.htm" title="Ooty Tour Packages">Ooty</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.thebluetour.in/alleppey-tour-packages.htm" title="Alleppey Tour Packages">Alleppey</a> <b class="alpha50 bn small">(1)</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.thebluetour.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.thebluetour.in/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</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:63:"Book Magical South India Tour - 5 Nights / 6 Days Tour Packages";i:2;s:143:"book magical south india tour - 5 nights / 6 days tour packages, beach and islands tour packages, coorg, mysore, coimbatore, ooty tour packages";i:3;s:182:"The Blue Tour & Travel offers Magical South India Tour - 5 Nights / 6 Days tour package, budget Beach and Islands tour packages for Coorg, Mysore, Coimbatore, Ooty at exciting price.";i:4;s:427:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Coorg, Mysore, Coimbatore, Ooty"        
		                 },
		      "description": "",
		      "name": "Magical South India Tour",
		      "telephone": "+91-9509888449"
		    }
		    </script>
			";i:5;N;}