a:6:{i:0;s:40159:"				<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="h1"><h1>America Just For You</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.jaintravelkalka.com/" title="Home">Home</a>
					
										
					<b class="ffv p2px">&rsaquo;</b>America Just For You</p> 
										<div class="fo">
					<div class="db vat pr slideArrow">				
												<ul class="bxslider11 fx-height lh0" style="margin:0px;padding:0px;">
																	<li class="pr">
										<div>										
										<div class="lh0 pa blur-bg" style="background:url(https://ttw.wlimg.com/package-images/photo-big/dir_10/290674/68181.jpg);"></div>
										<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_10/290674/68181.jpg">
										<div class="slide-fixImag" style="margin:0 9%;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/290674/68181.jpg"  height=""  width=""    alt="America Just For You" title="America Just For You"  /></div>
										</a>
										</div>
										</li>
																	</ul>
												<div class="sliderCont-Layer">
					<div class="dt w100">
					<div class="dtc vam"><p class="xxxlarge fw7 lh13em">America Just For You 
					
											<span class="fw3 xsmall yellow">(
						6 Nights / 7 Days 
						)</span>
											</p>
											<p class="mt5px"><span class="fw6">Destination Covered</span> : Washington, New York</p>
											</div>
					<div class="dtc w200px vam"></div>
					</div>
					</div>
					<div class="slidePrice ac">
					<p class="xxlarge red mb12px">
											<span class="db ttu xsmall mt5px">Price On Request</span>
											</p>
											<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.jaintravelkalka.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="America Just For You - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig c3px dib p10px15px xlarge fw6">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="32998"/>
						</form>
											</div> 
					
					<script>			
					jQuery('.bxslider11').bxSlider({
					  mode:'horizontal',
					  slideWidth:840,
					  auto:true,
					  autoControls:false,
					  stopAutoOnClick:true,
					  pager:false
					});
					</script>
					</div>
					</div>
											<p class="mb5px"><b>Attractions :</b> Statue of Liberty</p>
												<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Enjoy Daily Buffet Breakfast.<br />
Daily Indian Jain / Vegetarian / Non-Vegetarian Dinners.<br />
Stay 02 Nights In New Jersey.<br />
Visit The Dazzling Times Square By Night.<br />
Enjoy The Action Of New York On Your City Tour.<br />
Enjoy A Boat Cruise To The Statue Of Liberty For A Close-Up View.<br />
Stay 01 Night In Atlantic City- "America'S Favorite Playground".<br />
Enjoy A Memorable Boardwalk Tour.<br />
Stay 01 Night In Washington D.C - The Capital Of Usa.<br />
Enjoy A Guided City Tour Of Washington D.C.<br />
Visit The Famous Smithsonian The National Air And Space Museum, In Washington, D.C.<br />
Visit The Most Popular American Chocolate Outlet - Hershey’S Chocolate World.<br />
Stay 01 Night In Buffalo.<br />
See The Gorgeous Spectacle Of The Niagara Falls Lit-Up At Night.<br />
A Thrilling Boat-Ride Aboard ‘The Maid Of The Mist’.<br />
Stay 01 Night In Philadelphia<br />
Professional, Friendly, Multi-Lingual And Experienced Indian Tour Manager Travelling With You Throughout Your Tour In Usa.<br />
Visit Major Cities In 7 Days: New York, Atlantic City, Washington, D.C. , Niagara And Philadelphia.Taxes As Payable Extra<br />
Usa Visa Fees<br />
Baggage Handling Fees For Check-In Baggage And Additional Sectors For Internal Flights.<br />
The Cost Of The Passport, Poe Charges, Etc.<br />
Tips To Guides, Drivers, Hotel Waiters, Etc. Of Usd 03 Per Person Per Day For The Duration Of The Tour.<br />
The Cost Of The Basic Travel Quota Equivalent To The Amount Of Usd 10,000.<br />
Any Increase In The Airfare Charged By The Airline On Your Air Ticket (Presently Calculated At 30Th<br />
September 2014).<br />
If You Wish To Travel On A Date Other Than The Group’S Ex-India Departure Date For Your Tour And/Or<br />
Wish To Return On A Date Other Than The Day Your Tour Ends And/Or Wish To Fly In/Out Of A City Other Then<br />
The Start/End City Of Your Tour, There Will Be An Additional Charge That Will Be Applicable (Subject To<br />
Availability Of Seats For The Given Dates And Ticket Validity), Which Will Be Advised To You By Your Sales<br />
Staff/Travel Agent. Kindly Note, The Deviation Will Be Actioned Only 30 Days Prior To The Tour Departure<br />
Date.<br />
Any Expenses Of Personal Nature Such As Porterage, Laundry, Wines, Mineral/Bottled Water, Food &<br />
Drink Not In The Regular Menus Provided By Us, Mini Bar And Telephone Calls.<br />
Meals Are Pre-Set And A Choice Of Menu Is Not Available.<br />
Cost Of Excursions, City Sightseeing, Entrance Fees And Local Guides Availed Of By The Passengers, Other<br />
Than That Mentioned In The ‘What Your Tour Price Includes’.<br />
Other Applicable Taxes Will Be Extra. </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> Welcome Aboard Thomas Cook’S Grand And Exciting Tour To The United States Of America. Start Your T										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Your getaway to the United States of America starts in New York - the city that has it all. On arrival you will be greeted by your professional and friendly Thomas Cook Tour Manager outside the baggage hall. Enroute enjoy a delicious dinner at an Indian restaurant. Proceed to check-in at your conveniently located hotel.<br />
Overnight at Hotel Edison / LaQuinta Inn or similar in New Jersey.															
														   
											</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 Sights Of New York City On An Extensive City Tour Followed By A Visit To The Iconic Struct										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Enjoy a buffet breakfast at the hotel, proceed on an amazing city tour - Visit the 9/11 memorial, see the Theatre district, Chinatown, Wall Street, Central Park and many more highlights of this vibrant city. Great opportunities to see the United Nations’ Global Headquarters and the Trump Tower, the Manhattan and Brooklyn Bridges as you continue on your city tour. Later enjoy a short cruise onboard your scenic boat to the Liberty Island for a close-up view of The Statue of Liberty.			
														   
											</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> On to Atlantic City 										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a buffet breakfast, check-out of your hotel, board your deluxe air-conditioned coach and proceed to Atlantic City - With a history, rich with firsts and social significance, Atlantic City has always been a<br />
Mecca for top-notch entertainment. From the boardwalk to the bay, this great city has become a worldclass destination and a "must see" attraction for millions. Later we proceed for a walking tour of the<br />
world famous Atlantic City Boardwalk. The first boardwalk in the United States, you'll learn of its origins and success for over a century. Songs have been written about it. Movies have been filmed about it.			
														   
											</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> Visit The Famous Smithsonian The National Air And Space Museum. Enjoy A Guided Tour Of Washington										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a buffet breakfast at your hotel, sit back and relax in your coach as we proceed to Washington D.C.<br />
On arrival, enjoy a guided sightseeing tour of this historic and beautiful city. See the Washington Monument - The Marble Obelisk built in memory of George Washington. Continue on a panoramic drive to Pennsylvania Avenue arriving at The Capitol - the White dome-shaped building which serves as the office of elected members of the Senate. Also see the grand Neo Classical edifice of The White House, the official residence of the President of The United States of America. See the Lincoln Memorial, Korean Memorial and World War II Memorial. We then proceed to the Smithsonian Institution - The World’s Largest Museum Complex, which includes The National Air and Space Museum.			
														   
											</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> Onto Niagara! Enroute Visit The Famous Hershey’S Chocolate World										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Start your day with a delicious buffet breakfast. Later, sit back and relax in your coach as we drive for a visit to the most popular American Chocolate factory at Hershey’s Chocolate World. Engage your senses at the aroma of the cocoa beans. Here you will see the process of how beans are made into milk chocolate. We then continue our scenic journey to the Niagara Falls - one of the natural wonders of the world. On arrival, check-in to the hotel. This evening, we will take you to view the unmatched beauty of the falls in its entire splendor which is illuminated with bright colours of the rainbow - a sight not to be missed. Enjoy a hot delicious dinner at a local Indian restaurant.			
														   
											</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> Today, Ride Aboard The ‘Maid Of The Mist’ And See The Spectacular Niagara Falls From Close Quart										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a buffet breakfast at your hotel, we take you to Niagara Falls to enjoy a thrilling boat ride aboard the ‘Maid of The Mist’ which gives you a breathtaking view of the cascading waters of this majestic<br />
waterfall that has no comparison anywhere in the world! (Due to weather conditions, this ride operates only after the 2nd week of May. We offer the ‘View Mobile Tram Ride’ instead, for all tourists visiting the falls prior to the commencement of this ride).			
														   
											</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> Bid Farewell To All The Friends You Made And Return Home With Truly Wonderful Memories From Your Ame										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												After a buffet breakfast at the hotel, proceed to the New York airport as your memorable tour with Thomas Cook comes to an end. Please do spare a few moments of your valuable time to write and share<br />
with us your wonderful experience.<br />
			
														   
											</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>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Taxes As Payable Extra</li><li>
Usa Visa Fees</li><li>
Baggage Handling Fees For Check-In Baggage And Additional Sectors For Internal Flights.</li><li>
The Cost Of The Passport, Poe Charges, Etc.</li><li>
Tips To Guides, Drivers, Hotel Waiters, Etc. Of Usd 03 Per Person Per Day For The Duration Of The Tour.</li><li>
The Cost Of The Basic Travel Quota Equivalent To The Amount Of Usd 10,000.</li><li>
Any Increase In The Airfare Charged By The Airline On Your Air Ticket (Presently Calculated At 30Th</li><li>
September 2014).</li><li>
If You Wish To Travel On A Date Other Than The Group’S Ex-India Departure Date For Your Tour And/Or</li><li>
Wish To Return On A Date Other Than The Day Your Tour Ends And/Or Wish To Fly In/Out Of A City Other Then</li><li>
The Start/End City Of Your Tour, There Will Be An Additional Charge That Will Be Applicable (Subject To</li><li>
Availability Of Seats For The Given Dates And Ticket Validity), Which Will Be Advised To You By Your Sales</li><li>
Staff/Travel Agent. Kindly Note, The Deviation Will Be Actioned Only 30 Days Prior To The Tour Departure</li><li>
Date.</li><li>
Any Expenses Of Personal Nature Such As Porterage, Laundry, Wines, Mineral/Bottled Water, Food &</li><li>
Drink Not In The Regular Menus Provided By Us, Mini Bar And Telephone Calls.</li><li>
Meals Are Pre-Set And A Choice Of Menu Is Not Available.</li><li>
Cost Of Excursions, City Sightseeing, Entrance Fees And Local Guides Availed Of By The Passengers, Other</li><li>
Than That Mentioned In The ‘What Your Tour Price Includes’.</li><li>
Other Applicable Taxes Will Be Extra.</li></ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Specific Departure Dates</p>
								</div>
								
								EX-MUMBAI<br />
April : 24<br />
May : 01								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Rate Card</p>
								</div>
								
    	<p class="h dif xlarge b mb5px">Mumbai - Delhi Prices:-</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Type</td>
				<td class="headHr p5px b">INS</td>
				<td class="headHr p5px b">VISA (USA)</td>
				<td class="headHr p5px b">INR Ex Mumabai</td>
				<td class="headHr p5px b">INR Ex Delhi</td>
				<td class="headHr p5px b">USD</td>
			</tr>
			<tr>
				<td class="headVr p5px">SA</td>
				<td class="data p5px">1300</td>
				<td class="data p5px">0</td>
				<td class="data p5px">64100</td>
				<td class="data p5px">69100</td>
				<td class="data p5px">850</td>
			</tr>
			<tr>
				<td class="headVr p5px">DA</td>
				<td class="data p5px">1300</td>
				<td class="data p5px">0</td>
				<td class="data p5px">64100</td>
				<td class="data p5px">69100</td>
				<td class="data p5px">575</td>
			</tr>
			<tr>
				<td class="headVr p5px">TA</td>
				<td class="data p5px">1300</td>
				<td class="data p5px">0</td>
				<td class="data p5px">64100</td>
				<td class="data p5px">69100</td>
				<td class="data p5px">575</td>
			</tr>
			<tr>
				<td class="headVr p5px">DC</td>
				<td class="data p5px">1300</td>
				<td class="data p5px">0</td>
				<td class="data p5px">63100</td>
				<td class="data p5px">68100</td>
				<td class="data p5px">375</td>
			</tr>
			<tr>
				<td class="headVr p5px">INF</td>
				<td class="data p5px">1300</td>
				<td class="data p5px">0</td>
				<td class="data p5px">42700</td>
				<td class="data p5px">47700</td>
				<td class="data p5px">10</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Total Tour Cost</p>
    	<div class="otherDetails aj">Note - Government service tax is not included in the tour cost. Trip Protection NOT available on this tour.</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">INR Ex Mumbai</td>
				<td class="headHr p5px b">INR Ex Delhi</td>
				<td class="headHr p5px b">USD</td>
			</tr>
			<tr>
				<td class="data p5px">65400</td>
				<td class="data p5px">70400</td>
				<td class="data p5px">850</td>
			</tr>
			<tr>
				<td class="data p5px">65400</td>
				<td class="data p5px">70400</td>
				<td class="data p5px">575</td>
			</tr>
			<tr>
				<td class="data p5px">65400</td>
				<td class="data p5px">70400</td>
				<td class="data p5px">575</td>
			</tr>
			<tr>
				<td class="data p5px">64400</td>
				<td class="data p5px">69400</td>
				<td class="data p5px">375</td>
			</tr>
			<tr>
				<td class="data p5px">44000</td>
				<td class="data p5px">49000</td>
				<td class="data p5px">10</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Booking Amount</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Adult</td>
				<td class="headHr p5px b">Child</td>
			</tr>
			<tr>
				<td class="data p5px">60000</td>
				<td class="data p5px">60000</td>
			</tr>
		</table></div><br>								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p>Important The Tour Will Be Operated Subject To A Minimum Of 25 Full Paying Passengers Travelling Together. In The Event That The Group Size Is Less Than 25 Passengers You Will Be Given An Option Of Travelling On Another Departure Date. Note All Transfers And Extensive Sightseeing With Entrance Fees (As Specified In The Itinerary) By A Deluxe Airconditioned Coach. Services Of Our Thomas Cook Tour Manager Or Local Representatives, While On Tour. On Some Occasions, You May Have To Join Another Group In Case Your Group Does Not Have Adequate Members. A Local Representative Or Your Coach Driver May Only Be There To Assist You During Your Initial Part Of The Tour. All Local Taxes And Services (Presently Calculated As Prevailing On 30 September 2014). A Person Below 12 Years Of Age On Date Of Return Flight Will Be Considered A Child. A Baby Below 24 Months Of Age On Date Of Return Flight Will Be Considered An Infant. As A 3Rd Person In A Triple Room, No Extra Bed Or Cot Will Be Provided. Land Surcharges Applicable On Certain Departure Dates. on Certain Departure Dates The Tour Routing Could Change. In Some Tours, There Is Also A Possibility That The Tour Could Operate In Reverse Itinerary. However You Will Not Miss Any Sightseeing Or Excursions That Are Mentioned In The Itinerary. Please Check With Your Sales Representative For Final Details. Certain Sightseeing And Excursions May Not Operate On Public Holidays. In Some Cities, There Is A Possibility That You May Have To Wait At The Airport (In The Terminal As Would Have Been Informed To You Before Departure By Your Booking Office) For Multiple Flight Arrivals/Departures Of Different Groups. Visa Requirements Single-Entry Usa Visa (Not Included)<br />
Points To Be Noted It Is Advisable To Book More Than 45 Days Prior To The Tour Departure Date As The Internal Ticket Rate Might Increase Closer To The Departure Date, Resulting In An Increase In The Tour Cost The Airfare Is Based On The Existing Fare Structure (Presently Calculated As Prevailing On 30Th September 2014). Any Further Increase In The Airfare Due To An Increase In Fuel Price, Change In Government Regulations, Ticket Taxes Etc. Charged By The Airline Will Have To Be Borne By The Passenger. Thomas Cook (I) Ltd Will Not Be Held Responsible For The Same Any Damage Caused To The Hotel Rooms Or Coach During Your Stay Shall Be Payable By The Passengers. Thomas Cook (I) Ltd Will Not Be Liable For The Same The Management Reserves The Right To Claim From The Passengers, Any Additional Expenses Incurred Due To Delay Or Changes In The Schedule Of Trains, Flights, Coach, Cruise Or Other Services We Reserve The Right To Amend, Alter, Vary Or Withdraw Any Particular Departure, Excursions Advertised Or Substitute A Hotel Of Similar Class If Deemed Necessary We Reserve The Right To Use Alternate Cruise Liners For Any Particular Departure, Excursions Advertised Or Substitute A Cruise Of Similar Class If Deemed Necessary The Images Used In This Brochure Are For Representation Purposes Only A Date Change Fee, As Applicable, Will Be Levied On Passengers Who Change Their Date Of Travel For The Convenience Of Our Passengers, We May Sometimes Will Have To Amend The Itinerary. However All Services Will Remain The Same The Company Reserves The Right To Alter The Order Of The Itinerary. The Same Will Be Informed To The Client Before Departure Due To Trade Fairs And Conventions In The Cities, It Is Possible That The Hotel Accommodation Provided Would Be Outside The City. The Same Will Be Informed In Advance Passengers Can Board The Tour From The Hub City. Those Boarding From Any Other City Can Do So, However All Expenses To/From The Hub City Is To Be Borne By The Passengers Other Applicable Taxes Will Be Extra The Company Shall Not Accept Any Liability Or Responsibility For Any Damages, Loss, Injury, Accident, Death, Delay, Breakdown Or Irregularity, Which May Occur In Carrying Out Of The Tour Arrangement Due To Weather Conditions, Strikes, War, Quarantine And Any Other Cause Whatsoever And All Such Loss Or Expenses Must Be Borne By The Passenger For All Joining Direct/Deviating Clients, There Would Be No Airport Transfers. The Transfer Cost Could Be Approximately Between Usd 150 - Usd 200 Per Person Per Way Tours Operated Subject To Rbi/Goi Regulations Part Of The Tour Cost Is Payable In Usd Out Of Your Btq. The Foreign Exchange Component Will Be Payable As Per The Rate Of Exchange Prevailing On The Date Of Payment Of Foreign Exchange When The Outbound Sector Of An Ex-India Ticket Is Not Utilized, The Return Segment Cannot Be Utilized For One-Way Travel And There Will Be No Refund For Non-Utilisation Please Refer To The Booking Form For Detailed Terms &amp; Conditions.								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.jaintravelkalka.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="America Just For You - 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="32998"/>
						</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.jaintravelkalka.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-dubai.htm" title="Packages in Dubai">Dubai</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-panchkula.htm" title="Packages in Panchkula">Panchkula</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-dalhousie.htm" title="Packages in Dalhousie">Dalhousie</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-las-vegas.htm" title="Packages in Las Vegas">Las Vegas</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-new-york.htm" title="Packages in New York">New York</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/packages-in-zurich.htm" title="Packages in Zurich">Zurich</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.jaintravelkalka.com/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</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.jaintravelkalka.com/packages-in-los-angeles.htm" title="Packages in Los Angeles">Los Angeles</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.jaintravelkalka.com/packages-in-amritsar.htm" title="Packages in Amritsar">Amritsar</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.jaintravelkalka.com/packages-in-dharamshala.htm" title="Packages in Dharamshala">Dharamshala</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.jaintravelkalka.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</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.jaintravelkalka.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</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.jaintravelkalka.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.jaintravelkalka.com/packages-in-pennsylvania.htm" title="Packages in Pennsylvania">Pennsylvania</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.jaintravelkalka.com/packages-in-engelberg.htm" title="Packages in Engelberg">Engelberg</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.jaintravelkalka.com/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</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.jaintravelkalka.com/packages-in-abu-dhabi.htm" title="Packages in Abu Dhabi">Abu Dhabi</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.jaintravelkalka.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</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.jaintravelkalka.com/packages-in-sonamarg.htm" title="Packages in Sonamarg">Sonamarg</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.jaintravelkalka.com/packages-in-bern.htm" title="Packages in Bern">Bern</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.jaintravelkalka.com/packages-in-washington.htm" title="Packages in Washington">Washington</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.jaintravelkalka.com/packages-in-geneva.htm" title="Packages in Geneva">Geneva</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.jaintravelkalka.com/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</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.jaintravelkalka.com/packages-in-san-francisco.htm" title="Packages in San Francisco">San Francisco</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.jaintravelkalka.com/packages-in-mahabaleshwar.htm" title="Packages in Mahabaleshwar">Mahabaleshwar</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.jaintravelkalka.com/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</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.jaintravelkalka.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jaintravelkalka.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</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 Washington, New York</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.jaintravelkalka.com/tour-packages/classique-america-with-seattle-alaska-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/290674/64142.jpg"  height="100"  width="100"    alt="Classique America with Seattle & Alaska Tour" title="Classique America with Seattle & Alaska Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.jaintravelkalka.com/tour-packages/classique-america-with-seattle-alaska-tour.htm" title="Classique America with Seattle & Alaska Tour"><h3>Classique America With Seattle & Alaska To..</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> : 
								19 Nights / 20 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New York, Pennsylvania, Las Vegas, Los A..</p>
															<div class="mt10px small">
							<form name="pkg_31140" id="pkg_31140" method="post" action="http://www.jaintravelkalka.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.jaintravelkalka.com/tour-packages/classique-america-with-seattle-alaska-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Classique America with Seattle & Alaska 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="31140"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.jaintravelkalka.com/tour-packages/american-memories1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/290674/63019.jpg"  height="100"  width="100"    alt="American Memories" title="American Memories"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.jaintravelkalka.com/tour-packages/american-memories1.htm" title="American Memories"><h3>American Memories</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> : 
								9 Nights / 10 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Washington, New York, Pennsylvania, Las ..</p>
															<div class="mt10px small">
							<form name="pkg_30772" id="pkg_30772" method="post" action="http://www.jaintravelkalka.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.jaintravelkalka.com/tour-packages/american-memories1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="American Memories - 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="30772"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:59:"Book America Just For You - 6 Nights / 7 Days Tour Packages";i:2;s:119:"book america just for you - 6 nights / 7 days tour packages, heritage tour packages, washington, new york tour packages";i:3;s:155:"Jain Tour & Travels offers America Just For You - 6 Nights / 7 Days tour package, budget Heritage tour packages for Washington, New York at exciting price.";i:4;s:2915:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Washington, New York"        
		                 },
		      "description": "Enjoy Daily Buffet Breakfast.
