a:6:{i:0;s:47923:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>European Delights Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.bhramandeshvidesh.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.bhramandeshvidesh.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> European Delights 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 dt w100"> 
					<div class="dtc vat ttw-detail pr20px pr">					
												<ul class="lsn gallery-slide" id="bxlider_ins">
																	<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106259.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106259.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106259.jpg"  alt="European Delights Tour" title="European Delights Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106260.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106260.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106260.jpg"  alt="European Delights Tour" title="European Delights Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106261.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106261.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106261.jpg"  alt="European Delights Tour" title="European Delights Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																				<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106262.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106262.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106262.jpg"  alt="European Delights Tour" title="European Delights Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																	</ul>
							
							<ul class="lsn" id="bxslider-pager"><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106259.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106260.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106261.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106262.jpg"></a></li></ul>					
					<script>
					var $j = jQuery.noConflict();
					var realSlider= $j("ul#bxlider_ins").bxSlider({
					      speed:500,
					      pager:false,
					      auto: true,
					      slideWidth: 450,
					      slideMargin: 0,
					      nextText:'',
					      prevText:'',
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					        changeRealThumb(realThumbSlider,newIndex);
					        
					      }
					      
					    });
					    
					    var realThumbSlider=$j("ul#bxslider-pager").bxSlider({
					      minSlides: 4,
					      maxSlides: 4,
					      slideWidth: 200,
					      slideMargin: 5,
					      moveSlides: 1,
					      pager:false,
					      speed:1000,
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      nextText:'<span></span>',
					      prevText:'<span></span>',
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					
					      }
					    });
					    
					    linkRealSliders(realSlider,realThumbSlider);
					    
					    if($j("#bxslider-pager li").length<5){
					      $j("#bxslider-pager .bx-next").hide();
					    }
					
					// sincronizza sliders realizzazioni
					function linkRealSliders(bigS,thumbS){
					  
					  $j("ul#bxslider-pager").on("click","a",function(event){
					    event.preventDefault();
					    var newIndex=$j(this).parent().attr("data-slideIndex");
					        bigS.goToSlide(newIndex);
					  });
					}
					
					//slider!=$thumbSlider. slider is the realslider
					function changeRealThumb(slider,newIndex){
					  
					  var $thumbS=$j("#bxslider-pager");
					  $thumbS.find('.active').removeClass("active");
					  $thumbS.find('li[data-slideIndex="'+newIndex+'"]').addClass("active");
					  
					  if(slider.getSlideCount()-newIndex>=4)slider.goToSlide(newIndex);
					  else slider.goToSlide(slider.getSlideCount()-4);
					
					}
					
					</script>
					</div>
			        <div class="dtc">
			        <p class="b xlarge mb10px">European Delights Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						8 Nights / 9 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> London, Paris, Bern</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px">Price</p>
						<p class="xxsmall">On Request</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="European Delights Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px ts0 xxlarge dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="55331"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">A complete tour at an honest price with maximum quality sightseeing and minimum travelling time.<br />
