a:6:{i:0;s:36143:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>7 NIGHTS/8 DAYS EASTERN EUROPE TOUR</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.cloud09holidays.co.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.cloud09holidays.co.in/travel-packages.htm" title="Packages">Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> 7 NIGHTS/8 DAYS EASTERN EUROPE 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_17/503996/296664.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_17/503996/296664.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/503996/296664.jpg"  alt="7 NIGHTS/8 DAYS EASTERN EUROPE TOUR" title="7 NIGHTS/8 DAYS EASTERN EUROPE 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_17/503996/296665.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_17/503996/296665.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/503996/296665.jpg"  alt="7 NIGHTS/8 DAYS EASTERN EUROPE TOUR" title="7 NIGHTS/8 DAYS EASTERN EUROPE 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_17/503996/296664.jpg"></a></li><li data-slideIndex=""><a href=""><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/503996/296665.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">7 NIGHTS/8 DAYS EASTERN EUROPE TOUR</p>
					
											<p class="mb5px"><b>Duration :</b> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Bratislava, Prague, Karlovy, Vienna, Salzburg</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.cloud09holidays.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="7 NIGHTS/8 DAYS EASTERN EUROPE 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="189101"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">HIGHLIGHTS: <br />
<br />
07 Nights’ accommodation with Breakfast at 3 star properties<br />
07 Dinners at Indian restaurant<br />
Services of Professional Experienced Indian Tour Manager<br />
<br />
PRAGUE: 		City tour of Prague<br />
Day Excursion to Karlovy Vary<br />
Visit to Cesky Krumlov<br />
<br />
SALZBURG: 		Orientation Tour of Salzburg<br />
<br />
VIENNA: 		Orientation Tour of Vienna <br />
			Visit Schonbrunn Palace<br />
<br />
BRATISLAVA:	Orientation Tour of Bratislava <br />
<br />
BUDAPEST:		Orientation Tour of Budapest</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> Prague Arrival, City Tour										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												We welcome you to the magnificent continent of Europe. Our Tour Manager will meet you at the arrivals hall after immigration.Welcome to the city of Prague. It is one of the largest cities of Central Europe and has served as the capital of the historic region of Bohemia for centuries.The city has a rich architectural heritage that reflects both the uncertain currents of history in Bohemia and an urban life extending back more than 1,000 years.<br />
Later, we proceed for a city tour. You will see some of the cultural treasures of this historic city, including the Old Town, the original heart of the city, with sights such as the Powder Gate and the Old Town Hall. Visit the Castle District (outside guiding) and later enjoy time at leisure to visit the Golden Lane, that was named after the goldsmiths who lived there in the 17th century or stroll through the narrow streets of the city center. In the evening enjoy the czechian local kitchen at a typical czech restaurant! Don´t forget to try the traditional beer, it is delicious!Enjoy a comfortable overnight stay at the hotel. <br />
Meals:  Dinner															
														   
											</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> Day Excursion to Karlovy Vary										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast,we proceed for a day excursion to Karlovy Vary. Discover Karlovy Vary (Carlsbad), one of the most captivating spa towns in Europe. This popular west Bohemia spa town sometimes referred to as Carlsbad or Karlsbad is noted for its 13 curative thermal springs and approximately 300 smaller springs. Take a stroll along its elegant colonnades. Taste its hot mineral springs. The Moser Glassworks are sure to amaze as you see how the world famous Bohemia crystal is made. There will be also enough time for a traditional Czech lunch, souvenir shopping or spa treatment in the mineral water of this stunning town.Enjoy a comfortable overnight stay at the hotel.<br />
Meals: Breakfast and Dinner			
														   
											</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> Visit to Cesky Krumlov, Onto Salzburg										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast we proceed to visit Cesky Krumlov. Český Krumlov, in Bohemia’s deep south, is one of the most picturesque towns in Europe. It’s a little like Prague in miniature – a Unesco World Heritage Site with a stunning castle above the Vltava River, an old town square, Renaissance and baroque architecture, and hordes of tourists milling through the <br />
streets – but all on a smaller scale; you can walk from one side of town to the other in 20 minutes. There are plenty of lively bars and riverside picnic spots – in summer it’s a popular hang-out for backpackers. It can be a magical place in winter, though, when the crowds are gone and the castle is blanketed in snow.<br />
We continue our journey to Salzburg. Enjoy a comfortable overnight stay at the hotel.<br />
Meals: Breakfast and Dinner			
														   
											</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> Orientation tour of Salzburg, Onto Vienna										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast we proceed to an Orientation tour of Salzburg. For centuries, Prince Archbishops represented the worldly and clerical power in this independent principality. Impressive monuments still bear witness to their rein. Renowned architects and artists worked through the centuries to create architectural masterpieces. Get to know Salzburg with it's Gothic, Renaissance and Baroque elements. Continue your journey to Vienna, the capital city of Austria & its cultural, economic and political centre. Few cities in the world glide so effortlessly between the present and the past like Vienna. Its splendid historical face is easily recognized: grand imperial palaces and bombastic baroque interiors, museums flanking magnificent squares and, above all, the Hofburg – where the Habsburg rulers lived, loved and married into empires. The capital scores highly thanks to the first-rate musical and cultural attractions at its concert halls, museums and theaters - from the Golden Hall of the Musikverein to the acclaimed Museum of Fine Arts and the State Opera House. Vienna is also a byword for epicurean enjoyment, with centuries of traditions shaping its coffee houses and Heuriger wine taverns.& enjoy a comfortable overnight stay at the hotel.<br />
Meals: Breakfast and Dinner			
														   
											</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> Vienna - city tour & visit to Schonnbrunn Palace										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast today, we begin our city tour with the most significant sights of Vienna. Along the Ringstrasse we see magnificent buildings, such as the MAK, the State Opera House, the Museum of Fine Arts and the Natural History Museum, the cultural district the Museums Quartier, the former Habsburg winter residence, the Hofburg, the Parliament, the City Hall and the Burgtheater. Later visit the Schonbrunn Palace which was the summer residence of the Austrian Emperors for nearly 150 years. It was built between 1695 and 1749 with over 100 rooms and beautiful gardens. Enjoy a comfortable overnight stay at the hotel. <br />
Meals: Breakfast and Dinner			
														   
											</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> Bratislava Orientation tour - Onto Budapest										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast today, we proceed to Bratislava - the capital of Slovakia. It is also the political, cultural and economic centre of Slovakia. Bratislava is neatly divided by the Danube River. On the north bank are the less attractive high-rise blocks erected under Communist occupation (1968-89). On the north bank is the comparatively tiny but beautifully restored historic quarter of the Old Town (Stare Mesto), now devoted almost entirely to tourism.<br />
Bratislava Old Town, much of which is pedestrianised, is characterized by its charming Hapsburg baroque architecture, including many former palaces. Hlavne Square sits at its heart, containing the Old City Hall, and parallel, running north to south, the old Michalska and Venturska streets lead past a number of historical sites. The town has a rich musical pedigree and includes the childhood performance venues of Mozart and Franz Liszt. Zelená Ulica runs off Michalska and is one of the narrowest streets in the city, home to Academia Istropolitana, the first university in the Hungarian Kingdom. Don't miss a stroll along the charming pedestrian promenade which begins at the National Theatre with its statuary, fountains and many cafés. At the other end of the Old Town is St Martin's Cathedral, which hosted the coronation of exiled Hungarian kings during the period when most of Hungary was under Ottoman rule. The city also boasts a number of copper-domed churches, palaces, and, just outside the walls, the dominant landmark of Bratislava Castle. Later, we proceed to the hotel for a comfortable overnight stay. <br />
Meals: Breakfast and Dinner			
														   
											</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> Orientation Tour of Budapest										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast, we proceed to we proceed to Budapest, which is Hungary’s principal political, cultural, commercial, industrial, and transportation centre. With green filled parks full of charming pleasures, museums that will inspire, and a pulsating nightlife that is on par with its European counterparts, Budapest is one of Europe's most delightful and enjoyable cities. Thanks to the perfect location, inhabitants' hospitality and memorable monuments it is mentioned as "Little Paris of Central Europe" and "Pearl of Danube". On our city tour we see the Chain bridge, the Parliament (the most picturesque building of the city) and the Castle. We drive to the Gellert Hill (Citadel) for the amazing view of Budapest, after that – Central Market hall with the largest synagogue of Europe. We take a photo stop at Heroes square - one of the major squares of Budapest, rich with historic and political connotations. Its iconic statue complex, the Millennium Memorial, was completed in 1900, the same year the square was named "Heroes' Square". Enjoy a comfortable overnight stay at the hotel.<br />
Meals: Breakfast and Dinner			
														   
											</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> Departure										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After breakfast, we bid goodbye to Europe as we receive a transfer to the airport in time to board your flight back home. With an enriching experience of a lifetime, it’s time to takehome happy memories of the beautiful places visited, which you will treasure for a lifetime.<br />
Meals: Breakfast			
														   
											</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>EP (No Meal)</li>
																				<li>Airfare + Visas </li><li>
Remittance Euro 45 on total bill</li><li>
Mandatory tips of EUR 3 per person per day to be directly handed over on tour</li><li>
Porterage unless mentioned on offer sheet</li><li>
Any Supplements for un-social hours</li><li>
Insurance or Medical Cover for any passenger</li><li>
5% GST or Taxes of any nature as applicable</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Booking Amount	: INR 60000/- per person at the time of booking. </li><li>
Balance Payment	: 45 days prior to departure.</li></ul>						
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
						
						<ul><li>120 days and more before departure - 25% of total holiday cost</li><li>
90 days before departure - 30% of total holiday cost</li><li>
60 Days before departure - 75% of total holiday cost</li><li>
30 Days before departure - 100% of total holiday cost</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.cloud09holidays.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="7 NIGHTS/8 DAYS EASTERN 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="189101"/>
						</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.cloud09holidays.co.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-kumarakom.htm" title="Packages in Kumarakom">Kumarakom</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-prague.htm" title="Packages in Prague">Prague</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-salzburg.htm" title="Packages in Salzburg">Salzburg</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-cape-town-tour.htm" title="Packages in Cape Town">Cape Town</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.cloud09holidays.co.in/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</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.cloud09holidays.co.in/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</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.cloud09holidays.co.in/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 spanlist dn"><a class="dif" href="http://www.cloud09holidays.co.in/packages-in-vienna.htm" title="Packages in Vienna">Vienna</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.cloud09holidays.co.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</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.cloud09holidays.co.in/packages-in-johannesburg-tours.htm" title="Packages in Johannesburg">Johannesburg</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.cloud09holidays.co.in/packages-in-thiruvananthapuram.htm" title="Packages in Thiruvananthapuram">Thiruvananthapuram</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.cloud09holidays.co.in/packages-in-kozhikode-calicut.htm" title="Packages in Kozhikode Calicut">Kozhikode Calicut</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.cloud09holidays.co.in/packages-in-dusseldorf.htm" title="Packages in Dusseldorf">Dusseldorf</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.cloud09holidays.co.in/packages-in-taupo.htm" title="Packages in Taupo">Taupo</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.cloud09holidays.co.in/packages-in-nice.htm" title="Packages in Nice">Nice</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.cloud09holidays.co.in/packages-in-lucerne.htm" title="Packages in Lucerne">Lucerne</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.cloud09holidays.co.in/packages-in-kollam.htm" title="Packages in Kollam">Kollam</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.cloud09holidays.co.in/packages-in-bali.htm" title="Packages in Bali">Bali</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.cloud09holidays.co.in/packages-in-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</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.cloud09holidays.co.in/packages-in-auckland.htm" title="Packages in Auckland">Auckland</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.cloud09holidays.co.in/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</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.cloud09holidays.co.in/packages-in-wellington.htm" title="Packages in Wellington">Wellington</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.cloud09holidays.co.in/packages-in-budapest.htm" title="Packages in Budapest">Budapest</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.cloud09holidays.co.in/packages-in-wayanad.htm" title="Packages in Wayanad">Wayanad</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.cloud09holidays.co.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/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.cloud09holidays.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/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.cloud09holidays.co.in/snorkeling-holidays-catid.htm" title="Snorkeling Packages">Snorkeling</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/scuba-diving-holidays-catid.htm" title="Scuba Diving Packages">Scuba Diving</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.cloud09holidays.co.in/sail-boats-holidays-catid.htm" title="Sail Boats Packages">Sail Boats</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.cloud09holidays.co.in/water-scooters-holidays-catid.htm" title="Water Scooters Packages">Water Scooters</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.cloud09holidays.co.in/parasailing-holidays-catid.htm" title="Parasailing Packages">Parasailing</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.cloud09holidays.co.in/biking-holidays-catid.htm" title="Biking Packages">Biking</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.cloud09holidays.co.in/water-skiing-holidays-catid.htm" title="Water Skiing Packages">Water Skiing</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.cloud09holidays.co.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</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.cloud09holidays.co.in/cruise-holidays-catid.htm" title="Cruise Packages">Cruise</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Bratislava, Prague, Karlovy, Vienna, Salzburg</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.cloud09holidays.co.in/tour-packages/europe-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/503996/191887.jpg"  alt="Europe Package" title="Europe Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.cloud09holidays.co.in/tour-packages/europe-package.htm" title="Europe Package"><h3>Europe Package</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> :  Paris, Munich, Dusseldorf, Brussels, Zur..</p>
															<div class="mt10px small">
							<form name="pkg_118330" id="pkg_118330" method="post" action="http://www.cloud09holidays.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.cloud09holidays.co.in/tour-packages/europe-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Europe Package - 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="118330"/>
							</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:74:"Book 7 NIGHTS/8 DAYS EASTERN EUROPE TOUR - 7 Nights / 8 Days Tour Packages";i:2;s:160:"book 7 nights/8 days eastern europe tour - 7 nights / 8 days tour packages, adventure tour packages, bratislava, prague, karlovy, vienna, salzburg tour packages";i:3;s:193:"Cloud09 Holidays offers 7 NIGHTS/8 DAYS EASTERN EUROPE TOUR - 7 Nights / 8 Days tour package, budget Adventure tour packages for Bratislava, Prague, Karlovy, Vienna, Salzburg at exciting price.";i:4;s:912:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bratislava, Prague, Karlovy, Vienna, Salzburg"        
		                 },
		      "description": "HIGHLIGHTS: 

07 Nights’ accommodation with Breakfast at 3 star properties
07 Dinners at Indian restaurant
Services of Professional Experienced Indian Tour Manager

PRAGUE: 		City tour of Prague
Day Excursion to Karlovy Vary
Visit to Cesky Krumlov

SALZBURG: 		Orientation Tour of Salzburg

VIENNA: 		Orientation Tour of Vienna 
			Visit Schonbrunn Palace

BRATISLAVA:	Orientation Tour of Bratislava 

BUDAPEST:		Orientation Tour of Budapest",
		      "name": "7 NIGHTS/8 DAYS EASTERN EUROPE TOUR",
		      "telephone": "+91-9246610238"
		    }
		    </script>
			";i:5;N;}