a:6:{i:0;s:55885:"				<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-->				
									<div class="h1"><h1>Classique Europe Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.paceholidays.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.paceholidays.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Classique Europe Tour</p> 
									
						<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> EU-09</p>
												<p class="mb5px"><b>Duration :</b> 
						12 Nights / 13 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> London, Paris, Venice, Brussels, Amsterdam, Rome, Bern, Vatican City</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 217750 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Classique Europe 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="85844"/>
						</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_2/39257/150945.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/39257/150945.jpg"  width="150" height="150"    alt="Classique Europe Tour" title="Classique Europe 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>
													
								Highlights Of The Tour<br />
A Complete All Inclusive Value For Money Tour With Maximum Quality Sightseeing And Minimum<br />
Travelling Time<br />
Stay In Conveniently Located & Comfortable Hotels Like Thistle, Holiday Inn, Jury’S Inn, Mercure,<br />
 Nh Etc. Throughout Your Holiday<br />
A Complete Value For Money Tour<br />
Daily Continental Buffet Breakfast Included<br />
Jain / Vegetarian Lunches As Specified In The Itinerary<br />
Daily Indian Jain / Vegetarian / Non-Vegetarian Dinners Included<br />
Guided City Tour Of London, Paris, Rome & Venice<br />
Visit The Famous Madame Tussauds Wax Museum<br />
A Unique Experience Of Crossing The English Channel By An Overnight Cruise From Harwich To Hoek<br />
 Van Holland<br />
See The World Famous Keukenhof Tulip Gardens (Till 21St May)<br />
<br />
Visit Zaanse Schans-A Working Museum Of Well-Preserved Historic Windmills<br />
And Houses, Cheese Farm & Wooden Shoe Factory (From 22Nd May)<br />
Photo Stop At A Traditional Windmill In Amsterdam<br />
Free Time At In The Heart Of Amsterdam - Dam Square<br />
City Tour Of Brussels - Grand Place And Photo Stop At The Atomium<br />
Visit 3Rd Level Of The Eiffel Tower<br />
Visit Fragonard Perfume Museum And Showroom<br />
Full Day At Euro Disney - A Super Fun, Stress-Free And Adventure Experience<br />
Cruise On The River Seine<br />
Option To See The Lido Show In Paris<br />
A Chance To Visit Jungfraujoch - ‘Top Of Europe’ With Champagne Lunch On Top<br />
Visit Mt. Titlis In The World’S First Revolving Cable Car With Cliff Walk<br />
See The Lion Monument And The Kapell Brucke In Lucerne<br />
See The Leaning Tower Of Pisa<br />
Visit The Vatican - The St. Peter’S Basilica<br />
See The Trevi Fountain - Rome<br />
Visit The St. Mark’S Square In Venice With Lunch On Board Your Chartered Boat<br />
Visit The Murano Glass Showroom In Venice<br />
Visit Swarovski Crystal Showroom In Innsbruck<br />
See The Golden Roof And The Maria Theresien Strasse In Innsbruck<br />
Visit Nordkette Mountain With Local Lunch On Top.<br />
Visit Salzburg With An Orientation Tour.<br />
Visit Munich With An Orientation Tour Of The City.<br />
Visit 09 Countries In 13 Days Covering Uk, The Netherlands, Belgium, France, Switzerland, Italy,<br />
The Vatican, Austria & Germany<br />
Services Of A Professional, Friendly, Multilingual And Experienced Tour Manager Travelling With<br />
You Throughout Your Tour<br />
Sightseeing And Excursions<br />
United Kingdom<br />
Londonguided City Tour With An English Speaking Local Guide<br />
Visit The Madame Tussauds Wax Museum<br />
<br />
Netherlands<br />
Lisse Visit Keukenhof Tulip Gardens (Till 21St May)<br />
Zaanse Schans Visit The Traditional Village Of Windmills, Wooden Shoe Factory And Cheese Farm (From 22Nd May)<br />
Amsterdam Photo Stop At A Traditional Windmill<br />
Free Time At Dam Square<br />
<br />
Belgium<br />
Brussels Tour Of The City<br />
A Visit To The Grand Place And Mannekin Pis Statue<br />
Photo Stop At The Atomium<br />
France<br />
Paris Guided City Tour With An English Speaking Local Guide<br />
Entrance To The 3Rd Level Of The Eiffel Tower<br />
Cruise On The River Seine<br />
Visit Fragonard Perfume Museum And Showroom<br />
Full Day Excursion To Euro Disney<br />
<br />
Switzerland<br />
Engelberg Excursion To Mt. Titlis - Included With Cliff Walk (Weather Permitting)<br />
Lucerne  Tour Of The City<br />
See The Lion Monument And The Kapell Brucke<br />
<br />
Italy<br />
Pisa See The Leaning Tower Of Pisa<br />
Rome See The Majestic Trevi Fountain<br />
Guided City Tour With An English Speaking Local Guide<br />
Venice Guided City Tour Of Venice<br />
Visit The Famous St. Mark’S Square<br />
Visit The Murano Glass Factory And Showroom<br />
Enjoy Lunch On A Private Cruise<br />
<br />
The Vatican<br />
Vatican City Visit The Holy St. Peter’S Cathedral<br />
<br />
Austria<br />
Innsbruck Visit The Swarovski Crystal Showroom In Innsbruck<br />
Orientation Tour Of Innsbruck<br />
Visit Nordkette Mountain<br />
Salzburg  Orientation Tour Of City.<br />
<br />
Germany<br />
Munich  Orientation Tour Of The City.<br />
<br />
Accommodation<br />
01 Night At Hotel Heston Hyde / Heathrow / Jury’S Inn / Park Inn Or Similar, In London<br />
01 Night On Board The Stena Lines Cruise<br />
01 Night At Hotel Thon / Best Western / Holiday Inn Express / Ibis Style Or Similar, In Brussels / Antwerp<br />
02 Nights At Hotel Novotel Poissy / Mercure / Inter Hotels / Ibis Or Similar, In Paris<br />
02 Nights At Hotel Dorint / Central / Chrystal In Zurich / Engelberg<br />
01 Night At Hotel Villa Pirelli /Ibis / Alexandra Or Similar, In Locarno / Bellinzona / Lugano / Central Switzerland<br />
02 Nights At Hotel Park Casteglione /Planet / Etrusco / Gio / Best Western Or Similar, In Arezzo / Perugia<br />
01 Night At Hotel Nh / Tulip Inn / Point / Alfa Fiera / Aires Or Similar, In Padova / Vicenza<br />
01 Night At Hotel Alp Hotel Or Similar In Innsbruck<br />
<br />
Meals (Abbrev - Bbreakfast, Llunch, Plpacked Lunch, Ddinner)<br />
Daily Continental Buffet Breakfast<br />
Jain / Vegetarian Lunches As Specified In The Itinerary<br />
Daily Indian Jain / Vegetarian / Non Vegetarian Dinners<br />
<br />
Transfers<br />
All Transfers And Extensive Excursions With Entrance Fees (As Specified In The Itinerary) By Deluxe Air Conditioned Coach In<br />
The Continent Of Europe And An Air-Cool Coach In London<br />
Overnight Cruise From Uk To The Netherlands<br />
Airfare, Visas And Overseas Travel Insurance<br />
Return Economy Class Group Airfare As Per The Itinerary<br />
Cost Of Ticket Taxes<br />
Cost Of Overseas Travel Insurance<br />
Cost Of Multiple Entry Schengen & Uk Visas<br />
All Local Taxes As Of 01St October 2016<br />
<br />
Tour Manager<br />
Services Of A Professional And Experienced Tour Manager Or A Local Representative Throughout Your Tour In EuropeWhat Your Tour Prices Does Not Include<br />
Cost of deviation - In case you wish to deviate from the group departure dates mentioned in the brochure i.e. either<br />
   travel before the departure date of your tour or would like to come back on a later date after the tour ends, there will be<br />
   an additional charge that will be applicable which will be advised to you by our sales team / partner agent. The same<br />
   subject to availability of seats for the given dates & ticket validity. Kindly also note, the deviation request is to be made at<br />
   the time of booking or at least 45 days prior to departure date.<br />
Tour cost is subject to GOI/RBI regulations under Liberalised Remittance Scheme (LRS)<br />
No Porterage included<br />
Any increase in the rate of exchange leading to an increase in surface transportation and land arrangements, which may<br />
  come into effect prior to departure. Prices quoted are as 1 EURO = INR 77. The tour price is subject to increase without<br />
  notice if this rate changes substantially prior to the departure of your tour<br />
Any expenses of personal nature such as laundry, wines, mineral water, food and drink not in the regular menu provided<br />
  by us, pay TV, mini-bar, telephone calls, etc.<br />
Meals other than what is mentioned in your Itinerary<br />
Cost of excursions, city sightseeing, entrance fees and local guides other than that mentioned in "What your Tour Price<br />
   Includes.<br />
Tips to drivers, guides, etc of EUR 03 per person per day for the duration of the tour.<br />
Cost of excursion to Jungfraujoch, with lunch & Interlaken.<br />
Cost of entrance to Lido Show<br />
<br />
Overseas Tours Insurance<br />
It is extremely important to possess an Overseas Travel Insurance policy before you travel on your tour. We have included<br />
the cost of overseas travel insurance for the duration of the tour. For any passengers above 60 years of age and those who<br />
wish to extend their holiday, additional charges would apply.20-0231-07								</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> Welcome to London
										</p>
										<p class="aj">Today, enter the world of ‘Vacations Exotica’ as you begin your beautiful journey of Europe. On arrival at the airport meet<br />
your professional and experienced Tour Manager in the arrival area situated outside the customs hall. Drive directly to your<br />
hotel and check in.<br />
Tonight, enjoy an Indian dinner.<br />
Overnight at Hotel Heston Hyde / Heathrow / Jury’s Inn / Park Inn or similar, in London.</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> London
										</p>
										<p class="aj">Guided City Tour of London. Visit Madam Tussauds Wax Museum. Ferry to Netherlands.<br />
After a Continental Buffet Breakfast, check out and get set to soak in the sights and sounds of this vibrant English city on a<br />
guided tour with an experienced local guide. See the Changing of the Guards outside the Buckingham Palace (weather<br />
permitting), the Hyde Park, and Big Ben, Westminster Abbey, the Houses of Parliament, Trafalgar Square, Tower Bridge and<br />
many more important landmarks. After lunch, meet wax replicas of the world’s most famous personalities in Madam<br />
Tussauds Wax Museum. Enjoy time at leisure on the world famous Oxford Street. Later, drive to Harwich and board your<br />
overnight cruise to The Netherlands. After an Indian dinner you can enjoy a variety of activities and entertainment on board.<br />
Overnight on board the Stena Lines Cruise.</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> Netherlands
										</p>
										<p class="aj">Onto the Netherlands - visit Keukenhof (till 21st May). Free timeat Dam Square. Photo stop at a traditional windmill. Tour<br />
of Brussels.<br />
TILL 21ST MAY : After a Continental Buffet Breakfast, proceed to Lisse to experience the ultimate TULIP EXTRAVAGANZA –<br />
KEUKENHOF, Later Photo Stop at a Traditional Windmill. Enjoy free time in the heart of Amsterdam – Dam Square with<br />
lunch.<br />
Next, depart for Brussels. On arrival, proceed on an orientation tour of Brussels. Visit the Grand Place - one of the prettiest<br />
squares in the world. See the unique Statue of Mannekin Pis - symbolic to this city. Later, make a photo stop at the<br />
Atomium - symbol of Brussels. Tonight, enjoy an Indian dinner.<br />
Overnight at Hotel Thon / Best Western / Holiday Inn Express or similar, in Brussels / Antwerp. (B, L, D)<br />
22ND MAY ONWARDS : After a Continental Buffet Breakfast, proceed to ZAANSE SCHANS – a working museum with a<br />
collection of well-preserved historic windmills, characteristic green wooden houses, museums and traditional Dutch crafts<br />
and shops. Later, visit a wooden shoe factory and see how clogs are made. Also see the making of the famous Dutch<br />
cheese on your visit to the cheese farm.<br />
Later, enjoy free time in the heart of Amsterdam – Dam Square with lunch. Next, depart for Brussels. On arrival, proceed on<br />
an orientation tour of Brussels. Visit the Grand Place - one of the prettiest squares in the world. See the unique Statue of<br />
Mannekin Pis - symbolic to this city. Later, make a photo stop at the Atomium - symbol of Brussels. Tonight, enjoy an Indian<br />
dinner.<br />
Overnight at Hotel Thon / Best Western / Holiday Inn Express / Ibis Style or similar, in Brussels / Antwerp</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> Paris
										</p>
										<p class="aj">Onto Paris - the Cultural and Fashion Capital. Visit the 3rd level of the Eiffel Tower. Guided city tour of Paris. Visit the<br />
Fragonard Museum. Opt to see the Lido Show.<br />
After a Continental Buffet Breakfast, check out and proceed to the French Capital - Paris, a city seeped in history, art and<br />
fashion. On arrival, enjoy lunch. Later, visit the 3rd level of the Eiffel Tower - an unparalleled experience. Next, proceed on a<br />
guided city tour with an experienced local English speaking guide. Enjoy many sights like the Arc De Triomphe, Concorde<br />
Square, Opera House, Champs Elysees, Invalides and many more landmarks. Later, visit the Fragonard Museum and get an<br />
insight on how French Perfumes are made. You also have ample free time to shop for the world famous French perfumes.<br />
Tonight, enjoy an Indian dinner.<br />
This night, do not miss the opportunity to see the light, sound and dance extravaganza - The Lido Show.<br />
Overnight at Hotel Novotel Poissy / Mercure / Inter Hotels / Ibis or similar, 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 5:</b> Paris
										</p>
										<p class="aj">Enjoy full day at Disneyland Paris. Cruise on River Seine.<br />
After a Continental Buffet Breakfast, get set to experience the Disney Magic as you visit Euro Disney - where dreams come<br />
to life. Experience a super-fun, stress-free adventure that will fill your day with enough magic to last forever. Enjoy the many<br />
rides on offer at the park (all included). OR you can visit the amazing Walt Disney Studio - the magical world of cinema and<br />
television, featuring thrilling attractions and spectacular shows. Go behind the magic on the Studio Tram Tour and discover<br />
the secrets of how movies and television shows are made. Also, be amazed by the dare devils in the thrilling Stunt Show.<br />
Packed lunch will be provided. Today, enjoy a cruise on the River Seine and admire the beautiful monuments of this<br />
spectacular city. Tonight, enjoy an Indian dinner.<br />
Overnight at Hotel Novotel Poissy / Mercure / Inter Hotels / Ibis or similar, in Paris.</p>					
											<p><b>Meals : </b> Breakfast + Packed  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> Switzerland
										</p>
										<p class="aj">Onto Switzerland, for an exotic experience.<br />
After a Continental Buffet Breakfast, check out and drive from Paris as you enjoy a scenic drive into Switzerland. Drive past<br />
picturesque towns of the famous country known for its amazing beauty and also a tourist’s paradise. Feel the whiff of<br />
freshness as you drive in to Central Switzerland to experience the ambience of the surrounding Alps. Tonight, enjoy an<br />
Indian dinner.<br />
Overnight in Hotel Dorint / Central / Chrystal in Zurich / Engelberg.</p>					
											<p><b>Meals : </b> Breakfast + Packed  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> Interlaken
										</p>
										<p class="aj">A day at leisure OR Opt for the ultimate Alpine Experience to Jungfraujoch - Top of Europe (3454 metres). A Champagne<br />
lunch on top. Visit Interlaken.<br />
After a Continental Buffet Breakfast, the day is at leisure to explore the picturesque beauty of this town on your own OR opt<br />
for an excursion to Jungfraujoch – an experience of your lifetime. Drive to Lauterbrunnen to board the cog wheel train to<br />
Jungfraujoch (3454 metres.) - A world of eternal ice and snow. Enjoy a delicious lunch with champagne on ‘Top of Europe’.<br />
Visit the Ice Palace, the highest-altitude ice palace in the world and the Sphinx Terrace, the views from here are considered<br />
the best in Switzerland. Later, proceed to the picture perfect town of Interlaken – nestled between two lakes. Be enthralled<br />
by the beauty of this town before driving back to your hotel.<br />
Tonight, enjoy an Indian dinner.<br />
Overnight in Hotel Dorint / Central / Chrystal in Zurich / Engelberg.</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> Lucerne
										</p>
										<p class="aj">Mt. Titlis – A landscape close to heaven. Lucerne – Orientation Tour.<br />
After a Continental Buffet Breakfast, check out and proceed for an excursion that will surely leave you spellbound. Enjoy<br />
stunning views from the world’s first revolving cable car - Rotair on your way up to Mt. Titlis (3020 metres.). Here, visit the<br />
Ice Grotto and indulge yourself in the world of snow on the snow terrace. Also experience the Cliff Walk (subject to weather<br />
conditions). After lunch, drive to the beautiful lakeside town of Lucerne. See the dramatic Lion Monument and the Kapell<br />
Brucke as you soak in the beauty of this city. You also have some free time for shopping of the world renowned Swiss<br />
watches, knives, chocolates, souvenirs, etc. Later drive to Locarno. Tonight, enjoy an Indian dinner.<br />
Overnight at Hotel Villa Pirelli / Ibis / Alexandra or similar, in Locarno / Bellinzona / Lugano / Central 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 9:</b> Pisa
										</p>
										<p class="aj">Onto Pisa - See the Leaning Tower of Pisa.<br />
After a Continental Buffet Breakfast, check out and drive to the city of Pisa. On arrival enjoy lunch. Later, hold your breath<br />
as you enter the “Square of Miracles” and see the precariously Leaning Tower of Pisa (photo stop). Proceed towards Arezzo<br />
in the Tuscany region and check into the hotel. Tonight, enjoy an Indian dinner.<br />
Overnight at Hotel Park Castiglione / Planet / Etrusco / Gio / Best Western or similar, in Arezzo / Perugia.</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> Vatican
										</p>
										<p class="aj">Onto Rome - the Eternal city. A guided city tour of Rome. Visit St. Peter’s Basilica – The Vatican.<br />
After a Continental Buffet Breakfast, drive to Rome – the Eternal City. On arrival, see the majestic Trevi Fountain, a fountain<br />
of grandeur and wishes. After lunch, join an experienced English speaking local guide for a tour of Rome. Start your tour by<br />
visiting the St. Peter’s Basilica (Shorts / Mini Skirts or Sleeveless vests not allowed) and be amazed by its artistic and<br />
architectural genius. Your city tour will expose you to beautiful sights like the opulent Colosseum, the Victor Emmanuel<br />
Monument, Roman Forum, Circus Maximus and ancient temples and many more sights. Later, drive back to the hotel.<br />
Tonight, enjoy an Indian dinner.<br />
Overnight at Hotel Park Castiglione / Planet / Etrusco / Gio / Best Western or similar, in Arezzo / Perugia.</p>					
											<p><b>Meals : </b> Breakfast + Lunch + 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> Vatican
											</p>
											<p class="aj">Onto Venice - the Queen of the Adriatic Sea. Lunch on board your private boat. Guided city tour of Venice. Visit the famous<br />
Murano Glass Factory.<br />
After a Continental Buffet Breakfast, check out and proceed to the romantic city of Venice. Enjoy lunch on your chartered<br />
boat to the traditional centre of the city - Piazza San Marco. This city of 117 islands in the Venetian Lagoon is sure to leave<br />
you mystified. On your guided tour, see the St. Mark’s Basilica, Bridge of Sighs, the Doges Palace, the Campanile and many<br />
more sights. Visit a Murano Glass Factory and see the skills of these master craftsmen. Tonight, enjoy an Indian dinner.<br />
Overnight at Hotel NH / Tulip Inn / Point / Alfa Fiera / Aires or similar, in Padova / Vicenza.</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 12:</b> Innsbruck
											</p>
											<p class="aj">Onto Innsbruck – The Tyrolean Capital. Visit the Swarovski Crystal Showroom in Innsbruck. Visit Nordkette Mountain.<br />
After a Continental Buffet Breakfast at the hotel, check out and drive to the Tyrolean capital - Innsbruck. On arrival take the<br />
cable way up to Nordkette Mountain for awesome panoramic views of Innsbruck. Enjoy Local lunch on top. After free time<br />
on the mountain take the cable way back to Innsbruck. Later, experience the charm of this city as you see some intriguing<br />
sights like the Golden Roof and St. Anne’s Column on Maria Theresien Strasse, from where you get spectacular views of the<br />
Alps. Visit the Swarovski Crystal showroom in Innsbruck. Marvel at the display and buy a souvenir for your near and dear<br />
ones. Tonight, enjoy an Indian dinner.<br />
Overnight at Alp Hotel or similar, in Innsbruck.</p>					
												<p><b>Meals : </b> Breakfast + Local 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 13:</b> Munich
											</p>
											<p class="aj">Visit Salzburg. Drive to Munich. Farewell!!!<br />
After a Continental Buffet Breakfast, check out and drive to Salzburg. On arrival proceed on an Orientation tour of this city.<br />
After lunch, drive to Munich. Enjoy an Orientation tour of Munich. Continue to the airport for your flight back home. Arrive<br />
home with pleasant memories of your European tour, which you will treasure for a lifetime.</p>					
												<p><b>Meals : </b> Breakfast + Lunch</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>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>What Your Tour Prices Does Not Include</li><li>
Cost of deviation - In case you wish to deviate from the group departure dates mentioned in the brochure i.e. either</li><li>
   travel before the departure date of your tour or would like to come back on a later date after the tour ends, there will be</li><li>
   an additional charge that will be applicable which will be advised to you by our sales team / partner agent. The same</li><li>
   subject to availability of seats for the given dates & ticket validity. Kindly also note, the deviation request is to be made at</li><li>
   the time of booking or at least 45 days prior to departure date.</li><li>
Tour cost is subject to GOI/RBI regulations under Liberalised Remittance Scheme (LRS)</li><li>
No Porterage included</li><li>
Any increase in the rate of exchange leading to an increase in surface transportation and land arrangements, which may</li><li>
  come into effect prior to departure. Prices quoted are as 1 EURO = INR 77. The tour price is subject to increase without</li><li>
  notice if this rate changes substantially prior to the departure of your tour</li><li>
Any expenses of personal nature such as laundry, wines, mineral water, food and drink not in the regular menu provided</li><li>
  by us, pay TV, mini-bar, telephone calls, etc.</li><li>
Meals other than what is mentioned in your Itinerary</li><li>
Cost of excursions, city sightseeing, entrance fees and local guides other than that mentioned in "What your Tour Price</li><li>
   Includes.</li><li>
Tips to drivers, guides, etc of EUR 03 per person per day for the duration of the tour.</li><li>
Cost of excursion to Jungfraujoch, with lunch & Interlaken.</li><li>
Cost of entrance to Lido Show</li><li>
Overseas Tours Insurance</li><li>
It is extremely important to possess an Overseas Travel Insurance policy before you travel on your tour. We have included</li><li>
the cost of overseas travel insurance for the duration of the tour. For any passengers above 60 years of age and those who</li><li>
wish to extend their holiday, additional charges would apply.</li></ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Specific Departure Dates</p>
								</div>
								
								April : 18, 25<br />
May : 02, 09, 16, 23, 30<br />
June : 06, 13, 20, 27<br />
July : 04, 11, 18, 25<br />
August : 01, 08, 15, 22, 29<br />
September : 05, 12, 19, 26								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<ul>
	<li>Additional Supplement will be applicable during major Exhibition and Event dates.</li>
	<li>Child Breakfast/ extra Bed price will be given upon request.</li>
	<li>Above shown rate is non-refundable basis.</li>
	<li>Rooms are subject to availability.</li>
	<li>Minimum 2 adults for the above package</li>
	<li>Price mentioned above is only a quotation. No reservations has been held on confirm status basis.</li>
	<li>All rates and confirmation are subject to availability at the time of booking.</li>
	<li>All sightseeing tours are subject to road, weather, political conditions at a respective destination</li>
	<li>Cancellation policy will be advised at the time of booking</li>
	<li>We recommend you to book with us immediately. In order to benefit at the current proposed prices,</li>
	<li>SIC transfers valid from 7 am - 7 pm only</li>
	<li>Normal Hotel check-in time is from 14.00 hrs onwards. &amp; check-out time is at 12.00 hrs.</li>
	<li>There will be an additional cost for an entire transfer between 23:00 - 07:00 hrs</li>
	<li>Quotation might change due to season, currencies ROE fluctuations during confirmation &amp; booking process</li>
</ul>								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Classique 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="85844"/>
						</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.paceholidays.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-paris.htm" title="Packages in Paris">Paris</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-lucerne.htm" title="Packages in Lucerne">Lucerne</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-kuala-lumpur.htm" title="Packages in Kuala Lumpur">Kuala Lumpur</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-bern.htm" title="Packages in Bern">Bern</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-london.htm" title="Packages in London">London</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/packages-in-rome.htm" title="Packages in Rome">Rome</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-brussels.htm" title="Packages in Brussels">Brussels</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-macau.htm" title="Packages in Macau">Macau</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-amsterdam.htm" title="Packages in Amsterdam">Amsterdam</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-zurich.htm" title="Packages in Zurich">Zurich</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-dubai.htm" title="Packages in Dubai">Dubai</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-innsbruck.htm" title="Packages in Innsbruck">Innsbruck</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-hong-kong.htm" title="Packages in Hong Kong">Hong Kong</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</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.paceholidays.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</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.paceholidays.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.paceholidays.com/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</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.paceholidays.com/packages-in-alchi.htm" title="Packages in Alchi">Alchi</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.paceholidays.com/packages-in-vaduz.htm" title="Packages in Vaduz">Vaduz</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.paceholidays.com/packages-in-tashkent-travel.htm" title="Packages in Tashkent">Tashkent</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.paceholidays.com/packages-in-mysore.htm" title="Packages in Mysore">Mysore</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.paceholidays.com/packages-in-berlin.htm" title="Packages in Berlin">Berlin</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.paceholidays.com/packages-in-jaisalmer.htm" title="Packages in Jaisalmer">Jaisalmer</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.paceholidays.com/packages-in-ooty.htm" title="Packages in Ooty">Ooty</a> <b class="alpha50 bn small">(3)</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.paceholidays.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(27)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/boat-safari-holidays-catid.htm" title="Boat Safari Packages">Boat Safari</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/house-boat-holidays-catid.htm" title="House Boat Packages">House Boat</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paceholidays.com/safari-holidays-catid.htm" title="Safari Packages">Safari</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.paceholidays.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/desert-holidays-catid.htm" title="Deserts Packages">Deserts</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paceholidays.com/cruise-holidays-catid.htm" title="Cruise Packages">Cruise</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 London, Paris, Venice, Brussels, Amsterdam, Rome, Bern</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.paceholidays.com/tour-packages/europe-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_2/39257/277587.jpg"  alt="Europe Tour" title="Europe Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paceholidays.com/tour-packages/europe-tour.htm" title="Europe Tour"><h3>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> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Paris, Rome, Pisa, Masai Mara</p>
															<div class="mt10px small">
							<form name="pkg_182642" id="pkg_182642" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paceholidays.com/tour-packages/europe-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="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="182642"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paceholidays.com/tour-packages/europe-tour-package9-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_2/39257/275906.jpg"  alt="Europe Tour Package 9 Days" title="Europe Tour Package 9 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paceholidays.com/tour-packages/europe-tour-package9-days.htm" title="Europe Tour Package 9 Days"><h3>Europe Tour Package 9 Days</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> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Paris, Innsbruck, Pisa, Padova, Baselga,..</p>
															<div class="mt10px small">
							<form name="pkg_182159" id="pkg_182159" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paceholidays.com/tour-packages/europe-tour-package9-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Europe Tour Package 9 Days - 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="182159"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paceholidays.com/tour-packages/exotic-switzerland-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_2/39257/150948.jpg"  alt="Exotic Switzerland Tour" title="Exotic Switzerland Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paceholidays.com/tour-packages/exotic-switzerland-tour.htm" title="Exotic Switzerland Tour"><h3>Exotic Switzerland Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 182930</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Engelberg, Geneva, Zurich, Interlaken, L..</p>
															<div class="mt10px small">
							<form name="pkg_85851" id="pkg_85851" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paceholidays.com/tour-packages/exotic-switzerland-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Exotic Switzerland 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="85851"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paceholidays.com/tour-packages/amazing-switzerland-paris-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_2/39257/149469.jpg"  alt="Amazing Switzerland & Paris Tour" title="Amazing Switzerland & Paris Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paceholidays.com/tour-packages/amazing-switzerland-paris-tour.htm" title="Amazing Switzerland & Paris Tour"><h3>Amazing Switzerland & Paris Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 106300</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Paris, Geneva, Zurich, Lucerne, Bern</p>
															<div class="mt10px small">
							<form name="pkg_84783" id="pkg_84783" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paceholidays.com/tour-packages/amazing-switzerland-paris-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Amazing Switzerland & Paris 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="84783"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paceholidays.com/tour-packages/mini-europe-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_2/39257/149671.jpg"  alt="Mini Europe Tour" title="Mini Europe Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paceholidays.com/tour-packages/mini-europe-tour.htm" title="Mini Europe Tour"><h3>Mini Europe Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 346500</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								15 Nights / 16 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Geneva, Zurich, Lucerne, ..</p>
															<div class="mt10px small">
							<form name="pkg_85063" id="pkg_85063" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paceholidays.com/tour-packages/mini-europe-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Mini 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="85063"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paceholidays.com/tour-packages/exotic-europe-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_2/39257/149408.jpg"  alt="Exotic Europe Tour" title="Exotic Europe Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paceholidays.com/tour-packages/exotic-europe-tour.htm" title="Exotic Europe Tour"><h3>Exotic Europe Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 382375</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								21 Nights / 22 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Brussels, Amsterdam, Inns..</p>
															<div class="mt10px small">
							<form name="pkg_84732" id="pkg_84732" method="post" action="http://www.paceholidays.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paceholidays.com/tour-packages/exotic-europe-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Exotic 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="84732"/>
							</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:62:"Book Classique Europe Tour - 12 Nights / 13 Days Tour Packages";i:2;s:170:"book classique europe tour - 12 nights / 13 days tour packages, heritage tour packages, london, paris, venice, brussels, amsterdam, rome, bern, vatican city tour packages";i:3;s:209:"Pace Tours And Travels offers Classique Europe Tour - 12 Nights / 13 Days tour package, budget Heritage tour packages for London, Paris, Venice, Brussels, Amsterdam, Rome, Bern, Vatican City at exciting price.";i:4;s:7719:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "London, Paris, Venice, Brussels, Amsterdam, Rome, Bern, Vatican City"        
		                 },
		      "description": "Highlights Of The Tour