Hot delicious unlimited Indian Jain / vegetarian / non-vegetarian meals included.<br />
Enjoy daily Continental buffet breakfast.<br />
A relaxed tour with ample time for shopping.<br />
Visit 03 countries in 10 days: UK, France and Switzerland.<br />
Stay two days in London with all meals included.<br />
Guided city tour of London.<br />
Visit Madame Tussaud?s wax museum.<br />
Ride on the London Eye.<br />
Guided city tour of Paris<br />
Visit the 02nd level of the Eiffel Tower.<br />
Chance to see the extravagant Lido Show.<br />
Re-live your childhood at Euro Disney.<br />
Romantic cruise on river Seine<br />
Guided city tour of Dijon<br />
Orientation tour of Zurich.<br />
Chance to cherish an experience to be on top of Europe - Jungfraujoch<br />
Visit Mt. Titlis in the world?s first revolving cable car.<br />
See the Lion Monument and the Kapell Brucke Bridge in Lucerne.<br />
Professional, friendly, multilingual and experienced Indian Tour Managers travelling with you throughout your tour in Europe.If you wish to travel in advance i.e., before the published departure date as mentioned in the brochure or like to come back on a later date after the tour ends, there will be an additional charge that will be applicable (subject to availability of seats for the given dates & ticket validity) which will be advised to you by our sales staff / travel agent. Kindly note, the deviation will be actioned only 30 days prior to departure date.<br />
In case your tour is not ending in United Kingdom and you wish to return from London or any other city in the United Kingdom, the UK departure tax will be advised on confirmation of the deviation date.<br />
Cost of Basic Travel Quota equivalent to USD 10,000.<br />
Any increase in the airfare charged by the airline on your air ticket (presently calculated as of 1ST October, 2015 rates).<br />
The tour cost does not include POE charges and passport charges.<br />
No porterage included.<br />
Tips to coach drivers and local guides are not included.<br />
Taxes as applicable.<br />
Any expenses of personal nature such as porterage, laundry expenses, wines, mineral water, food and drink not in the regular menu provided by us, minibar, telephone calls etc.<br />
Meals other than that what is mentioned in your itinerary.<br />
Cost of excursions, city sightseeing, entrance fees and local guides availed of by the passengers, other than that mentioned in - What your tour price includes?.<br />
Cost of Jungfraujoch and Interlaken with lunch and Lido Show.13-0424-09</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> Arrive into London, Capital of United Kingdom.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Bon voyage! Today you are off on your exciting European tour as you board your flight to London. On arrival at London airport you will be greeted by your friendly Thomas Cook Tour Manager. We shall then proceed to the hotel and check-in first. Freshen up and relax in the comfort of your hotel room. Tonight, enjoy a delicious Indian dinner at an Indian restaurant.<br />
Overnight at Hotel Premier Inn / Park Inn / Quality or similar in London.															
														   
											</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> Enjoy the many sights of London on your guided tour. Visit the world – renowned Madame Tussaud’s										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a buffet continental breakfast, we leave for a guided city tour with an expert English speaking guide who will explain to you all the highlights of London‟s landmarks: the Buckingham Palace, Hyde Park, and the Big Ben, Westminster Abbey, Houses of Parliament, Trafalgar Square, Piccadilly Circus, Tower Bridge, River Thames and many more. Relish a hot Indian meal for lunch. We then take you to visit the famous Madame Tussaud‟s wax museum. Next, we take you on the famous London Eye - one of the world‟s largest observation wheels. After a nostalgic evening at the London Eye proceed to the restaurant where a delicious Indian dinner awaits you.<br />
Overnight at Hotel Premier Inn / Park Inn / Quality or similar in London.			
														   
											</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> Bien Venue! Welcome to the glamour capital of the world - Paris known for fashion houses, art museum										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Check out of your hotel after a continental buffet / boxed breakfast and proceed by Le Shuttle / Ferry to the glamorous city of Paris. Packed Indian lunch will be provided. On arrival in Paris, Enjoy some free time in the city and get the real feel of the city. Later in the evening, a hot Indian dinner awaits you at an Indian restaurant. Next we proceed to the hotel and check-in.<br />
Overnight at Hotel Novotel / Forest Hill or similar in Paris.			
														   
											</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> Enjoy the sights of Paris on a guided city tour. Today, join us on a breathtaking view of Paris from										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a continental buffet breakfast at the hotel, we proceed for city tour with an English – speaking local guide, who will show you many of the best – loved Parisian sights – Alexander Bridge, Arc de Triomphe, Concorde Square.Post that proceed to visit the top of the Eiffel Tower (02nd level). Later join us for some fun, adventure and entertainment on our tour to Disney Park and enjoy the many rides (all included) OR you can visit the Disney Studios and be amazed by the stunning stunt shows, watch a film being made and see real-life sets where famous movies were created. Packed Indian lunch will be provided. Tonight, you have a chance to experience the glamour of the famous Lido Show - an unforgettable experience on your tour. Tonight, enjoy hot Indian dinner at the restaurant.<br />
