a:6:{i:0;s:15346:"				<div class="h1"><h1>America Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.travelect.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelect.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>America Tour</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Tour Code </td>
						<td class="p5px pl0px vat">008</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						8 Nights / 9 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">New York, Orlando</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelect.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="America 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="62761"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/333350/117094.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/117094.jpg"  height="150"  width="150"    alt="America Tour" title="America Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/333350/117095.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/117095.jpg"  height="150"  width="150"    alt="America Tour" title="America Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/333350/117096.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/117096.jpg"  height="150"  width="150"    alt="America Tour" title="America Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/333350/117097.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/117097.jpg"  height="150"  width="150"    alt="America Tour" title="America Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/333350/117098.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/117098.jpg"  height="150"  width="150"    alt="America Tour" title="America Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/333350/117099.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/117099.jpg"  height="150"  width="150"    alt="America Tour" title="America Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/333350/117100.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/117100.jpg"  height="150"  width="150"    alt="America Tour" title="America Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
											<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> Orlando
								</p>
								<p class="aj">Upon arrival at Orlando Airport meet our representative and you will be taken to the hotel. After Reaching, Check in at hotel. Free time for relaxation or Leisure at your own on the I-Drive or Disney area in the evening. Overnight at the hotel.<br />
<br />
"I-Drive" is Orlando's International Drive, and is Orlando's destination for attractions, shopping, dining, entertainment, Orlando hotels, lodging and more</p>					
									<p><b>Meals : </b> Dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 2:</b> Kennedy Space centre
								</p>
								<p class="aj">After breakfast visit the most amazing Space Shuttle Atlantis is the new home of the priceless, historic spacecraft that tells the incredible story of NASA's 30-year Space Shuttle Program. The 90,000 square-feet Space Shuttle Atlantis attraction is the marquee element of the Visitor Complex's 10-year master plan. Also enjoy unique educational experiences such as working as a team on a mock space mission in a life-sized replica of a space shuttle and training on a shuttle landing simulator similar to the ones used by NASA astronauts. Also experience authentic space training using the Multi-Axis Trainer simulating the disorientation felt in a tumble spin during reentry into the Earth's atmosphere. Enjoy a close view of the 350-foot-high fixed service structure, rotating service structure, propellant storage containers, water tanks, flame trench and other aspects of the launch pad complex. This was the lift-off point for most space shuttle missions and Apollo moon missions. Atlas and Titan rockets that first put NASA astronauts in space, or climb aboard Mercury-Redstone, Gemini and Apollo capsules - and get an idea of the cramped quarters America's astronaut pioneers endured. Watching Imax Space movie is just awesome, back to hotel have dinner & Overnight at the hotel.</p>					
									<p><b>Meals : </b> Breakfast, Lunch & Dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 3:</b> Magic Kingdom
								</p>
								<p class="aj">After breakfast we are visiting wonderful, exciting dream world of Disneyland, it is all about imagination and dream come true journey through world of happiness and fascination. Let us enjoy rides like Space Mountain, Big Thunder Mountain, Splash Mountain etc. Disney Parade, Haunted Mansion, Spectacular shows, see all animated characters, enjoy small world of dolls around the various culture of the world and much more later back to hotel have your dinner & overnight stay.</p>					
									<p><b>Meals : </b> Breakfast, Lunch & Dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 4:</b> Sea world Orlando
								</p>
								<p class="aj">After breakfast proceed to Sea World it will take us on a wonderful journey where wonders exist beyond the ocean's door. Full day fun at Sea World. Enjoy various shows such as the Sensational Shamu, Believe, Blue Horizon. Thrills await for you at Kraken, Atlantis and many more to enjoy. evening back to hotel have dinner & Overnight at the hotel.</p>					
									<p><b>Meals : </b> Breakfast, Lunch & Dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 5:</b> Orlando
								</p>
								<p class="aj">After breakfast proceed to  the Orlando I-Drive which is the most thrilling and wonderful day, your imagination and curiosity are your keys to unlocking worlds you’ve only imagined. A trip to the New Orlando Eye is a life time experience. It is a 360 Degree view of the Orlando city in about 20 mins. The 400 foot tall observation wheel provides breathtaking views of Central Florida in all directions with sights of downtown Orland’s skyline, theme parks, lakes and lush landscape and Cape Canaveral upto NASA. Visit to the world famous Madame Tussauds Wax Museum where you will meet with famous celebrities, renown scientist, Musicians, actor, actresses, historians and world leaders whom you have seen in magazines or posters. Next you will be taken on the hop on and hop off I-ride Trolley passing by the Wonder works where the building is upside down, Congo river mini golfing, view of the Titanic and many more towards your way to the biggest outlet mall in Orlando for shopping for your loved ones later back to hotel have dinner & Overnight at the hotel.</p>					
									<p><b>Meals : </b> Breakfast , Lunch & dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 6:</b> Universal Studio Orlando
								</p>
								<p class="aj">After breakfast Universal Orlando is another exciting place on earth called as Universe of Excitement.<br />
Transformers The Ride 3D, Shrek 4D, Men In Black Alien Attack, Terminator 2 3D and The Wizarding World of Harry Potter  and many more to visit. later back to hotel have dinner & Overnight at the hotel.</p>					
									<p><b>Meals : </b> Breakfast , Lunch & dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 7:</b> Orlando - New York
								</p>
								<p class="aj">After breakfast check out from hotel & transfer to domestic airport to board the flight to New York enter into the world of Sky Scrapers, the most populous city and commercial capital of the world, New York. Check in at Hotel and free time for relaxation in evening have your dinner & Overnight at the hotel</p>					
									<p><b>Meals : </b> Breakfast & Dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 8:</b> New York - City tour - Liberty Island
								</p>
								<p class="aj">After breakfast proceed to city tour & Liberty island Experience the fastest lift to 80th floor in 2 minutes to reach Observation Deck of Empire State Building, United Nations Building, Ground Zero site, 5th Avenue, Times Square, Rockefeller Center and explore amazing facts about the city. Then we will proceed to the icon of New York, 'The Statue of Liberty' known as Goddess of Freedom, let us learn more than 100 years of history about the statue in evening return back to hotel have dinner & Overnight at the hotel</p>					
									<p><b>Meals : </b> Breakfast, Lunch & Dinner</p>
								</td>
								</tr>
								</table>					
								</div>
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 9:</b> Departure
								</p>
								<p class="aj">After breakfast check out from hotel & transfer to international airport to board a flight to India.</p>					
									<p><b>Meals : </b> Breakfast</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
															</ul>
						<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* 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. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelect.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="America 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="62761"/>
						</form>
						</div>
						
						";i:1;s:51:"Book America Tour - 8 Nights / 9 Days Tour Packages";i:2;s:108:"book america tour - 8 nights / 9 days tour packages, heritage tour packages, new york, orlando tour packages";i:3;s:164:"Book America Tour - 8 Nights / 9 Days tour packages from El Travel Elect Pvt. Ltd - Get attractive 8 Nights / 9 Days Heritage  tour packages for  New York, Orlando.";i:4;s:401:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New York, Orlando"        
		                 },
		      "description": "",
		      "name": "America Tour",
		      "telephone": "+91-9225503370"
		    }
		    </script>
			";i:5;N;}