A Complete All Inclusive Value For Money Tour With Maximum Quality Sightseeing And Minimum
Travelling Time
Stay In Conveniently Located & Comfortable Hotels Like Thistle, Holiday Inn, Jury’S Inn, Mercure,
 Nh Etc. Throughout Your Holiday
A Complete Value For Money Tour
Daily Continental Buffet Breakfast Included
Jain / Vegetarian Lunches As Specified In The Itinerary
Daily Indian Jain / Vegetarian / Non-Vegetarian Dinners Included
Guided City Tour Of London, Paris, Rome & Venice
Visit The Famous Madame Tussauds Wax Museum
A Unique Experience Of Crossing The English Channel By An Overnight Cruise From Harwich To Hoek
 Van Holland
See The World Famous Keukenhof Tulip Gardens (Till 21St May)

Visit Zaanse Schans-A Working Museum Of Well-Preserved Historic Windmills
And Houses, Cheese Farm & Wooden Shoe Factory (From 22Nd May)
Photo Stop At A Traditional Windmill In Amsterdam
Free Time At In The Heart Of Amsterdam - Dam Square
City Tour Of Brussels - Grand Place And Photo Stop At The Atomium
Visit 3Rd Level Of The Eiffel Tower
Visit Fragonard Perfume Museum And Showroom
Full Day At Euro Disney - A Super Fun, Stress-Free And Adventure Experience
Cruise On The River Seine
Option To See The Lido Show In Paris
A Chance To Visit Jungfraujoch - ‘Top Of Europe’ With Champagne Lunch On Top
Visit Mt. Titlis In The World’S First Revolving Cable Car With Cliff Walk
See The Lion Monument And The Kapell Brucke In Lucerne
See The Leaning Tower Of Pisa
Visit The Vatican - The St. Peter’S Basilica
See The Trevi Fountain - Rome
Visit The St. Mark’S Square In Venice With Lunch On Board Your Chartered Boat
Visit The Murano Glass Showroom In Venice
Visit Swarovski Crystal Showroom In Innsbruck
See The Golden Roof And The Maria Theresien Strasse In Innsbruck
Visit Nordkette Mountain With Local Lunch On Top.
Visit Salzburg With An Orientation Tour.
Visit Munich With An Orientation Tour Of The City.
Visit 09 Countries In 13 Days Covering Uk, The Netherlands, Belgium, France, Switzerland, Italy,
The Vatican, Austria & Germany
Services Of A Professional, Friendly, Multilingual And Experienced Tour Manager Travelling With
You Throughout Your Tour
Sightseeing And Excursions
United Kingdom
Londonguided City Tour With An English Speaking Local Guide
Visit The Madame Tussauds Wax Museum