Overnight at Hotel Novotel / Forest Hill or similar in Paris			
														   
											</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> Romantic Cruise on river Seine. Proceed to Dijon.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a continental buffet breakfast at your hotel, proceed to the pier and board your cruise on the river Seine. Get the feel of the city as we sail past few of the most beautiful and important monuments of the city. Enjoy a delicious Indian Lunch. Post that proceed to the beautiful town of Dijon. Upon arrival, dinner at an Indian restaurant.<br />
Overnight at Hotel Ibis or similar in Dijon.			
														   
											</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> Guided city tour of Dijon. Proceed to Switzerland.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning, after a continental buffet breakfast, check out and proceed to Guided city tour of Dijon. Enjiy the scenic tour of this beautiful French Town along with the Expert English speaking Guide. See the famous Dijon cathedral, Place of the Dukes of Burgundy, The Notre Dam Church of Dijon and many more sightseeings of this beautiful town. Enjoy hot Indian Lunch. Post that proceed to scenis Switzerland. Enjoy the breathtaking view during your ride to this beautiful countryside. Upon arrival enjoy Hot Indian Dinner and check in to the hotel.<br />
Overnight at Hotel Holiday Inn Express / Park Inn / Swiss Star / Arcade/ Movenpick or similar in Central Switzerland.			
														   
											</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 7											
											:</b> Day free or you have a chance to join us on an unforgettable Alpine excursion tour to the wonderful										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												This morning, after a continental buffet breakfast at your hotel, the day is at leisure or you can get ready for an adventurous ride to visit Jungfraujoch - the Top of Europe, for a memorable encounter with snow and ice - a genuine „high-point‟ of your tour! You will be amazed at the scenic splendour that you see from aboard the „cog-wheel‟ train, which takes you to a height of 3,454 metres to reach Jungfraujoch! Today, you have a choice of an<br />
Indian meal for lunch with champagne specially arranged for you on top of Jungfraujoch. Later, we visit Interlaken, a charming city nestled between two lakes and surrounded by the splendid Bernese Oberland Mountains. Treasure these wonderful moments as you drive back to your hotel. This evening enjoy Indian dinner enroute to the hotel.<br />
Overnight at Hotel Holiday Inn Express / Park Inn / Swiss Star / Arcade/ Movenpick or similar in Central Switzerland.			
														   
											</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 8											
											:</b> Today, get set for a day full of fun and excitement as we take you to visit Mt. Titlis with its beau										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a continental buffet breakfast at your hotel, we take you on one of the most memorable experiences of your Europe tour – visiting Mt. Titlis and Lucerne. Adventure awaits you in an ALL NEW cable-car ride up to Mt. Titlis. Witness the world‟s first revolving cable-car ride, a truly once-in-a Life time experience. Remain spellbound as you ascend the snow-clad mountains. Experience the snow and ice on top of Mt. Titlis. At 3,020 metres a breathtaking<br />
panorama unfolds. Do not forget to visit the new attraction “Cliff Walk”. Later we proceed to scenic Lucerne. Enjoy a delicious Indian lunch on arrival. Next, you will visit the Lion Monument and the Kapell Brucke (wooden. bridge). Here you will also have some free time to shop for famous Swiss watches, knives and chocolates. Tonight, after a delicious Indian dinner return back to your hotel.<br />
Overnight at Hotel Holiday Inn Express / Park Inn / Swiss Star / Arcade/ Movenpick or similar in Central Switzerland.			
														   
											</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 9											
											:</b> Fly back home.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a continental buffet / boxed breakfast, we check out and proceed to the airport for your flight back home. Arrive home with pleasant memories of your European tour, which we are sure you will treasure for a lifetime. Do spare a few minutes to fill in the feedback form and hand it to your Tour Manager. Your valued suggestions will be most appreciated.			
														   
											</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>Transfers</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>If you wish to travel in advance i.e., before the published departure date as mentioned in the brochure or like to come back on a later date after the tour ends, there will be an additional charge that will be applicable (subject to availability of seats for the given dates & ticket validity) which will be advised to you by our sales staff / travel agent. Kindly note, the deviation will be actioned only 30 days prior to departure date.</li><li>
