a:6:{i:0;s:18935:"				<div class="h1"><h1>Europe Highlights Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.travvelextent.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.travvelextent.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Europe Highlights Package</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">Tour Code </td>
						<td class="p5px pl0px vat">EU14VILILM</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						14 Nights / 15 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Milan, Venice, Pisa, Lucerne, Lausanne, Lugano</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.travvelextent.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Europe Highlights Package - 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="18139"/>
						</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_10/274422/31076.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31076.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31078.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31078.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31079.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31079.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31080.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31080.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31081.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31081.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31082.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31082.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31083.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31083.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31084.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31084.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></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_10/274422/31085.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/274422/31085.jpg"  width="150" height="150"    alt="Europe Highlights Package" title="Europe Highlights Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Experience Europe’s major highlights on this extraordinary vacation. Begin in London with two overnights and free time to discover the UK’s capital. Cross the English Channel and travel by motorcoach to Amsterdam for guided sightseeing and a canal cruise. Journey through the German Rhineland, passing castles and vineyards, then drive through the Tyrolean Alps from Innsbruck to the floating city of Venice. On to Assisi, St. Francis’ town in the Apennine hills. Spend two nights in the Eternal City of Rome, visiting archaeological jewels such as the Colosseum and the Roman Forum. Next up: Tuscany with a visit to Florence, the Cradle of the Renaissance and a walking tour that features the Duomo and Signoria Square. On to Pisa with its famous Leaning Tower, then an overnight in fascinating Lake Como, a stop to discover the Swiss subtropical town of Lugano, and Lucerne with its medieval wooden bridge and surrounding mountains. Stop in Interlaken before reaching Lausanne on Lake Geneva, then drink in the beauty of the French vineyards in Beaune. Your adventure concludes in fabulous Paris with two overnights and included guided sightseeing.<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 in London, England
								</p>
								<p class="aj">Check into your hotel. In the afternoon, you may want to start exploring the lively British capital. Uniformed hosts are available to help you make the most of your stay.</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> London
								</p>
								<p class="aj">A full day to savor our rich program of optional activities: take a panoramic tour of London’s landmarks, visit the Tower of London, or choose an excursion to Windsor Castle. Tonight, maybe a leisurely cruise on the River Thames.</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> London - Amsterdam Area, Holland
								</p>
								<p class="aj">Leave London in the early morning and head through the lush English countryside to the Channel port, where you embark on your ferry for the Continent. Meet your Tour Director and board your luxury coach for the drive to the Amsterdam area.</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> Amsterdam Area - Rhineland, Germany
								</p>
								<p class="aj">Today, enjoy a canal cruise to see the town from water level, then watch the cutting and polishing of precious stones at a diamond center in Amsterdam. Later, sightseeing with a Local Guide points out the city highlights. In the afternoon, travel southward to the Rhineland area for an overnight.</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> Rhineland - Innsbruck, Austria
								</p>
								<p class="aj">A choice today of the included scenic drive along the shores of the Rhine or, even more thrilling, the optional Rhine cruise with vistas of the Lorelei rock, hilltop castles, half-timbered wine villages, and terraced vineyards. In the afternoon, ride along the Autobahn to Austria. Overnight in Innsbruck.</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> Innsbruck - Venice Area, Italy
								</p>
								<p class="aj">Early morning departure via the Tyrolean Alps to the unique floating city of Venice. This afternoon’s orientation includes a boat ride followed by a chance to watch Venetian glassblowers fashion their delicate objects as they did centuries ago. Don’t miss out on the optional gondola trip, gliding along the picturesque canals with a local troubadour to serenade you.</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> Tyrolean Alps - Venice
								</p>
								<p class="aj">Early morning departure via the Tyrolean Alps to the unique floating city of Venice. This afternoon’s orientation includes a boat ride followed by a chance to watch Venetian glassblowers fashion their delicate objects as they did centuries ago. Don’t miss out on the optional gondola trip, gliding along the picturesque canals with a local troubadour to serenade you.</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> Rome
								</p>
								<p class="aj">The “Eternal City”—a city steeped in history, vibrantly alive and exciting, and absolutely unique! Included sightseeing with a Local Guide starts in St. Peter’s Square, followed by a visit to the Roman Forum and the mighty Colosseum.</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> Rome - Florence - Montecatini
								</p>
								<p class="aj">An easy drive on the Highway of the Sun to Florence. This Renaissance gem and city of the Medicis will keep you enthralled for a whole day. Traffic is banned in part of the historic center, so visitors can wander at leisure and admire the city’s timeless beauty in relative peace and quiet. Don’t miss out on the included walking tour with a Local Guide that features most of the city highlights. You will see Piazza Santa Croce; beautiful Piazza Signoria; Palazzo Vecchio; Loggia dei Lanzi; and, to top it all, Piazza del Duomo and its cathedral with the Giotto Campanile, and the magnificent East Door of the Baptistry, known as the “Gate of Paradise.” Overnight in the spa town of Montecatini.</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> Montecatini - Pisa - Milan - Lake Como
								</p>
								<p class="aj">Start the morning by driving to Pisa to visit the Square of Miracles and to admire the Leaning Tower. Next, journey northwards through the Tuscan hills and across the Po plain to Milan to admire the majestic gothic Duomo. Then, continue to the shores of romantic Lake Como.</p>					
									<p><b>Meals : </b> Breakfast, 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> Lake Como - Lugano - Switzerland - Lucerne
									</p>
									<p class="aj">Leave beautiful Lake Como to cross the border into Switzerland. Stop in Lugano, in the Italian-speaking Ticino, then continue to Lucerne, one of Switzerland's finest cities, nestled amid its Alps, surrounded by its lake, and embellished by the clean waters of the River Reuss. Why not take an optional excursion to the top of one of the surrounding mountains.</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> Lucerne - Interlaken - Lausanne
									</p>
									<p class="aj">This morning, spend some time in this beautiful town. Later, stop in Interlaken and follow the shoreline of Lake Thun. A few more miles to Lausanne, overlooking Lake Leman.</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 13:</b> Lausanne - Beaune, France - Paris
									</p>
									<p class="aj">Vistas of famous vineyards on the way to Beaune. Visit the medieval Burgundian town, known the world over for its wine production. Later, take the autoroute to Paris. Tonight, maybe an optional cabaret show.</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 14:</b> Paris
									</p>
									<p class="aj">Included sightseeing with a local expert shows off many of the best-known Parisian sights: La Sorbonne, Arc de Triomphe, Opéra, Madeleine, the Eiffel Tower, the Pyramid near the Louvre, the Invalides, and Champs Elysées. An optional excursion to the Palace and Gardens of Versailles is available.</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 15:</b> Paris
									</p>
									<p class="aj">Your vacation ends with breakfast this morning.</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 />
												 <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>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.travvelextent.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Europe Highlights Package - 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="18139"/>
						</form>
						</div>
						
						";i:1;s:66:"Book Europe Highlights Package - 14 Nights / 15 Days Tour Packages";i:2;s:152:"book europe highlights package - 14 nights / 15 days tour packages, heritage tour packages, milan, venice, pisa, lucerne, lausanne, lugano tour packages";i:3;s:200:"Book Europe Highlights Package - 14 Nights / 15 Days tour packages from Travvel Extent - Get attractive 14 Nights / 15 Days Heritage  tour packages for  Milan, Venice, Pisa, Lucerne, Lausanne, Lugano.";i:4;s:1599:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Milan, Venice, Pisa, Lucerne, Lausanne, Lugano"        
		                 },
		      "description": "Experience Europe’s major highlights on this extraordinary vacation. Begin in London with two overnights and free time to discover the UK’s capital. Cross the English Channel and travel by motorcoach to Amsterdam for guided sightseeing and a canal cruise. Journey through the German Rhineland, passing castles and vineyards, then drive through the Tyrolean Alps from Innsbruck to the floating city of Venice. On to Assisi, St. Francis’ town in the Apennine hills. Spend two nights in the Eternal City of Rome, visiting archaeological jewels such as the Colosseum and the Roman Forum. Next up: Tuscany with a visit to Florence, the Cradle of the Renaissance and a walking tour that features the Duomo and Signoria Square. On to Pisa with its famous Leaning Tower, then an overnight in fascinating Lake Como, a stop to discover the Swiss subtropical town of Lugano, and Lucerne with its medieval wooden bridge and surrounding mountains. Stop in Interlaken before reaching Lausanne on Lake Geneva, then drink in the beauty of the French vineyards in Beaune. Your adventure concludes in fabulous Paris with two overnights and included guided sightseeing.",
		      "name": "Europe Highlights Package",
		      "telephone": "+91-9706071620"
		    }
		    </script>
			";i:5;N;}