a:6:{i:0;s:10823:"				<div class="h1"><h1>Karnataka Beach Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.knowellresorts.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.knowellresorts.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Karnataka Beach Tour</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">Karwar, Mangalore, Udupi, Mumbai, Uttara Kannada</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.knowellresorts.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Karnataka Beach 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="72357"/>
						</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_14/396623/130099.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/396623/130099.jpg"  width="150" height="150"    alt="Karnataka Beach Tour" title="Karnataka Beach Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Overview<br />
<br />
The 320 kilometers stretch coastline of Karnataka is dotted with a number of palm-fringed beaches, each of which has carpets of silver sands and azure blue waters make it an important gateway to Karnataka. During the 6 nights and 7 days, Karnataka with Beach Tour package will take you to some of the best beaches in this south Indian state such as Karwar Beach, Kurumgad Beach, Bhatkal Beach, Malpe Beach and Marawanthe Beach. Read the itinerary given below for your kind perusal. <br />
Trip Highlights<br />
<br />
    Visit the Ullal Beach & Surathkal Beach<br />
    Visit the Malpe Beach and St. Mary’s Island<br />
    Visit the Kaup Beach & Marawanthe Beach<br />
    Visit the Murudeshwar & Gokarna Beach<br />
    Visit the Kurumgad Beach and Devbagh Beach<br />
    Visit the Karwar Beach<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> Mangalore-Ullal Beach & Surathkal Beach
								</p>
								<p class="aj">Arrive in Mangalore followed by assisted transfer to the hotel pre-decided stay by our tour representative. After relaxing for some time, set out for the sightseeing tour of Mangalore Beach. Thereafter, visit the Ullal Beach, which is just 20 kilometers away from Mangalore. Thereafter, take leisure for some time in the hotel and move to Surathkal Beach, which is 29 kilometers north of Ullal. The beach is close to the peninsula upon which the new lighthouse stands. A sheer path connects the lighthouse to the Sadashiva Temple.</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> Udupi- Malpe Beach & St, Mary’s Island
								</p>
								<p class="aj">Post breakfast, check out of the hotel and get transferred to Udupi. Udupi is a small temple town located in the coastal Karnataka. Later, check into the hotel and visit the Panoramic view of Malpe Beach. At the opening of the Malpe River, around 6 kilometers from Udupi, is the natural harbor of Malpe, an important fishing centre that enriches Karnataka’s coastline with its picturesque beach. Later, visit St. Mary’s Island. The island is 300 meters long and 100 meters wide and is dotted with a few palm trees. In the evening, go out for a walk in the beach and shopping. Stay overnight at Udupi.</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> Udupi-Kaup Beach & Marawanthe Beach
								</p>
								<p class="aj">Post breakfast in the morning, set out to visit Kaup Beach. Kaup houses a lovely beach, a ruined fort and an old 100 feet high lighthouse. There are two temples of Goddess Mariamma in Kaup, which are famous. Later, visit Marawanthe Beach, one of the most scenic beaches in Karnataka. Maravanthe Beach is the highway stretch of 1 kilometer flanked by the Maravanthe beach on one side and the River Sauparnika on the other side. If time permits, pay a visit to Kshitija Nesaradhama for sunset view at Ottinene Beach. Stay overnight 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> Karwar-Murudeshwar & Gokarna Beach
								</p>
								<p class="aj">Early morning, after breakfast, leave by road for Murudeshwar Beach, which is around 116 kilometers from Karwar. The Murudeshwar beach is surrounded by the sea to the west and rolling hills to the east. While the revered shrine is visited by devout worshippers, the beach is an ideal refuge for vacationers. Thereafter, pay a visit to Gokarna Beach and OM beach, both of which are counted amongst Gokarna’s five famous beaches. When in OM beach, take the shape of an OM, a spiritual symbol.</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> Karwar- Kurumgad Beach and Devbagh Beach
								</p>
								<p class="aj">Post breakfast; pay a visit to Devbagh and Kurumgad Beach. These beaches are very closer to Karwar. The Devbagh Beach, located around 3 kilometers away, is counted among a number of small islands on the horizon and popular center for diving and snorkeling. Feel the panoramic beauty of sea. Stay overnight at the hotel/resort.</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> Karwar Beach
								</p>
								<p class="aj">On the 6th day, pay a visit to the Karwar Beach. This scenic beach lies on a thin strip of tropical sand tucked away between the Western Ghats and the Arabian Sea. The palm fringed ivory beaches and the serene ambience of Karwar offers a perfect treat for avid tourists. Stay overnight at the beach resort.</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> Karwar-Mumbai
								</p>
								<p class="aj">Post breakfast in the morning, check out of the hotel and leave by road for Goa. Upon arrival in Goa, you will be transferred to Goa Airport to board an afternoon flight to Mumbai.</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.knowellresorts.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Karnataka Beach 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="72357"/>
						</form>
						</div>
						
						";i:1;s:59:"Book Karnataka Beach Tour - 6 Nights / 7 Days Tour Packages";i:2;s:156:"book karnataka beach tour - 6 nights / 7 days tour packages, beach and islands tour packages, karwar, mangalore, udupi, mumbai, uttara kannada tour packages";i:3;s:203:"Book Karnataka Beach Tour - 6 Nights / 7 Days tour packages from Knowell Resorts - Get attractive 6 Nights / 7 Days Beach and Islands  tour packages for  Karwar, Mangalore, Udupi, Mumbai, Uttara Kannada.";i:4;s:1213:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Karwar, Mangalore, Udupi, Mumbai, Uttara Kannada"        
		                 },
		      "description": "Overview

The 320 kilometers stretch coastline of Karnataka is dotted with a number of palm-fringed beaches, each of which has carpets of silver sands and azure blue waters make it an important gateway to Karnataka. During the 6 nights and 7 days, Karnataka with Beach Tour package will take you to some of the best beaches in this south Indian state such as Karwar Beach, Kurumgad Beach, Bhatkal Beach, Malpe Beach and Marawanthe Beach. Read the itinerary given below for your kind perusal. 
Trip Highlights

    Visit the Ullal Beach & Surathkal Beach
    Visit the Malpe Beach and St. Mary’s Island
    Visit the Kaup Beach & Marawanthe Beach
    Visit the Murudeshwar & Gokarna Beach
    Visit the Kurumgad Beach and Devbagh Beach
    Visit the Karwar Beach",
		      "name": "Karnataka Beach Tour",
		      "telephone": "+91-9890187499"
		    }
		    </script>
			";i:5;N;}