a:6:{i:0;s:35876:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>European Masti Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.azuretouradvisor.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.azuretouradvisor.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> European Masti 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>Tour Code :</b> AZ/EUROPEANMASTI/11</p>
												<p class="mb5px"><b>Duration :</b> 
						11 Nights / 12 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Paris, Venice, Florence, Brussels, Amsterdam, Innsbruck, Rome, Pisa, Lucerne, Vatican City</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 1 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.azuretouradvisor.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="European Masti 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="30628"/>
						</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_11/313024/62580.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/62580.jpg"  height="150"  width="150"    alt="European Masti Tour" title="European Masti 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="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Group Departure from Mumbai to MumbaiCost Of Any Individual Airport / Seaport / Railway Station Transfer To Joining And<br />
Leaving Guests.<br />
Any Increase In The Airfare / Rail Fare / Cruise Charges.<br />
Any Increase In The Fuel Surcharge Or Any Kind Of Taxes Levied By The Respective Government Or Statutory Bodies.<br />
Any Increase In The Rate Of Exchange Leading To An Increase In All Land Arrangements hich May Come In To Effect Prior To Departure.<br />
Cost Of Extension Of The Validity Of The Tour Or Deviation From The Route Of The Tour<br />
Porterage, Laundry, Wines & Alcoholic Beverages, Mineral Water (Unless Specified),<br />
Telephone Charges, Shopping, All Items Of Personal Nature And Also Food And Drinks Not<br />
Forming The Part Of The Group Menus.<br />
Cost Of Insurance For Any Extra Stay Pre/Post Tour.<br />
Any Extra Expenses Incurred For Changing The Route Due To Any Unforeseen<br />
Circumstances, Natural Calamities, Political Disturbances, Strikes Etc.<br />
Extra Cost Incurred Due To Illness, Accident, Hospitalization Or Any Individual<br />
Unforeseen Cost Incurring Incidence.<br />
Any Private Transfers Taken To Move From One Place To Another Instead Of Coach<br />
For Any Activity/Sightseeing Done Twice<br />
Any Add-On Sightseeing/Activities Along With Transfers If Done Other Than Mentioned In<br />
The Tour Program.<br />
Fur Coats/Jackets To Visit Snow Point Or Any Special Attire Required To Visit Any<br />
Particular Sightseeing Place.<br />
Any Up-Gradation In The Room Category Or Air Line Class<br />
Extra Water Bottle Charges Other Than Specified In The Itinerary<br />
Premium Seat Charges<br />
Medicines Required If Any<br />
Service Or Government Taxes As Applicable From Time To Time<br />
Anything Not Specifically Mentioned In Your Inclusion Column.								</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> Arrive At Rome
										</p>
										<p class="aj">On arrival Rome you will be meeting our representative at the airport who will assist you to board the coach and proceed for hotel check in as per the standard check In time of the hotel.<br />
Overnight at Rome</p>					
											<p><b>Meals : </b> Dinner</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> Rome City Tour , Vatican City, Arrival Pisa
										</p>
										<p class="aj">After having breakfast at the hotel we then proceed to Rome city tour which includes at Arch of Constantine, Circus Maximus, the legendary Trevi Fountain and photostop at the Colosseum. Later Proceed to Vatican City-the smallest nation in the world! This includes Vatican Museum, one of the largest museum complexes in the world, the sistine Chapel and St. Peter's Square with St. Peter's Basilica - one of the largest churches in the world. Witness the enchanting city of Pisa to witness photostop at the wonder of the world-the Leaning Tower! We also have photostops at the other famous sites located on the same Field of Miracles. Overnight stay in Pisa.</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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> City Tour of Florence, Arrival in Venice
										</p>
										<p class="aj">Today after having breakfast at the hotel Proceed to Florence and have photostops at Piazzale Michelangelo Point and Statue of David. Proceed to Venice for city tour via canal cruise Tronchetto Pier past incredible miniature canals to the Piazza San Marco. Today also includes a tour with a brief visit to a Murano Glass Showroom for a demonstration in glass blowing. Also you can enjoy a romantic Gondola ride which is optional . and arrival in Venice free time to explore the beauty of nature. Overnight at Venice/ Padova.</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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> Innsbruck city tour, Swarovski Crystal Worlds
										</p>
										<p class="aj">After having breakfast at the hotel proceed to Wattens to visit internationally renowned Swarovski Crystal Worlds where we get to see the world's biggest crystal and it's smallest!<br />
Later proceed for an orientation tour of the city which includes Golden Roof or 'Goldenes Dachl'the Imperial Church and the 'Hofburg' or Imperial Palace. Overnight in Innsbruck.</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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> Visits Rhine Falls & Arrive in Switzerland
										</p>
										<p class="aj">Today after having breakfast at the hotel, we drive through Vaduz, the capital of the principality of Liechtenstein. Enjoy the sights and surroundings of Vaduz. Enroute visit Rhine Falls, photostop at Zurich lake and arrival in Lucerne.</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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> Mount Titlis with Ice Flyer & Lake Lucerne cruise
										</p>
										<p class="aj">Today we will be visiting Mt.Titlis to experience 'Titlis Rotair'-world's first revolving cable-car ride! Here we also experience the thrilling Ice Flyer ride and snow slides (subject to operation). Today we also get to enjoy Lucerne city tour which includes Lion Monument, Kappelbrucke Wooden Bridge. Here we also have leisure time for shopping and enjoying the local scenic beauty. Not to forget the relaxing Lake Lucerne cruise which is also part of our day in Switzerland today. Overnight at hotel</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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> Drive through Black Forest, visit to Lake Titisee
										</p>
										<p class="aj">Today after having breakfast at the hotel activities include drive through Black Forest, Black Forest is a wooden Mountain range in south western Germany .its Bordered by Rhine Valley to the west and South. The Black Forest consists of a cover of sandstone and top of a core of gneiss and granites . visit to Lake titisee famous for shopping Cuckoo Clocks . Lake Titisee is located in the southern Black Forest . Lake Titisee is perfect for swimming, sailing, windsurfing, pedaloing and for a stroll along the water front . overnight stay in Switzerland</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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 8:</b> Scenic Drive to Paris
										</p>
										<p class="aj">After having breakfast at the hotel proceed for a scenic and nature filled drive to one of the most lively city of Europe "Paris. Enjoy the most attractive and famous Lido Show in the evening which is optional.</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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 9:</b> : Enjoy Paris city tour - Louvre Glass Pyramid, Garnier's
										</p>
										<p class="aj">After having the breakfast at the hotel proceed with Paris city tour. This will includes the Louvre Glass Pyramid, Garnier's Opera, Place de la Concorde, Champs Elysees, Napoleanic Arc de Triomphe and Hotel des Invalides. Take in the dazzling overview of the city as you ascend by an elevator to the 3rd level of the iconic Eiffel Tower. Enjoy Siene River Cruise in the evening. Overnight stay at hotel.</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</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 10:</b> Full day at Disneyland Paris
										</p>
										<p class="aj">After a buffet breakfast, get set to experience the Disney Magic as you visit Eurodisney - where dreams come to life. Experience a super-fun, stress-free adventure that will fill your day with enough magic to last forever. Enjoy the many rides on offer at the park (all included). Lunch will be provided. OR, you can visit the amazing Walt Disney Studios - the magical world of cinema and television, featuring thrilling attractions and spectacular shows. Go behind the magic on the Studio Tram Tour and discover the secrets of how movies and television shows are made. Also be amazed by the daredevils in the thrilling Stunt Show. overnight in Paris</p>					
											<p><b>Meals : </b> Breakfast, Lunch And Dinner</p>
										</td>
										</tr>
										</table>					
										</div><div id="show_more_content" style="display:none;">
											<div class="data">
											<table class="w100 formTable bdr0 imgWidth">
											<tr>
											<td class="p10px vat">
											<p class="b large mb5px"><b class="dif">Day 11:</b> Brussels City Tour, Mini Europe (If not Kekenholf in Amsterdam)
											</p>
											<p class="aj">After having breakfast at the hotel proceed to Brussels and Since Keukenhof is closed after 20th May, for any departures post that, we will instead be visiting visit Mini Europe, wherein you explore and discover the Europe's Nicest Places like Atomium, Tower Bridge, Leaning Tower and many more iconic miniatures. Later on proceed for Brussels city tour which will include St.Michel, St. Gudula Cathedral, the world's first shopping mall-Galeries Saint Hubert, Grand Place and the famous statue of the cheeky boy-the Mannekin Pis (photostop).</p>					
												<p><b>Meals : </b> Breakfast, Lunch And Dinner</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 12:</b> Departure from Amsterdam
											</p>
											<p class="aj">After having Breakfast at the hotel, proceed to airport for flight back to home town with loaded sweet and wonderful memories</p>					
												<p><b>Meals : </b> Breakfast, Lunch And Dinner</p>
											</td>	
											</tr>
											</table>				
											</div>					
									</div>									<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
																	<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Meals</li>
																						<li>Transfers</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Cost Of Any Individual Airport / Seaport / Railway Station Transfer To Joining And</li><li>
Leaving Guests.</li><li>
Any Increase In The Airfare / Rail Fare / Cruise Charges.</li><li>
Any Increase In The Fuel Surcharge Or Any Kind Of Taxes Levied By The Respective</li><li>
Government Or Statutory Bodies.</li><li>
Any Increase In The Rate Of Exchange Leading To An Increase In All Land Arrangements</li><li>
hich May Come In To Effect Prior To Departure.</li><li>
Cost Of Extension Of The Validity Of The Tour Or Deviation From The Route Of The Tour</li><li>
Porterage, Laundry, Wines & Alcoholic Beverages, Mineral Water (Unless Specified),</li><li>
Telephone Charges, Shopping, All Items Of Personal Nature And Also Food And Drinks Not</li><li>
Forming The Part Of The Group Menus.</li><li>
Cost Of Insurance For Any Extra Stay Pre/Post Tour.</li><li>
Any Extra Expenses Incurred For Changing The Route Due To Any Unforeseen</li><li>
Circumstances, Natural Calamities, Political Disturbances, Strikes Etc.</li><li>
Extra Cost Incurred Due To Illness, Accident, Hospitalization Or Any Individual</li><li>
Unforeseen Cost Incurring Incidence.</li><li>
Any Private Transfers Taken To Move From One Place To Another Instead Of Coach</li><li>
For Any Activity/Sightseeing Done Twice</li><li>
Any Add-On Sightseeing/Activities Along With Transfers If Done Other Than Mentioned In</li><li>
The Tour Program.</li><li>
Fur Coats/Jackets To Visit Snow Point Or Any Special Attire Required To Visit Any</li><li>
Particular Sightseeing Place.</li><li>
Any Up-Gradation In The Room Category Or Air Line Class</li><li>
Extra Water Bottle Charges Other Than Specified In The Itinerary</li><li>
Premium Seat Charges</li><li>
Medicines Required If Any</li><li>
Service Or Government Taxes As Applicable From Time To Time</li><li>
Anything Not Specifically Mentioned In Your Inclusion Column.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount * Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>1</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 							<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* 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.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.azuretouradvisor.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="European Masti 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="30628"/>
						</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.azuretouradvisor.com/packages-in-ratnagiri.htm" title="Packages in Ratnagiri">Ratnagiri</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-rome.htm" title="Packages in Rome">Rome</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-amsterdam.htm" title="Packages in Amsterdam">Amsterdam</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-bangalore.htm" title="Packages in Bangalore">Bangalore</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-coonoor.htm" title="Packages in Coonoor">Coonoor</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-amboli.htm" title="Packages in Amboli">Amboli</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-pisa.htm" title="Packages in Pisa">Pisa</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-north-goa.htm" title="Packages in North Goa">North Goa</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-lucerne.htm" title="Packages in Lucerne">Lucerne</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-innsbruck.htm" title="Packages in Innsbruck">Innsbruck</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-paris.htm" title="Packages in Paris">Paris</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-brussels.htm" title="Packages in Brussels">Brussels</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-ooty.htm" title="Packages in Ooty">Ooty</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-florence.htm" title="Packages in Florence">Florence</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-mumbai.htm" title="Packages in Mumbai">Mumbai</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-katra.htm" title="Packages in Katra">Katra</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-mysore.htm" title="Packages in Mysore">Mysore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-london.htm" title="Packages in London">London</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-tashkent-travel.htm" title="Packages in Tashkent">Tashkent</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.azuretouradvisor.com/packages-in-malvan.htm" title="Packages in Malvan">Malvan</a> <b class="alpha50 bn small">(2)</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.azuretouradvisor.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(17)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/paragliding-holidays-catid.htm" title="Paragliding Packages">Paragliding</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/family-holidays-catid.htm" title="Family Packages">Family</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/water-rafting-holidays-catid.htm" title="Water Rafting Packages">Water Rafting</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>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Paris, Venice, Florence, Brussels, Amsterdam, Innsbruck, Rome, Pisa, Lucerne</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.azuretouradvisor.com/tour-packages/romantic-europe-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_11/313024/62096.jpg"  height="100"  width="100"    alt="Romantic Europe Tour" title="Romantic Europe Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.azuretouradvisor.com/tour-packages/romantic-europe-tour.htm" title="Romantic Europe Tour"><h3>Romantic Europe Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 1</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								14 Nights / 15 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Brussels, Amsterdam, Inns..</p>
															<div class="mt10px small">
							<form name="pkg_30381" id="pkg_30381" method="post" action="http://www.azuretouradvisor.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.azuretouradvisor.com/tour-packages/romantic-europe-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Romantic Europe Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="30381"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.azuretouradvisor.com/tour-packages/bestof-europe-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_11/313024/61711.jpg"  height="100"  width="100"    alt="Best Of Europe" title="Best Of Europe"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.azuretouradvisor.com/tour-packages/bestof-europe-tour.htm" title="Best Of Europe Tour"><h3>Best Of Europe Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								21 Nights / 22 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Barcelona, London, Paris, Nice, Venice, ..</p>
															<div class="mt10px small">
							<form name="pkg_30232" id="pkg_30232" method="post" action="http://www.azuretouradvisor.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.azuretouradvisor.com/tour-packages/bestof-europe-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Best Of Europe Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="30232"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</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:60:"Book European Masti Tour - 11 Nights / 12 Days Tour Packages";i:2;s:188:"book european masti tour - 11 nights / 12 days tour packages, family tour packages, paris, venice, florence, brussels, amsterdam, innsbruck, rome, pisa, lucerne, vatican city tour packages";i:3;s:223:"Azure Tour Advisor offers European Masti Tour - 11 Nights / 12 Days tour package, budget Family tour packages for Paris, Venice, Florence, Brussels, Amsterdam, Innsbruck, Rome, Pisa, Lucerne, Vatican City at exciting price.";i:4;s:2177:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Paris, Venice, Florence, Brussels, Amsterdam, Innsbruck, Rome, Pisa, Lucerne, Vatican City"        
		                 },
		      "description": "Group Departure from Mumbai to MumbaiCost Of Any Individual Airport / Seaport / Railway Station Transfer To Joining And