Netherlands
Lisse Visit Keukenhof Tulip Gardens (Till 21St May)
Zaanse Schans Visit The Traditional Village Of Windmills, Wooden Shoe Factory And Cheese Farm (From 22Nd May)
Amsterdam Photo Stop At A Traditional Windmill
Free Time At Dam Square

Belgium
Brussels Tour Of The City
A Visit To The Grand Place And Mannekin Pis Statue
Photo Stop At The Atomium
France
Paris Guided City Tour With An English Speaking Local Guide
Entrance To The 3Rd Level Of The Eiffel Tower
Cruise On The River Seine
Visit Fragonard Perfume Museum And Showroom
Full Day Excursion To Euro Disney

Switzerland
Engelberg Excursion To Mt. Titlis - Included With Cliff Walk (Weather Permitting)
Lucerne  Tour Of The City
See The Lion Monument And The Kapell Brucke

Italy
Pisa See The Leaning Tower Of Pisa
Rome See The Majestic Trevi Fountain
Guided City Tour With An English Speaking Local Guide
Venice Guided City Tour Of Venice
Visit The Famous St. Mark’S Square
Visit The Murano Glass Factory And Showroom
Enjoy Lunch On A Private Cruise

The Vatican
Vatican City Visit The Holy St. Peter’S Cathedral

