a:6:{i:0;s:21680:"				<div class="h1"><h1>Classical Europe Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.sanskrutivacations.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.sanskrutivacations.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Classical Europe Tour</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						10 Nights / 11 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Venice, Florence, Innsbruck, Rome, Pisa, Lucerne, Padova, Vaduz, Basel, Bern</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sanskrutivacations.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Classical 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="52373"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_14/393874/102687.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/393874/102687.jpg"  width="150" height="150"    alt="Classical Europe Tour" title="Classical Europe Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Airfare<br />
Visa & Insurance.<br />
Service Tax (3.63 %)<br />
Porterage<br />
Any items not specifically mentioned in "Tour cost includes".<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> Destination - Rome
								</p>
								<p class="aj">Assemble at your nearest international airport to board flight for Rome. Rome is the capital of Italy. Rome today is one of the most important tourist destinations of the world, due to the incalculable immensity of its archaeological and artistic treasures, as well as for the charm of its unique traditions, the beauty of its panoramic views, and the majesty of its magnificent "villas" (parks). Among the most significant resources are the many museums - (Musei Capitolini, the Vatican Museums, Galleria Borghese, including those dedicated to modern and contemporary art and great many others). Rome is referred to as "The Eternal City", a notion expressed by ancient Roman poets and writers. Rome airport pick up time for all passengers will be 1900 Hours. Thenafter check in at Hotel. Dinner and Overnight at Rome.</p>					
									<p><b>Meals : </b> [Meals: Dinner]</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 2:</b> Rome
								</p>
								<p class="aj">After breakfast at the hotel proceed to the orientation city tour of Rome where we see the Colosseum (from outside), the roman forum, the vittorio Emmanuelle monument, Later proceed to Vatican City - a country inside a city. It is Catholic Capital of the world and house of pope. Visit the Christianity’s Pilgrimage place - St. Peter’s Basilica, the place where Pope Stays. Overnight at Rome.</p>					
									<p><b>Meals : </b> [Meals: 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> Rome - Florence - Pisa (337 Kms - 4.5Hrs)
								</p>
								<p class="aj">After breakfast at the hotel proceed to Florence where we see the Piazzale Michelangelo the famous square with a magnificent panoramic view of Florence, Italy, and is a popular tourist destination in the Oltrarno district of the city. The famous view from this observation point overlooking the city has been reproduced on countless postcards and snapshots over the years. The panorama embraces the heart of Florence from Forte Belvedere to Santa Croce, across the lungarni and the bridges crossing the Arno, including the Ponte Vecchio, the Duomo, Palazzo Vecchio, the Bargello and the octagonal bell tower of the BadiaFiorentina. Beyond the view of the city itself are the hills of Settignano and Fiesole.Then after proceed to Pisa. Pisa is famous for its "Fields of Miracle" wherein stands the enormous marble cathedral, the baptistery & the bell tower, known throughout the world as the leaning tower of Pisa. Arrive and check in at Hotel. Overnight in Pisa.</p>					
									<p><b>Meals : </b> [Meals: 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> Pisa - Venice - Padova (330 Kms - 5 Hrs approx)
								</p>
								<p class="aj">After breakfast proceed for Venice. We join the superfast auto-strada for Venice. We drive north through the Chianti wine country & the amazing scenery of the Apennines through the provinces of Umbria & the Tuscany, we arrive in one of the world's most romantic cities - Venice. Your tour starts with a boat ride on a Vaperreto to St Marks Square; later our guide will take us around this marvelous city with its arched bridges, palaces, & quite piazzas followed by a visit to the Murano glass to see the Venetian glass blowers at work. Evening proceed to Padova and check in at Hotel. Overnight at Padova.</p>					
									<p><b>Meals : </b> [Meals: 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> Padova - Innsbruck (400 Kms - 5hrs)
								</p>
								<p class="aj">After breakfast at the hotel proceed to Innsbruck. Innsbruck is the capital city of the federal state of Tyrol (Tirol) in western Austria. It is located in the Inn Valley at the junction with the Wipptal (Sill River). Tourism is the most important source of income for the city authority, largely because of Innsbruck's beautiful town centre with its historic buildings, the friendly ambience and the extensive sport facilities both in winter and in summer. Arrive and check in at Hotel. Thenafter proceed for the orientation tour of Innsbruck where we will see Basilica & the Golden Roof from outside. Rest of the day free for leisure.Overnight at Innsbruck.</p>					
									<p><b>Meals : </b> [Meals: Breakfast - Lunch at the picnic spot - 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> Innsbruck - Vaduz - Obwalden (340 Kms - 4hrs)
								</p>
								<p class="aj">After breakfast we check out and proceed to Vaduz. Arrive and visit the famous walking street of Vaduz. Later proceed to Giswil, which is heart of Switzerland and from where access to any part of Swiss is most conveniently reachable. Obwalden is a German word which means: FOREST, place is surrounded by lush green forest mountains in Spring & Summer, white snow in the winter. Town of Giswil is just located at the entrance of Northern Alps and that gives location a fabulous advantage of mild winter compare to the deep interiors and provides year round tourists facilities. Just to share few of the distances: Zurich 80 Kms, Lucern 20Kms, Engelberg 50Kms,Bern 95Kms, Lugano 180Kms, Interlaken 45 Kms, Rhine Falls 139Kms, this saves a tourists most valuable time of changing hotels across Swiss and enjoy every moment of the holiday. Overnight at Obwalden.</p>					
									<p><b>Meals : </b> (Meals: Breakfast, Lunch at the picnic spot, 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> Obwalden - Mt. Titlis - Lucerne - Obwalden
								</p>
								<p class="aj">After Breakfast, proceed to Engelberg, the base of Central Switzerland’s highest mountain. Enjoy 3 cable car rides on the way up to Titlis. After that we proceed for the city tour of Lucerne visiting the famous Lion Monument, Chapel Bridge and beautiful Lake of Lucerne. Free time is given for shopping/walking tour near the Lake. Later Return back to Hotel, overnight at Obwalden.</p>					
									<p><b>Meals : </b> [Meals: Breakfast, Lunch and Dinner]</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 8:</b> Obwalden - Bern - Montreux - Obwalden
								</p>
								<p class="aj">Proceed to Swiss capital: Bern, travel over the old stone bridges past Bear Pitand straight through the medieval Old Town. We’ll follow the 6 kilometers of arcades and the historical fountains dotting the streets and passing by the Clock Tower (Zytglogge). The Parliament building with "its" Parliament Square (Bundesplatz) is another landmark that can’t be missed on this tour. After completing orientation tour, enjoy the walk on the walking flag street in Bern. After Lunch at the picnic spot later proceed to Montreux. It is located on Lake Geneva at the foot of the Alps. the sunny slopes of the lake from Lavaux to Montreux became an important wine-growing region. Evening return back to your hotel. Overnight at Obwalden.</p>					
									<p><b>Meals : </b> [Meals: Breakfast, Lunch and Dinner]</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 9:</b> Obwalden - Basel - Paris
								</p>
								<p class="aj">After breakfast at the hotel we check out and drive via beautiful city of Basel and proceed to the French Landmark City of Paris. This city is considered as one of the most advanced and yet cultured city in France. Enjoy lunch Enroute. On arrival after a scenic drive, check in to your Hotel. And at night you can go to world famous Lido Show at 1130PM (Optional). Later time is free to feel the city on your own, overnight at Paris.</p>					
									<p><b>Meals : </b> [Meals: Breakfast, Lunch and Dinner]</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 10:</b> Paris
								</p>
								<p class="aj">After breakfast at the hotel, you will ride the Seine River Cruise. See the beautiful city from the water and take memory of the city in mind, heart and camera. After lunch you will see the famous landmarks - Notre dame cathedral, arch de Triomphe, champs Elysées, place de Concorde, the opera house, & visit the level 02 of The Eiffel Tower. Return to the hotel, overnight at Paris.</p>					
									<p><b>Meals : </b> [Meals: Breakfast, Lunch and Dinner]</p>
								</td>
								</tr>
								</table>					
								</div><div id="show_more_content" style="display:none;">
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 11:</b> Paris - Homebound flight
									</p>
									<p class="aj">Morning one time coach drop facility at Charles De Gaulle Airport for your home bound flight at 0900 Hours. Tour ends with lots of memories for the life and to suggest this wonderful tour to your friends and relatives.</p>					
										<p><b>Meals : </b> [Meals: Breakfast]</p>
									</td>	
									</tr>
									</table>				
									</div>					
							</div>							<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
													<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>Meals</li>
																		<li>Sightseeing</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Airfare</li><li>
Visa & Insurance.</li><li>
Service Tax (3.63 %)</li><li>
Porterage</li><li>
Any items not specifically mentioned in "Tour cost includes".</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<p><strong>Itinerary can be shuffle by Tour Leader According to Weather Conditions.&nbsp;</strong>

<p><strong>&nbsp;</strong><strong>IMPORTANT FAQ&rsquo;s</strong>

<p>&nbsp;PLEASE NOTE THAT ONLY 1 BAG OF 20 KG PER PERSON AS CHECK IN LUGGAGE AND 1 HAND BAG UP TO 7 KG PER PERSON IS ALLOWED IN EUROPE, NO EXTRA BAGS WOULD BE ALLOWED UNDER ANY CIRCUMSTANCES.

<p>WEATHER IN EUROPE WOULD BE MIX OF SHORT RAIN, COLD AND SUMMER

<p>ADVISE TO CARRY THERMAL, HEAVY WOOLEN &amp; A SMALL UMBRELLA / WINDCHEATER IN CASE OF SHORT RAINS

<p>SPORTS SHOES RECOMMENDED FOR THE JOURNEY

<p>SUN GLASSES RECOMMENDED FOR SNOW ENCOUNTER IN SWISS

<p>EURO IS COMMON CURRENCY RECOMMENDED TO CARRY FOR THE WHOLE TOUR

<p>YOU CAN BUY A EURO CURRENCY DEBIT CARD INSTEAD OF CARRYING CASH - FOR SAFETY

<p>UNIVERSAL ADAPTER IS ADVISABLE TO CARRY FOR CHARGING OF MOBILES &amp; CAMERAS

<p>EUROPE IS KNOWN FOR THEFT, SO PLEASE CARRY LEAST POSSIBLE VALUABLES

<p>EIFFEL TOWER, JUNGFRAU, GLACIER 3000 ARE THE PLACES IN TOUR WHICH WOULD BE EXTREMELY COLD

<p>TAP-WATER IS SAFE AND HYGENIC IN ENTIRE EUROPE, WE ADVISE TO CARRY EMPTY WATER BOTTLE FROM INDIA

<p>SHOPPING CAN BE DONE AS BELOW:

<p>CHOCLATES &amp; WATCHES IN SWISS,&nbsp; CRYSTALS IN SWARWOSKI IN INSSBRUCK, PERFUMES IN PARIS

<p>PURSES / BAGS IN ITALY (ROAD SIDE)

<p><strong>&nbsp;</strong><strong><em>Visa requirement:</em></strong>

<p>4 recent photographs ( 35mm*45 mm white background matt finishing; 80% face focus)

<p>Original passport with minimum validity of six months. ( please provide all old passports if any) (Validity of Passport should be 10 year from the date of issue)

<p>Last three years income tax &ndash; Saral form (photocopies) Company &amp; Personal.

<p>Recent 6 months personal bank statements of all the passengers travelling. (photocopies) Company &amp; Personal.

<p>3 Letterheads individual / company.

<p>Pan card copy

<p>Insurance copy

<p>Student id proof

<p>Business Proof (Partnership Deed / MOU of Proprietor / MOU of shop &amp; establishment)

<p>If salaried person, we need leave letter on company&rsquo;s letter head and 3 months&rsquo; salary slip

<p><strong>&nbsp;</strong>

<p><strong>NOTE:- If the group size is less than 8 people 100 Euro per person surcharge will be applicable.</strong>

<p><strong>&nbsp;</strong>&nbsp;<strong>Payment Policy:&nbsp;&nbsp;&nbsp;&nbsp; Rs 50,000 at the time of booking (Non- Refundable)</strong>

<p><strong>Balance Payment 30 Days Prior to Departure.</strong>

<p>&nbsp;

<p><strong>Cancellation Policy</strong>

<p><strong>No of Days</strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <strong>Charges</strong>

<p>35 Days or more prior to the date of departure &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Deposit Amount

<p>34 &ndash; 25 Days &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 25 % of Tour Cost

<p>24 &ndash; 15 Days&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 50 % of Tour Cost

<p>14 &ndash; 10 Days&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 75 % of Tour Cost

<p>10 days of less prior to the date of departure&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 100 % of Tour Cost

<p>&nbsp;

<p>Note: In case of Cancellation you would be provided Credit note after cancellation charges which can be utilized in any International Tour within the period of 1 year.												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sanskrutivacations.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Classical 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="52373"/>
						</form>
						</div>
						
						";i:1;s:51:"Book Classical Europe Tour - 111 Days Tour Packages";i:2;s:176:"book classical europe tour - 111 days tour packages, forts and palaces tour packages, venice, florence, innsbruck, rome, pisa, lucerne, padova, vaduz, basel, bern tour packages";i:3;s:212:"Sanskruti Vacations offers Classical Europe Tour - 111 Days tour package, budget Forts and Palaces tour packages for Venice, Florence, Innsbruck, Rome, Pisa, Lucerne, Padova, Vaduz, Basel, Bern at exciting price.";i:4;s:591:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Venice, Florence, Innsbruck, Rome, Pisa, Lucerne, Padova, Vaduz, Basel, Bern"        
		                 },
		      "description": "Airfare
Visa & Insurance.
Service Tax (3.63 %)
Porterage
Any items not specifically mentioned in "Tour cost includes".",
		      "name": "Classical Europe Tour",
		      "telephone": "+91-9769880881"
		    }
		    </script>
			";i:5;N;}