Leaving Guests.
Any Increase In The Airfare / Rail Fare / Cruise Charges.
Any Increase In The Fuel Surcharge Or Any Kind Of Taxes Levied By The Respective Government Or Statutory Bodies.
Any Increase In The Rate Of Exchange Leading To An Increase In All Land Arrangements hich May Come In To Effect Prior To Departure.
Cost Of Extension Of The Validity Of The Tour Or Deviation From The Route Of The Tour
Porterage, Laundry, Wines & Alcoholic Beverages, Mineral Water (Unless Specified),
Telephone Charges, Shopping, All Items Of Personal Nature And Also Food And Drinks Not
Forming The Part Of The Group Menus.
Cost Of Insurance For Any Extra Stay Pre/Post Tour.
Any Extra Expenses Incurred For Changing The Route Due To Any Unforeseen
Circumstances, Natural Calamities, Political Disturbances, Strikes Etc.
Extra Cost Incurred Due To Illness, Accident, Hospitalization Or Any Individual
Unforeseen Cost Incurring Incidence.
Any Private Transfers Taken To Move From One Place To Another Instead Of Coach
For Any Activity/Sightseeing Done Twice
Any Add-On Sightseeing/Activities Along With Transfers If Done Other Than Mentioned In
The Tour Program.
Fur Coats/Jackets To Visit Snow Point Or Any Special Attire Required To Visit Any
Particular Sightseeing Place.
Any Up-Gradation In The Room Category Or Air Line Class
Extra Water Bottle Charges Other Than Specified In The Itinerary
Premium Seat Charges
Medicines Required If Any
Service Or Government Taxes As Applicable From Time To Time
Anything Not Specifically Mentioned In Your Inclusion Column.",
		      "name": "European Masti Tour",
		      "telephone": "+91-7774977511"
		    }
		    </script>
			";i:5;N;}