a:6:{i:0;s:57207:"				<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"  height="150"  width="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="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>217750</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</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-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-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-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-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-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-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</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-port-blair.htm" title="Packages in Port Blair">Port Blair</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-bikaner.htm" title="Packages in Bikaner">Bikaner</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-paro.htm" title="Packages in Paro">Paro</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-vienna.htm" title="Packages in Vienna">Vienna</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-thimphu.htm" title="Packages in Thimphu">Thimphu</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-manali.htm" title="Packages in Manali">Manali</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-gangtok.htm" title="Packages in Gangtok">Gangtok</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-bangkok.htm" title="Packages in Bangkok">Bangkok</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-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</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-geneva.htm" title="Packages in Geneva">Geneva</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"  height="100"  width="100"    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="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 159000</b> <b class="xsmall alpha50">Per Person</b></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"  height="100"  width="100"    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="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 159000</b> <b class="xsmall alpha50">Per Person</b></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"  height="100"  width="100"    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"  height="100"  width="100"    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"  height="100"  width="100"    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"  height="100"  width="100"    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;}