In case your tour is not ending in United Kingdom and you wish to return from London or any other city in the United Kingdom, the UK departure tax will be advised on confirmation of the deviation date.</li><li>
Cost of Basic Travel Quota equivalent to USD 10,000.</li><li>
Any increase in the airfare charged by the airline on your air ticket (presently calculated as of 1ST October, 2015 rates).</li><li>
The tour cost does not include POE charges and passport charges.</li><li>
No porterage included.</li><li>
Tips to coach drivers and local guides are not included.</li><li>
Taxes as applicable.</li><li>
Any expenses of personal nature such as porterage, laundry expenses, wines, mineral water, food and drink not in the regular menu provided by us, minibar, telephone calls etc.</li><li>
Meals other than that what is mentioned in your itinerary.</li><li>
Cost of excursions, city sightseeing, entrance fees and local guides availed of by the passengers, other than that mentioned in - What your tour price includes?.</li><li>
Cost of Jungfraujoch and Interlaken with lunch and Lido Show.</li></ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Specific Departure Dates</p>
								</div>
								
								April : 13, 30<br />
May : 2, 4, 7, 9, 11, 14, 18, 21, 28<br />
June : 1, 4, 8, 11, 15, 18, 22, 25, 29<br />
July : 4, 11, 18, 25<br />
August : 3, 10, 17, 24, 31<br />
September : 3, 10, 17, 24								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Departure Cities with rates</p>
								</div>
								Ex-Mumbai / Delhi / Chennai / Hyderabad / Bangalore /
Ahmedabad / Kolkata								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<ul>
	<li><strong>Pls note this is just a quotation, rates and availability subject to change<u>.</u> </strong></li>
	<li><strong><u>3.65 % Service Tax will be applicable on Package Cost</u></strong></li>
	<li>Note that the above rates are subject to Availability at the time of Booking.</li>
	<li>No Rooms or Services have been blocked</li>
	<li>Check all inclusions as any additions will occur in extra charges.</li>
	<li>Rates are based on the requested dates</li>
	<li>Current rate of exchange will be applicable at the time of final payment</li>