Austria
Innsbruck Visit The Swarovski Crystal Showroom In Innsbruck
Orientation Tour Of Innsbruck
Visit Nordkette Mountain
Salzburg  Orientation Tour Of City.

Germany
Munich  Orientation Tour Of The City.

Accommodation
01 Night At Hotel Heston Hyde / Heathrow / Jury’S Inn / Park Inn Or Similar, In London
01 Night On Board The Stena Lines Cruise
01 Night At Hotel Thon / Best Western / Holiday Inn Express / Ibis Style Or Similar, In Brussels / Antwerp
02 Nights At Hotel Novotel Poissy / Mercure / Inter Hotels / Ibis Or Similar, In Paris
02 Nights At Hotel Dorint / Central / Chrystal In Zurich / Engelberg
01 Night At Hotel Villa Pirelli /Ibis / Alexandra Or Similar, In Locarno / Bellinzona / Lugano / Central Switzerland
02 Nights At Hotel Park Casteglione /Planet / Etrusco / Gio / Best Western Or Similar, In Arezzo / Perugia
01 Night At Hotel Nh / Tulip Inn / Point / Alfa Fiera / Aires Or Similar, In Padova / Vicenza
01 Night At Hotel Alp Hotel Or Similar In Innsbruck

Meals (Abbrev - Bbreakfast, Llunch, Plpacked Lunch, Ddinner)
Daily Continental Buffet Breakfast
Jain / Vegetarian Lunches As Specified In The Itinerary
Daily Indian Jain / Vegetarian / Non Vegetarian Dinners

