a:6:{i:0;s:10273:"				<div class="h1"><h1>Classical Tour of Karnataka</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.highspiritadventures.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.highspiritadventures.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Classical Tour of Karnataka</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">
						6 Nights / 7 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Bangalore, Hassan, Mysore</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.highspiritadventures.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Classical Tour of Karnataka - 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="118990"/>
						</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_15/445618/192869.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/445618/192869.jpg"  width="150" height="150"    alt="Classical Tour of Karnataka" title="Classical Tour of Karnataka" /></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 in Bangalore
								</p>
								<p class="aj">On arrival at Bangalore airport/railway station, meet our tour representative who will drive you to your already booked hotel and assist you with the check in process. Check in at the hotel. The rest of the day is free at leisure. You can rest in the hotel or take pleasure of your hotel's modern amenities. An overnight stay in the hotel in Bangalore.</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> Bangalore
								</p>
								<p class="aj">In the morning after breakfast, we will proceed for Bangalore's local sightseeing tour. In our day tour, we will visit some of the major attractions of the city and have a lifetime experience. Some of the places we will be having in our Bangalore day tour include Vidhan Sabha, Lal Bagh Botanical Garden, a government edifice built in Neo Dravidian style, Tipu's Palace, Bangalore Palace, etc. later in the evening , we will return back to the hotel for an overnight stay.<br />
<br />
Bangalore is the capital of Karnataka state of India. Situated in southern India on the Deccan Plateau, at an altitude of about 900 m (3,000 ft) above sea level, the city is acknowledged for its pleasant climate all over the year.</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> Bangalore- Mysore
								</p>
								<p class="aj">Today after breakfast, we will check out from the hotel and leave for Mysore. On arrival, check in to your pre-booked hotel. Thereafter, get ready for sightseeing of Mysore. We will start our Mysore sightseeing tour by paying a visit to the famous Mysore Palace and Brindavan Garden. In the evening be back to the hotel for a relaxing overnight stay.<br />
<br />
Mysore Palace also known as the Amba Vilas Palace was built in 1912 with the Indo Saracenic style of architecture. It holds the historical significance and listed among the must watch places in Mysore.<br />
<br />
Brindavan Garden is a beautiful garden adjacent to a multipurpose Krishnarajasagara dam, which is built across Kaveri River.</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> Mysore- Hassan
								</p>
								<p class="aj">After having breakfast in the hotel, we will check out and drive to Hassan. On reaching Hassan, we will check in at the hotel. After resting for some time, get ready for the local sightseeing of Hassan and visit to some of its major tourist places. We will be visiting Halebid and Belur, the Chennakeshava Temple. Later, we will return back to the hotel for a comfortable overnight stay.<br />
<br />
Hassan is a city and the district headquarters of Hassan district in Karnataka state. The town is located 934 m above the sea level with the fine climate conditions similar to Bangalore.</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> Hassan to Hospet
								</p>
								<p class="aj">In the morning after breakfast, we will leave from Hassan and proceed to Hospet by road. On arrival, check in at the hotel. The rest of the day is free at leisure. During your leisure time, you can stay back in your room or take pleasure of your hotel's modern amenities.</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> Hospet
								</p>
								<p class="aj">Today after breakfast, we will proceed for the local sightseeing tour of Hospet and visit the famous monuments of Hampi. The monuments are the leftovers of the former Vijayanagara Empire. Later, in the evening, we will return back to the hotel to take pleasure of a stress free overnight stay.<br />
<br />
Hampi is a village in northern Karnataka, India. It was one of the largest and richest cities in the world during its prime.</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> Departure
								</p>
								<p class="aj">On the last day of our tour, we will check out from the hotel in Hospet and return back to Banaglore. On reaching Bangalore, get direct transfer to the airport/railway station to catch the flight or board train for onward destination.<br />
<br />
Tour & Services Ends.</p>
								</td>
								</tr>
								</table>					
								</div>						<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.highspiritadventures.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Classical Tour of Karnataka - 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="118990"/>
						</form>
						</div>
						
						";i:1;s:66:"Book Classical Tour of Karnataka - 6 Nights / 7 Days Tour Packages";i:2;s:131:"book classical tour of karnataka - 6 nights / 7 days tour packages, heritage tour packages, bangalore, hassan, mysore tour packages";i:3;s:170:"High Spirit Adventures offers Classical Tour of Karnataka - 6 Nights / 7 Days tour package, budget Heritage tour packages for Bangalore, Hassan, Mysore at exciting price.";i:4;s:424:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bangalore, Hassan, Mysore"        
		                 },
		      "description": "",
		      "name": "Classical Tour of Karnataka",
		      "telephone": "+91-8629029169"
		    }
		    </script>
			";i:5;N;}