</ul>								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="European Delights 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="55331"/>
						</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.bhramandeshvidesh.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-faridabad.htm" title="Packages in Faridabad">Faridabad</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.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.bhramandeshvidesh.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-london.htm" title="Packages in London">London</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-bern.htm" title="Packages in Bern">Bern</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-haridwar.htm" title="Packages in Haridwar">Haridwar</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-berlin.htm" title="Packages in Berlin">Berlin</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-rishikesh.htm" title="Packages in Rishikesh">Rishikesh</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-vienna.htm" title="Packages in Vienna">Vienna</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-rome.htm" title="Packages in Rome">Rome</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-amsterdam.htm" title="Packages in Amsterdam">Amsterdam</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-brussels.htm" title="Packages in Brussels">Brussels</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-kufri.htm" title="Packages in Kufri">Kufri</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-kullu.htm" title="Packages in Kullu">Kullu</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.bhramandeshvidesh.com/packages-in-dharamshala.htm" title="Packages in Dharamshala">Dharamshala</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.bhramandeshvidesh.com/packages-in-palampur.htm" title="Packages in Palampur">Palampur</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.bhramandeshvidesh.com/packages-in-nainital.htm" title="Packages in Nainital">Nainital</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.bhramandeshvidesh.com/packages-in-mussoorie.htm" title="Packages in Mussoorie">Mussoorie</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.bhramandeshvidesh.com/packages-in-dehradun.htm" title="Packages in Dehradun">Dehradun</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.bhramandeshvidesh.com/packages-in-kandy.htm" title="Packages in Kandy">Kandy</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.bhramandeshvidesh.com/packages-in-prague.htm" title="Packages in Prague">Prague</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.bhramandeshvidesh.com/packages-in-nuwara-eliya.htm" title="Packages in Nuwara Eliya">Nuwara Eliya</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.bhramandeshvidesh.com/packages-in-colombo.htm" title="Packages in Colombo">Colombo</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.bhramandeshvidesh.com/packages-in-budapest.htm" title="Packages in Budapest">Budapest</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.bhramandeshvidesh.com/packages-in-vaduz.htm" title="Packages in Vaduz">Vaduz</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bhramandeshvidesh.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</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.bhramandeshvidesh.com/packages-in-baramulla.htm" title="Packages in Baramulla">Baramulla</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.bhramandeshvidesh.com/packages-in-dalhousie.htm" title="Packages in Dalhousie">Dalhousie</a> <b class="alpha50 bn small">(2)</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.bhramandeshvidesh.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(27)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(17)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bhramandeshvidesh.com/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(1)</b></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, 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.bhramandeshvidesh.com/tour-packages/european-royale-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106337.jpg"  alt="European Royale Tour" title="European Royale Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bhramandeshvidesh.com/tour-packages/european-royale-tour.htm" title="European Royale Tour"><h3>European Royale 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> : 
								17 Nights / 18 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Brussels, Amsterdam, Rome..</p>
															<div class="mt10px small">
							<form name="pkg_55398" id="pkg_55398" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bhramandeshvidesh.com/tour-packages/european-royale-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="European Royale 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="55398"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bhramandeshvidesh.com/tour-packages/europe-for-all-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106252.jpg"  alt="Europe For All Tour" title="Europe For All Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bhramandeshvidesh.com/tour-packages/europe-for-all-tour.htm" title="Europe For All Tour"><h3>Europe For All 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> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Paris, Brussels, Bern</p>
															<div class="mt10px small">
							<form name="pkg_55330" id="pkg_55330" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bhramandeshvidesh.com/tour-packages/europe-for-all-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Europe For All 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="55330"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bhramandeshvidesh.com/tour-packages/dilkash-europe-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106237.jpg"  alt="Dilkash Europe Tour" title="Dilkash Europe Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bhramandeshvidesh.com/tour-packages/dilkash-europe-tour.htm" title="Dilkash Europe Tour"><h3>Dilkash Europe Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								10 Nights / 11 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Rome, Bern</p>
															<div class="mt10px small">
							<form name="pkg_55319" id="pkg_55319" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bhramandeshvidesh.com/tour-packages/dilkash-europe-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Dilkash 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="55319"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bhramandeshvidesh.com/tour-packages/european-grandeur-with-scottish-highlights-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106317.jpg"  alt="European Grandeur with Scottish Highlights Tour" title="European Grandeur with Scottish Highlights Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bhramandeshvidesh.com/tour-packages/european-grandeur-with-scottish-highlights-tour.htm" title="European Grandeur with Scottish Highlights Tour"><h3>European Grandeur With Scottish Highlights..</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> : 
								20 Nights / 21 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Berlin, Amsterdam, Rome, ..</p>
															<div class="mt10px small">
							<form name="pkg_55380" id="pkg_55380" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bhramandeshvidesh.com/tour-packages/european-grandeur-with-scottish-highlights-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="European Grandeur with Scottish Highlights 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="55380"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bhramandeshvidesh.com/tour-packages/bestof-europe-tour1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106229.jpg"  alt="Best of Europe Tour" title="Best of Europe Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bhramandeshvidesh.com/tour-packages/bestof-europe-tour1.htm" title="Best of Europe Tour"><h3>Best Of Europe Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								10 Nights / 11 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Berlin, Brussels, Amsterd..</p>
															<div class="mt10px small">
							<form name="pkg_55317" id="pkg_55317" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bhramandeshvidesh.com/tour-packages/bestof-europe-tour1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Best of 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="55317"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bhramandeshvidesh.com/tour-packages/european-extravaganza-reverse-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/350588/106305.jpg"  alt="European Extravaganza Reverse Tour" title="European Extravaganza Reverse Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bhramandeshvidesh.com/tour-packages/european-extravaganza-reverse-tour.htm" title="European Extravaganza Reverse Tour"><h3>European Extravaganza Reverse 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> : 
								14 Nights / 15 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  London, Paris, Berlin, Brussels, Amsterd..</p>
															<div class="mt10px small">
							<form name="pkg_55368" id="pkg_55368" method="post" action="http://www.bhramandeshvidesh.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bhramandeshvidesh.com/tour-packages/european-extravaganza-reverse-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="European Extravaganza Reverse 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="55368"/>
							</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:61:"Book European Delights Tour - 8 Nights / 9 Days Tour Packages";i:2;s:129:"book european delights tour - 8 nights / 9 days tour packages, forts and palaces tour packages, london, paris, bern tour packages";i:3;s:171:"Bhraman Tours and Travels offers European Delights Tour - 8 Nights / 9 Days tour package, budget Forts and Palaces tour packages for London, Paris, Bern at exciting price.";i:4;s:2907:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "London, Paris, Bern"        
		                 },
		      "description": "A complete tour at an honest price with maximum quality sightseeing and minimum travelling time.
