a:6:{i:0;s:33437:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Swiss To Venice Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.sribalajioverseassolutions.com/" title="Home">Home</a>
						
							
						<b class="ffv p2px">&rsaquo;</b> Swiss To Venice Tour</p>
						</div>
						</div>
						</section>
										<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="fo">
					<div class="db vat pr slideArrow">				
												<ul class="bxslider11 fx-height lh0" style="margin:0px;padding:0px;">
																	<li class="pr">
										<div>										
										<div class="lh0 pa blur-bg" style="background:url(https://ttw.wlimg.com/package-images/photo-big/dir_9/267689/243808.jpg);"></div>
										<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_9/267689/243808.jpg">
										<div class="slide-fixImag" style="margin:0 9%;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/267689/243808.jpg"  height=""  width=""    alt="Swiss to Venice Tour" title="Swiss to Venice Tour"  /></div>
										</a>
										</div>
										</li>
																	</ul>
												<div class="sliderCont-Layer">
					<div class="dt w100">
					<div class="dtc vam"><p class="xxxlarge fw7 lh13em">Swiss to Venice Tour 
					
											<span class="fw3 xsmall yellow">(
						5 Nights / 6 Days 
						)</span>
											</p>
											<p class="mt5px"><span class="fw6">Destination Covered</span> : Venice, Innsbruck, Wattens, Zurich, Interlaken, Lucerne, Vaduz</p>
											</div>
					<div class="dtc w200px vam"></div>
					</div>
					</div>
					<div class="slidePrice ac">
					<p class="xxlarge red mb12px">
											<span class="xxxlarge fw7"><i class="fa fa-inr"></i> 67999</span>
						<span class="db ttu xsmall mt5px">Per Person</span>
											</p>
											<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sribalajioverseassolutions.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Swiss to Venice Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig c3px dib p10px15px xlarge fw6">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="159231"/>
						</form>
											</div> 
					
					<script>			
					jQuery('.bxslider11').bxSlider({
					  mode:'horizontal',
					  slideWidth:840,
					  auto:true,
					  autoControls:false,
					  stopAutoOnClick:true,
					  pager:false
					});
					</script>
					</div>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
												<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Destination Covered: Zurich, Lucerne, Interlaken, Vaduz, Innsbruck, Wattens, Venice<br />
<br />
Inclusions: As per destinations in main itinerary<br />
<br />
OPTIONAL TOURS<br />
Zurich: Mt. Jungfrau - Top of Europe € 149 PP<br />
Venice: Gondola Ride 30mins, min 6 Pax € 100 PPAir Tickets<br />
<br />
Visa and Insurance<br />
<br />
Extra charges/expenses of personal nature like laundry, mineral water/drinks, telephone or any other charges/ expenses not mentioned in Inclusions Optional Tours<br />
<br />
Mandatory tips of Euro 3 per person per day for Coach drivers, Guides etc.<br />
<br />
Cost for Ticket + Visa + Insurance, 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. 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 “Tour Cost Includes”, Overseas Mediclaim, <br />
<br />
Tips to Driver: EURO 2 per pax per day (Compulsory)<br />
Vouchers are not transferable and valid only for the services mentioned therein. Any services not specifically requested, confirmedand noted on vouchers will not be rendered. All extras to be paid directly to the hotels / the service providers.<br />
Passenger Comments / Complaints :<br />
It is imperative that any complaints be made known to the respective handling agents or its representatives without any delay so that appropriate action can be taken.</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Zurich (Switzerland)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Arrive at Airport & transfer to hotel. The rest of day is at leisure so that you can relax after your long<br />
haul flight. Switzerland is a mountainous Central European country, home to numerous lakes, villages and the high peaks of the Alps. Its cities contain medieval quarters, with landmarks like capital Bern's<br />
Zytglogge clock tower and Lucerne's wooden chapel bridge. The country is also known for its ski<br />
resorts and hiking trails. Banking and finance are key industries, and Swiss watches and chocolate<br />
are world renowned. (Packed Indian Dinner Delivered to Hotel)															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Zurich - Excursion to Mt.Titlis-Zurich										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast, proceed to Engelberg town- a base cable car station of Mt.Titlis. The TITLIS ROTAIR revolving gondola transports you easily to the mountain station. Take your time and visit the Swiss Lion shop, the world's highest watch shop. You can even have your photo taken in traditional Swiss costume in our photo studio. The glacier cave is only a snowball's throw from the mountain station. The glistening, blue ice tunnel leads deep down into the fascinating world inside the glacier. In the summer months, the Ice Flyer chair lift will take you to the glacier park where all kinds of fun snow activities await. Grab a snowtube or a speedy sled and whiz down the piste, whipping up plenty of snow as you go. You may also do the Titlis Cliff Walk is a pedestrian bridge along the cliff of Mount Titlis in the Swiss Alps. Later, in the afternoon, proceed to the city of Lucerne for Orientation tour and see the Chapel Bridge-The Chapel<br />
Bridge is a covered wooden footbridge spanning diagonally across the Reuss River in the city of<br />
Lucerne. Named after the nearby St. Peter's Chapel, the bridge is unique since it contains a number of interior paintings dating back to the 17th century, Jesuit Church- This beautiful church is considered to be the first large baroque style church ever built in Switzerland.Lion Monument-The Lion Monument, or the Lion of Lucerne, is a rock relief in Lucerne, Switzerland, designed by Bertel Thorvaldsen and hewn in 1820–21 by Lukas Ahorn. We will proceed back to Zurich.															   
												<div class="mt10px">
												
																	
													<p>Meals : Breakfast, Dinner</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Zurich - Optional Excursion to Jungfrau-top of Europe/interlaken- Zurich										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After Breakfast choose an optional excursion to Mt. Jungfrau - Top of Europe. The Jungfraujoch - Top of<br />
Europe is the highlight of any Swiss holiday. The highest railway station in Europe is located 3,454 metres above sea level. You have access to a high-alpine wonderland of ice, snow and rock, which can be admired from the viewing platforms, on the Aletsch Glacier or in the Ice Palace - experience the magic. Visit the Sphinx observation tower. After the tour we will proceed for orientation tour of Interlaken. We will start from Höheweg is the main street in Interlaken, which stretches from the city's central square to the east. Roman Catholic church- Situated on Schlosstrase, this Swiss religious building houses a Roman Catholic parish church, which offers worship masses, religious education, and other. Group members not opting for Mt. Jungfrau will have an opportunity to proceed to the city of Interlaken for an orientation tour.															   
												<div class="mt10px">
												
																	
													<p>Meals : Breakfast, Dinner</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Zurich – Vaduz (liechtenstein) – Wattens - Innsbruck (Austria)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After Breakfast. Check out and board your coach to drive to Innsbruck. You will pass through Vaduz, the<br />
capital city of the princely country of Liechtenstein. Take a quick stop in Vaduz and some time to explore<br />
the city. Later, drive to Innsbruck. Wattens to take the vision of the noteworthy collection of world famous<br />
Crystals in Swarovski museum. You will also get surprised to see 'Chetak' the favorite horse of<br />
Maharaja Rana Pratap of Rajasthan- ornamented with Swarovski's Gemstone Jewels.You will be provided with your time to shop for jewelry and other souvenirs for your friends and relatives as a symbol of love and remembrance of this exotic place. On Arrival Innsbruck, Orientation tour of Innsbruck capital of Tyrol Province, you will cover the Golden Dachl –Maria Theresa square, Imperial Palace, the Golden Roof, Imperial Palace, River Inns, Royal Church etc. Later we will have dinner at Indian restaurant and later proceed for Check-in to the hotel.															   
												<div class="mt10px">
												
																	
													<p>Meals : Breakfast, Dinner</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Innsbruck – Venice/Padova(Italy)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After Breakfast. Check out and board your coach for Continue journey to Venice/Padova. On Arrival<br />
Venice You will have guided panoramic tour of Venice, you will enjoy Vaparetto ride which will descend<br />
you to the Venice Island . Discern the "real Venice" by inflowing a knot of slender passages and lanes<br />
where this enchanted city of mean daring seaways dispersed by subtle bonds which expects you. Here<br />
at San Mark's square you will observe and learn the history that lies behinds the walls of its most famous<br />
landmarks; the Basilica and its Byzantine heritage, the Doge's Palace and its contiguous prisons, Venetion, St. Mark Cathedral, Bell Tower with Bridge of Sighs, etc. Check-in to the hotel.															   
												<div class="mt10px">
												
																	
													<p>Meals : Breakfast, Dinner</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 6											
											:</b> Venice										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Breakfast. Take a transfer to the Airport.															   
												<div class="mt10px">
												
																	
													<p>Meals : Breakfast</p> 
																									</div>	
															
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																				<li>Accommodation for 03 nights in Switzerland</li><li>
Accommodation for 01 night in Innsbruck</li><li>
Accommodation for 01 night in Venice</li><li>
Orientation tour of Interlaken, Lucerne, Vaduz & Innsbruck</li><li>
Orientation Guided Tour of Venice</li><li>
Zurich Mt. Titlis</li><li>
Wattens Swarovski Museum</li><li>
Venice Vaporetto ride</li><li>
05 Breakfast and 05 Veg / Non Veg / Jain Dinners at Indian Restaurant</li><li>
Hindi / English speaking Tour Leader / Manager</li><li>
Coach transfer throughout the tour.</li><li>
Airport Pickup & Drop. (Before 10 am and after 7 pm client will have to manage transfer there own)</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Air Tickets</li><li>
Visa and Insurance</li><li>
Extra charges/expenses of personal nature like laundry, mineral water/drinks, telephone or any other charges/ expenses not mentioned in Inclusions Optional Tours</li><li>
Mandatory tips of Euro 3 per person per day for Coach drivers, Guides etc.</li><li>
Cost for Ticket + Visa + Insurance, 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. 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 “Tour Cost Includes”, Overseas Mediclaim, </li><li>
Tips to Driver: EURO 2 per pax per day (Compulsory)</li><li>
Vouchers are not transferable and valid only for the services mentioned therein. Any services not specifically requested, confirmedand noted on vouchers will not be rendered. All extras to be paid directly to the hotels / the service providers.</li><li>
Passenger Comments / Complaints :</li><li>
It is imperative that any complaints be made known to the respective handling agents or its representatives without any delay so that appropriate action can be taken.</li></ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Specific Departure Dates</p>
								</div>
								
								Departure Dates: Apr 13, 20, 27(Sold Out) | May 04, 11, 18, 25(Sold Out) | June 01, 05, 08, 12, 15, 19, 22, 26, 29(Sold Out) |								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Rate Card</p>
								</div>
								
    	<p class="h dif xlarge b mb5px">TOUR PRICE</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Adult Cost on Twin / Double / Triple</td>
				<td class="headHr p5px b">INR 67900</td>
			</tr>
			<tr>
				<td class="data p5px">Single Supplement</td>
				<td class="data p5px">INR 26000</td>
			</tr>
			<tr>
				<td class="data p5px">Child with Bed (3 - 11Years)</td>
				<td class="data p5px">INR 58000</td>
			</tr>
			<tr>
				<td class="data p5px">Child without Bed (3 - 11Years)</td>
				<td class="data p5px">INR 37000</td>
			</tr>
			<tr>
				<td class="data p5px">Infant (0 - 2 Years) No seat in coach</td>
				<td class="data p5px">INR 12000</td>
			</tr>
		</table></div><br>								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.</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>67999</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 							<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
						
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date.</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sribalajioverseassolutions.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Swiss to Venice 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="159231"/>
						</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.sribalajioverseassolutions.com/packages-in-interlaken.htm" title="Packages in Interlaken">Interlaken</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-lucerne.htm" title="Packages in Lucerne">Lucerne</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-paris.htm" title="Packages in Paris">Paris</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-zurich.htm" title="Packages in Zurich">Zurich</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-vaduz.htm" title="Packages in Vaduz">Vaduz</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-innsbruck.htm" title="Packages in Innsbruck">Innsbruck</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-venice.htm" title="Packages in Venice">Venice</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-wattens.htm" title="Packages in Wattens">Wattens</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-rome.htm" title="Packages in Rome">Rome</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/packages-in-port-louis.htm" title="Packages in Port Louis">Port Louis</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.sribalajioverseassolutions.com/packages-in-florence.htm" title="Packages in Florence">Florence</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.sribalajioverseassolutions.com/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</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.sribalajioverseassolutions.com/packages-in-pisa.htm" title="Packages in Pisa">Pisa</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.sribalajioverseassolutions.com/packages-in-male.htm" title="Packages in Male">Male</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.sribalajioverseassolutions.com/packages-in-london.htm" title="Packages in London">London</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.sribalajioverseassolutions.com/packages-in-havelock.htm" title="Packages in Havelock">Havelock</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 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.sribalajioverseassolutions.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/romantic-holidays-catid.htm" title="Romantic Packages">Romantic</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/family-holidays-catid.htm" title="Family Packages">Family</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajioverseassolutions.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 "><a class="dif" href="http://www.sribalajioverseassolutions.com/valley-holidays-catid.htm" title="Valley Packages">Valley</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 Venice, Innsbruck, Wattens, Zurich, Interlaken, Lucerne, Vaduz</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.sribalajioverseassolutions.com/tour-packages/paristo-rome-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/267689/243812.jpg"  height="100"  width="100"    alt="Paris to Rome Tour" title="Paris to Rome Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.sribalajioverseassolutions.com/tour-packages/paristo-rome-tour.htm" title="Paris to Rome Tour"><h3>Paris To Rome Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 99900</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								9 Nights / 10 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Paris, Venice, Florence, Innsbruck, Rome..</p>
															<div class="mt10px small">
							<form name="pkg_159234" id="pkg_159234" method="post" action="http://www.sribalajioverseassolutions.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.sribalajioverseassolutions.com/tour-packages/paristo-rome-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Paris to Rome 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="159234"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.sribalajioverseassolutions.com/tour-packages/switzerland-panorama-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/267689/245664.jpg"  height="100"  width="100"    alt="Switzerland Panorama Tour" title="Switzerland Panorama Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.sribalajioverseassolutions.com/tour-packages/switzerland-panorama-tour.htm" title="Switzerland Panorama Tour"><h3>Switzerland Panorama 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> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Interlaken, Jungfraujoch</p>
															<div class="mt10px small">
							<form name="pkg_160663" id="pkg_160663" method="post" action="http://www.sribalajioverseassolutions.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.sribalajioverseassolutions.com/tour-packages/switzerland-panorama-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Switzerland Panorama 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="160663"/>
							</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:59:"Book Swiss to Venice Tour - 5 Nights / 6 Days Tour Packages";i:2;s:162:"book swiss to venice tour - 5 nights / 6 days tour packages, adventure tour packages, venice, innsbruck, wattens, zurich, interlaken, lucerne, vaduz tour packages";i:3;s:197:"Sribalaji Overseas offers Swiss to Venice Tour - 5 Nights / 6 Days tour package, budget Adventure tour packages for Venice, Innsbruck, Wattens, Zurich, Interlaken, Lucerne, Vaduz at exciting price.";i:4;s:2195:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Venice, Innsbruck, Wattens, Zurich, Interlaken, Lucerne, Vaduz"        
		                 },
		      "description": "Destination Covered: Zurich, Lucerne, Interlaken, Vaduz, Innsbruck, Wattens, Venice

Inclusions: As per destinations in main itinerary

OPTIONAL TOURS
Zurich: Mt. Jungfrau - Top of Europe € 149 PP
Venice: Gondola Ride 30mins, min 6 Pax € 100 PPAir Tickets

Visa and Insurance

Extra charges/expenses of personal nature like laundry, mineral water/drinks, telephone or any other charges/ expenses not mentioned in Inclusions Optional Tours

Mandatory tips of Euro 3 per person per day for Coach drivers, Guides etc.

Cost for Ticket + Visa + Insurance, 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. 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 “Tour Cost Includes”, Overseas Mediclaim, 

Tips to Driver: EURO 2 per pax per day (Compulsory)
Vouchers are not transferable and valid only for the services mentioned therein. Any services not specifically requested, confirmedand noted on vouchers will not be rendered. All extras to be paid directly to the hotels / the service providers.
Passenger Comments / Complaints :
It is imperative that any complaints be made known to the respective handling agents or its representatives without any delay so that appropriate action can be taken.",
		      "name": "Swiss to Venice Tour",
		      "telephone": "+91-9214018900"
		    }
		    </script>
			";i:5;N;}