Daily Indian Jain / Vegetarian / Non-Vegetarian Dinners.
Stay 02 Nights In New Jersey.
Visit The Dazzling Times Square By Night.
Enjoy The Action Of New York On Your City Tour.
Enjoy A Boat Cruise To The Statue Of Liberty For A Close-Up View.
Stay 01 Night In Atlantic City- "America'S Favorite Playground".
Enjoy A Memorable Boardwalk Tour.
Stay 01 Night In Washington D.C - The Capital Of Usa.
Enjoy A Guided City Tour Of Washington D.C.
Visit The Famous Smithsonian The National Air And Space Museum, In Washington, D.C.
Visit The Most Popular American Chocolate Outlet - Hershey’S Chocolate World.
Stay 01 Night In Buffalo.
See The Gorgeous Spectacle Of The Niagara Falls Lit-Up At Night.
A Thrilling Boat-Ride Aboard ‘The Maid Of The Mist’.
Stay 01 Night In Philadelphia
Professional, Friendly, Multi-Lingual And Experienced Indian Tour Manager Travelling With You Throughout Your Tour In Usa.
Visit Major Cities In 7 Days: New York, Atlantic City, Washington, D.C. , Niagara And Philadelphia.Taxes As Payable Extra
Usa Visa Fees
Baggage Handling Fees For Check-In Baggage And Additional Sectors For Internal Flights.
The Cost Of The Passport, Poe Charges, Etc.
Tips To Guides, Drivers, Hotel Waiters, Etc. Of Usd 03 Per Person Per Day For The Duration Of The Tour.
The Cost Of The Basic Travel Quota Equivalent To The Amount Of Usd 10,000.
Any Increase In The Airfare Charged By The Airline On Your Air Ticket (Presently Calculated At 30Th
September 2014).
If You Wish To Travel On A Date Other Than The Group’S Ex-India Departure Date For Your Tour And/Or
Wish To Return On A Date Other Than The Day Your Tour Ends And/Or Wish To Fly In/Out Of A City Other Then
The Start/End City Of Your Tour, There Will Be An Additional Charge That Will Be Applicable (Subject To
Availability Of Seats For The Given Dates And Ticket Validity), Which Will Be Advised To You By Your Sales
Staff/Travel Agent. Kindly Note, The Deviation Will Be Actioned Only 30 Days Prior To The Tour Departure
Date.
Any Expenses Of Personal Nature Such As Porterage, Laundry, Wines, Mineral/Bottled Water, Food &
Drink Not In The Regular Menus Provided By Us, Mini Bar And Telephone Calls.
Meals Are Pre-Set And A Choice Of Menu Is Not Available.
Cost Of Excursions, City Sightseeing, Entrance Fees And Local Guides Availed Of By The Passengers, Other
Than That Mentioned In The ‘What Your Tour Price Includes’.
Other Applicable Taxes Will Be Extra. ",
		      "name": "America Just For You",
		      "telephone": "+91-9896317894"
		    }
		    </script>
			";i:5;N;}