Transfers
All Transfers And Extensive Excursions With Entrance Fees (As Specified In The Itinerary) By Deluxe Air Conditioned Coach In
The Continent Of Europe And An Air-Cool Coach In London
Overnight Cruise From Uk To The Netherlands
Airfare, Visas And Overseas Travel Insurance
Return Economy Class Group Airfare As Per The Itinerary
Cost Of Ticket Taxes
Cost Of Overseas Travel Insurance
Cost Of Multiple Entry Schengen & Uk Visas
All Local Taxes As Of 01St October 2016

Tour Manager
Services Of A Professional And Experienced Tour Manager Or A Local Representative Throughout Your Tour In EuropeWhat Your Tour Prices Does Not Include
Cost of deviation - In case you wish to deviate from the group departure dates mentioned in the brochure i.e. either
   travel before the departure date of your tour or would like to come back on a later date after the tour ends, there will be
   an additional charge that will be applicable which will be advised to you by our sales team / partner agent. The same
   subject to availability of seats for the given dates & ticket validity. Kindly also note, the deviation request is to be made at
   the time of booking or at least 45 days prior to departure date.
Tour cost is subject to GOI/RBI regulations under Liberalised Remittance Scheme (LRS)
No Porterage included
Any increase in the rate of exchange leading to an increase in surface transportation and land arrangements, which may
  come into effect prior to departure. Prices quoted are as 1 EURO = INR 77. The tour price is subject to increase without
  notice if this rate changes substantially prior to the departure of your tour
Any expenses of personal nature such as laundry, wines, mineral water, food and drink not in the regular menu provided
  by us, pay TV, mini-bar, telephone calls, etc.
Meals other than what is mentioned in your Itinerary
Cost of excursions, city sightseeing, entrance fees and local guides other than that mentioned in "What your Tour Price
   Includes.
Tips to drivers, guides, etc of EUR 03 per person per day for the duration of the tour.
Cost of excursion to Jungfraujoch, with lunch & Interlaken.
Cost of entrance to Lido Show

Overseas Tours Insurance
It is extremely important to possess an Overseas Travel Insurance policy before you travel on your tour. We have included
the cost of overseas travel insurance for the duration of the tour. For any passengers above 60 years of age and those who
wish to extend their holiday, additional charges would apply.20-0231-07",
		      "name": "Classique Europe Tour",
		      "telephone": "+91-9945526383"
		    }
		    </script>
			";i:5;N;}