a:6:{i:0;s:12280:"				<div class="h1"><h1>Amazing Kerala Beach Holiday Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.grabyourholidays.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.grabyourholidays.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Amazing Kerala Beach Holiday 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">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Kochi, Kovalam, Alleppey</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.grabyourholidays.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing Kerala Beach Holiday 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="82884"/>
						</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_16/457916/146844.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/457916/146844.jpg"  width="150" height="150"    alt="cochin Beach" title="cochin Beach" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					The mysterious land of Kerala houses a number of beautiful beaches are  sandy, coconut, rocky or headlands, so it’s not wrong to say Kerala is a paradise for beach lovers. Besides the clean blue water of the sea, a wide range of delicious seafood cuisines and serene surrounding adds special appeal in every type of tourists. So what are you waiting for, choose any Kerala Beaches Packages and dive into the splendor of Kerala.Meals except given in inclusions<br />
Monuments Entrances Fee.<br />
Any domestic or international airfare<br />
Medical and insurance of any kind. Any expenses arising out of unforeseen circumstances like flight delay/cancellation/hike in fare, strike or any other natural calamities<br />
Personal nature Expenses i.e. Telephone Calls, Laundry, Soft / Hard Drinks Meals, Tipping etc. Camera Fee at.<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> Cochin
								</p>
								<p class="aj">On your arrival at Kochi Airport/Railway Station, our tour representative will lead you and accompany you to the hotel. “Kochi” a major port city in the South which is a repository of abundant interesting tourist place of cultural richness or a jumble of heritage left behind by the Arabs, Chinese, Jews, Dutch, Portuguese, and British. It’s high or elevated greenery and alluring beaches are always ready to mesmerize you with their pure beauty. Spend the whole day by relaxing in the cosy of the lavish hotel room or in evening you will be enchanted with the backwater cruise. Grab on some souvenirs at the local market. Spend the night at the hotel/resort</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_16/457916/146844.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/457916/146844.jpg"  width="150" height="150"    alt="cochin Beach" title="cochin Beach" /></a></p></div></li>
									</ul>
									</div>
									</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> Cochin
								</p>
								<p class="aj">Rejuvenated and replenished, the second day offers you to feel the beauty and dynamism of the city. After enjoying the delicious breakfast at the hotel, get ready for an exhilarated city tour. Check out the Jewish side of the city with the enchanting Jewish Synagogue, leaded by the primeval St. Francis Church and Santa Cruz Basilica. The Dutch Palace and Hill Palace speak, connected with the Spice Market and Chinese fishing nets fixed toward the backwaters, are bound to spellbind you with their timeless grace and charisma. You can wrap up your inevitable experience with an alluring performance of Kathakali, one of the old dance forms of Kerala. Surrender off 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 3:</b> Cochin - Alleppey By Surface (63 Kms)
								</p>
								<p class="aj">After eating voraciously on an appetizing breakfast, get ready to experience an elaborate web of waterways in Alleppey, where the sea playfully teases the shore. Enjoy the two-hour trip that transports you from Kochi to Alleppey. After checking into one of the wonderful and eye-catching houseboats, you’ll be drifted through the backwaters. Treat your eyes with the tall coconut palms sway in the cool breeze, cashew plantations dot the surrounding countryside and scenic little houses line the streets that pass by you. The welcoming crew members on houseboat will please you with an excess of traditional Keralite cuisines, along with some local specialties, served throughout the day. Spend the night on houseboat in the middle of serenity, luxury, and comfort.</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> Alleppey - Kovalam By Surface (176 Kms)
								</p>
								<p class="aj">Clear the festoons to journey further towards your next destination, Kovalam after a delectable breakfast on houseboat. After driving for 176 kms, you’ll land at a one of the most sought beach destination of Kerala; ideal for swimming, sunbathing, herbal body toning massages, special cultural programmers and catamaran cruising. Check-in into hotel/resort and rest of the day free at leisure or on the beach of Kovalam and enjoy the scene of Arabian waves embracing virgin sands. Overnight stay at hotel/resort, Kovalam</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> Kovalam - Trivandrum - Kovalam By Surface (16 Kms One Way)
								</p>
								<p class="aj">Finish off your breakfast early and drive towards Trivandrum, the capital of Kerala or a peaceful attractive city built across seven hills and get dive in some of the ambience sightseeing of Trivandrum includes The Napier Museum, Kuthiramalika Museum, Sri Padmanabha Swamy Temple and more. In evening you get one more chance to explore the Kovalam beach of Kerala and overnight will be at 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> Kovalam - Trivandrum By Surface (16 Kms)
								</p>
								<p class="aj">It is now time to say goodbye to the experience called Kerala as you come to the end of the Kerala Beaches Holiday. Our representative will transfer you to Trivandrum Airport/Railway station in time to connect  for onward destination.</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>4 Star Hotel</li>
																		<li>Sightseeing</li>
																		<li>Transport</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Meals except given in inclusions</li><li>
Monuments Entrances Fee.</li><li>
Any domestic or international airfare</li><li>
Medical and insurance of any kind. Any expenses arising out of unforeseen circumstances like flight delay/cancellation/hike in fare, strike or any other natural calamities</li><li>
Personal nature Expenses i.e. Telephone Calls, Laundry, Soft / Hard Drinks Meals, Tipping etc. Camera Fee at.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<p>* Rates are subject to availability.&nbsp;<br />
* Rates can change without prior notice.&nbsp;<br />
*&nbsp;Peak Season / Weekend Surcharges may be applicable at the time of confirmation

<p>note:&nbsp;&quot;Each clients travelling in India or abroad has to ensure they carry all the related travel documents like valid passports, visa or other valid ID and address proof. Due to lack of any of these documents no hotels will allow check-in. We will not be responsible for any such kind of lose in services and full retention will be charged&quot;.												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.grabyourholidays.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing Kerala Beach Holiday 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="82884"/>
						</form>
						</div>
						
						";i:1;s:72:"Book Amazing Kerala Beach Holiday Tour - 5 Nights / 6 Days Tour Packages";i:2;s:145:"book amazing kerala beach holiday tour - 5 nights / 6 days tour packages, beach and islands tour packages, kochi, kovalam, alleppey tour packages";i:3;s:180:"Grab Your Holidays offers Amazing Kerala Beach Holiday Tour - 5 Nights / 6 Days tour package, budget Beach and Islands tour packages for Kochi, Kovalam, Alleppey at exciting price.";i:4;s:1239:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kochi, Kovalam, Alleppey"        
		                 },
		      "description": "The mysterious land of Kerala houses a number of beautiful beaches are  sandy, coconut, rocky or headlands, so it’s not wrong to say Kerala is a paradise for beach lovers. Besides the clean blue water of the sea, a wide range of delicious seafood cuisines and serene surrounding adds special appeal in every type of tourists. So what are you waiting for, choose any Kerala Beaches Packages and dive into the splendor of Kerala.Meals except given in inclusions
Monuments Entrances Fee.
Any domestic or international airfare
Medical and insurance of any kind. Any expenses arising out of unforeseen circumstances like flight delay/cancellation/hike in fare, strike or any other natural calamities
Personal nature Expenses i.e. Telephone Calls, Laundry, Soft / Hard Drinks Meals, Tipping etc. Camera Fee at.",
		      "name": "Amazing Kerala Beach Holiday Tour",
		      "telephone": "+91-8888872247"
		    }
		    </script>
			";i:5;N;}