Hot delicious unlimited Indian Jain / vegetarian / non-vegetarian meals included.
Enjoy daily Continental buffet breakfast.
A relaxed tour with ample time for shopping.
Visit 03 countries in 10 days: UK, France and Switzerland.
Stay two days in London with all meals included.
Guided city tour of London.
Visit Madame Tussaud?s wax museum.
Ride on the London Eye.
Guided city tour of Paris
Visit the 02nd level of the Eiffel Tower.
Chance to see the extravagant Lido Show.
Re-live your childhood at Euro Disney.
Romantic cruise on river Seine
Guided city tour of Dijon
Orientation tour of Zurich.
Chance to cherish an experience to be on top of Europe - Jungfraujoch
Visit Mt. Titlis in the world?s first revolving cable car.
See the Lion Monument and the Kapell Brucke Bridge in Lucerne.
Professional, friendly, multilingual and experienced Indian Tour Managers travelling with you throughout your tour in Europe.If you wish to travel in advance i.e., before the published departure date as mentioned in the brochure or like to come back on a later date after the tour ends, there will be an additional charge that will be applicable (subject to availability of seats for the given dates & ticket validity) which will be advised to you by our sales staff / travel agent. Kindly note, the deviation will be actioned only 30 days prior to departure date.
In case your tour is not ending in United Kingdom and you wish to return from London or any other city in the United Kingdom, the UK departure tax will be advised on confirmation of the deviation date.
Cost of Basic Travel Quota equivalent to USD 10,000.
Any increase in the airfare charged by the airline on your air ticket (presently calculated as of 1ST October, 2015 rates).
The tour cost does not include POE charges and passport charges.
No porterage included.
Tips to coach drivers and local guides are not included.
Taxes as applicable.
Any expenses of personal nature such as porterage, laundry expenses, wines, mineral water, food and drink not in the regular menu provided by us, minibar, telephone calls etc.
Meals other than that what is mentioned in your itinerary.
Cost of excursions, city sightseeing, entrance fees and local guides availed of by the passengers, other than that mentioned in - What your tour price includes?.
Cost of Jungfraujoch and Interlaken with lunch and Lido Show.13-0424-09",
		      "name": "European Delights Tour",
		      "telephone": "+91-9711158456"
		    }
		    </script>
			";i:5;N;}