a:6:{i:0;s:13431:"				<div class="h1"><h1>Enchanting Europe Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.oppexholidays.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.oppexholidays.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Enchanting Europe 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">
						9 Nights / 10 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Paris, Innsbruck, Rome, Pisa, Padua</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.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Enchanting Europe 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="18780"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<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_2/37817/32354.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/37817/32354.jpg"  width="150" height="150"    alt="Enchanting Europe Tour" title="Enchanting Europe Tour" /></a></p></div></li>
																		<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_2/37817/32355.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/37817/32355.jpg"  width="150" height="150"    alt="Enchanting Europe Tour" title="Enchanting Europe Tour" /></a></p></div></li>
																		<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_2/37817/32356.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/37817/32356.jpg"  width="150" height="150"    alt="Enchanting Europe Tour" title="Enchanting Europe Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Any increase in Airfare.<br />
Any increase in fuel surcharge or any kind of government sales tax levied by the respective government or statutory <br />
bodies.<br />
Any increase in the rate of exchange leading to an increase in all land arrangements which may come to effect<br />
before departure.<br />
Porterage, laundry, wines and alcoholic beverages, mineral water (unless specified), telephone charges, personal shopping.<br />
Any extra expenses incurred for changing the route or due to illness.<br />
Any upgradation in the room category or airline.<br />
Anything not specifically mentioned in the itinerary.<br />
Government service charge of 3.09% extra.<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> Rome
								</p>
								<p class="aj">Arrive at Rome and free time. Overnight in 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
								</p>
								<p class="aj">Rome City tour - Arch of Constantine, Circus Maximus, Trevi Fountain & the Colosseum. Later proceed to Vatican City - Museum, Sistine Chapel & St. Peter's Square with St. Peter's Basilica. Visit city of Pisa - Leaning tower of Pisa, Field of Miracles. Overnight in Pisa.</p>					
									<p><b>Meals : </b> Breakfast, Lunch, 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> Florence
								</p>
								<p class="aj">Proceed to Florence - Piazzale Michelangelo Point & Statue of David. Arrive in Venice. Venice city tour via canal ruise Tronchetto  Pier  to  Piazza  San  Marco.  Visit  to  Murano  Glass Showroom. Enjoy optional Gondola ride. Overnight in Venice.</p>					
									<p><b>Meals : </b> Breakfast, Lunch, 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> Wattens
								</p>
								<p class="aj">Proceed to Wattens - Swarovski Crystal Worlds, city tour - Golden Roof or 'Goldenes Dachl' the Imperial Church and the 'Hofburg' or Imperial Palace. Overnight in Innsbruck.</p>					
									<p><b>Meals : </b> Breakfast, Lunch, 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> Vaduz
								</p>
								<p class="aj">Drive through Vaduz. Enroute visit Rhine Falls, photostop at Zurich lake & arrive in Lucerne. Overnight in Switzerland.</p>					
									<p><b>Meals : </b> Breakfast, Lunch, 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
								</p>
								<p class="aj">Mount Titlis with Ice Flyer (subject to operation), Lucerne city tour - Lion Monument, Kappelbrucke Wooden Bridge, Lake Lucerne cruise. Overnight in Switzerland.</p>					
									<p><b>Meals : </b> Breakfast, Lunch, 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> Black Forest
								</p>
								<p class="aj">Drive through Black Forest, visit to Lake Titisee Cuckoo Clocks OR enjoy optional Jungfraujoch Exursion, cogwheel train trip via Kleine Scheidegg - Ice Palace, Sphinx terrace, Interlaken City Tour, Overnight in Switzerland.</p>					
									<p><b>Meals : </b> Breakfast, 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> Paris
								</p>
								<p class="aj">Scenic Drive to Paris. Enjoy optional Lido Show in the evening. Overnight in Paris.</p>					
									<p><b>Meals : </b> Breakfast, Lunch, 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> Paris City Tour
								</p>
								<p class="aj">Enjoy Paris city tour - Louvre Glass Pyramid, Garnier's Opera, Place de la Concorde, Champs Elysees, Napoleonic Arc de Triomphe, Hotel des Invalides, Eiffel Tower 3rd Level & Siene River Cruise. Overnight in Paris.</p>					
									<p><b>Meals : </b> Breakfast, Lunch, 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> Return
								</p>
								<p class="aj">Return flight to India.</p>					
									<p><b>Meals : </b> Breakfast</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>Meals</li>
																		<li>Sightseeing</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Any increase in Airfare.</li><li>
Any increase in fuel surcharge or any kind of government sales tax levied by the respective government or statutory </li><li>
bodies.</li><li>
Any increase in the rate of exchange leading to an increase in all land arrangements which may come to effect</li><li>
before departure.</li><li>
Porterage, laundry, wines and alcoholic beverages, mineral water (unless specified), telephone charges, personal shopping.</li><li>
Any extra expenses incurred for changing the route or due to illness.</li><li>
Any upgradation in the room category or airline.</li><li>
Anything not specifically mentioned in the itinerary.</li><li>
Government service charge of 3.09% extra.</li></ul><br />
												<p class="large b mb5px dif">Specific Departure Dates :</p>Departure Dates For 2015:<br />
April: 28th<br />
May: 13th, 19th, 28th<br />
June: 12th, 17th<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. ~^#^~						
    	<p class="h dif xlarge b mb5px">Rate Card</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Component</td>
				<td class="headHr p5px b">Twin</td>
				<td class="headHr p5px b">Triple</td>
				<td class="headHr p5px b">Single</td>
				<td class="headHr p5px b">Child with Bed</td>
				<td class="headHr p5px b">Child No Bed</td>
			</tr>
			<tr>
				<td class="headVr p5px">INR</td>
				<td class="data p5px">90500</td>
				<td class="data p5px">90500</td>
				<td class="data p5px">90500</td>
				<td class="data p5px">65000</td>
				<td class="data p5px">65000</td>
			</tr>
			<tr>
				<td class="headVr p5px">EUR</td>
				<td class="data p5px">1100</td>
				<td class="data p5px">1075</td>
				<td class="data p5px">1540</td>
				<td class="data p5px">880</td>
				<td class="data p5px">715</td>
			</tr>
		</table></div><br>						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Enchanting Europe 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="18780"/>
						</form>
						</div>
						
						";i:1;s:62:"Book Enchanting Europe Tour - 9 Nights / 10 Days Tour Packages";i:2;s:137:"book enchanting europe tour - 9 nights / 10 days tour packages, heritage tour packages, paris, innsbruck, rome, pisa, padua tour packages";i:3;s:229:"Book Enchanting Europe Tour - 9 Nights / 10 Days tour packages from Oppex Travels & Tours ( a Division of Oppex Freight Systems - Get attractive 9 Nights / 10 Days Heritage  tour packages for  Paris, Innsbruck, Rome, Pisa, Padua.";i:4;s:1053:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Paris, Innsbruck, Rome, Pisa, Padua"        
		                 },
		      "description": "Any increase in Airfare.
Any increase in fuel surcharge or any kind of government sales tax levied by the respective government or statutory 
bodies.
Any increase in the rate of exchange leading to an increase in all land arrangements which may come to effect
before departure.
Porterage, laundry, wines and alcoholic beverages, mineral water (unless specified), telephone charges, personal shopping.
Any extra expenses incurred for changing the route or due to illness.
Any upgradation in the room category or airline.
Anything not specifically mentioned in the itinerary.
Government service charge of 3.09% extra.",
		      "name": "Enchanting Europe Tour",
		      "telephone": "+91-9821321975"
		    }
		    </script>
			";i:5;N;}